Docker compat API - containers create ignores the name

/containers/create compat endpoint does not set the name correctly ()

Signed-off-by: Milivoje Legenovic <m.legenovic@gmail.com>
This commit is contained in:
Milivoje Legenovic
2020-12-07 12:50:10 +01:00
parent 035d2891b7
commit 4a2498ff36
2 changed files with 4 additions and 4 deletions
pkg/api/handlers/compat
test/apiv2/rest_api

@ -37,6 +37,9 @@ func CreateContainer(w http.ResponseWriter, r *http.Request) {
return return
} }
// Override the container name in the body struct
body.Name = query.Name
if len(body.HostConfig.Links) > 0 { if len(body.HostConfig.Links) > 0 {
utils.Error(w, utils.ErrLinkNotSupport.Error(), http.StatusBadRequest, errors.Wrapf(utils.ErrLinkNotSupport, "bad parameter")) utils.Error(w, utils.ErrLinkNotSupport.Error(), http.StatusBadRequest, errors.Wrapf(utils.ErrLinkNotSupport, "bad parameter"))
return return
@ -69,9 +72,6 @@ func CreateContainer(w http.ResponseWriter, r *http.Request) {
return return
} }
// Override the container name in the body struct
body.Name = query.Name
ic := abi.ContainerEngine{Libpod: runtime} ic := abi.ContainerEngine{Libpod: runtime}
report, err := ic.ContainerCreate(r.Context(), sg) report, err := ic.ContainerCreate(r.Context(), sg)
if err != nil { if err != nil {

@ -181,7 +181,7 @@ class TestApi(unittest.TestCase):
self.assertEqual(net_default.status_code, 201, net_default.text) self.assertEqual(net_default.status_code, 201, net_default.text)
create = requests.post( create = requests.post(
PODMAN_URL + "/v1.40/containers/create?name=postCreate", PODMAN_URL + "/v1.40/containers/create?name=postCreateConnect",
json={ json={
"Cmd": ["top"], "Cmd": ["top"],
"Image": "alpine:latest", "Image": "alpine:latest",