Merge pull request #17594 from Luap99/compat-network-create

compat API: network create return 409 for duplicate
This commit is contained in:
OpenShift Merge Robot
2023-02-21 22:47:30 +01:00
committed by GitHub
2 changed files with 12 additions and 2 deletions

View File

@ -280,10 +280,17 @@ func CreateNetwork(w http.ResponseWriter, r *http.Request) {
// FIXME can we use the IPAM driver and options? // FIXME can we use the IPAM driver and options?
} }
opts := nettypes.NetworkCreateOptions{
IgnoreIfExists: !networkCreate.CheckDuplicate,
}
ic := abi.ContainerEngine{Libpod: runtime} ic := abi.ContainerEngine{Libpod: runtime}
newNetwork, err := ic.NetworkCreate(r.Context(), network, nil) newNetwork, err := ic.NetworkCreate(r.Context(), network, &opts)
if err != nil { if err != nil {
if errors.Is(err, nettypes.ErrNetworkExists) {
utils.Error(w, http.StatusConflict, err)
} else {
utils.InternalServerError(w, err) utils.InternalServerError(w, err)
}
return return
} }

View File

@ -104,6 +104,9 @@ t GET networks/podman 200 \
# network create docker # network create docker
t POST networks/create Name=net3\ IPAM='{"Config":[]}' 201 t POST networks/create Name=net3\ IPAM='{"Config":[]}' 201
# create with same name should not error unless CheckDuplicate is set
t POST networks/create Name=net3 201
t POST networks/create Name=net3\ CheckDuplicate=true 409
# network delete docker # network delete docker
t DELETE networks/net3 204 t DELETE networks/net3 204