diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2022-04-12 13:35:00 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-04-12 13:35:00 -0400 |
commit | a82ec1be458bb0861fdde8351c0474fc3c3fc9e7 (patch) | |
tree | d9ff092999119d7910aa1f602103c845b7f8b546 /pkg | |
parent | 87d129e805c993acbc571597baba8101afd475fe (diff) | |
parent | d8a902a167b91ca4fde4ffeef55e9aa4907ae258 (diff) | |
download | podman-a82ec1be458bb0861fdde8351c0474fc3c3fc9e7.tar.gz podman-a82ec1be458bb0861fdde8351c0474fc3c3fc9e7.tar.bz2 podman-a82ec1be458bb0861fdde8351c0474fc3c3fc9e7.zip |
Merge pull request #13787 from Luap99/nohost-api
API: use no_hosts from containers.conf
Diffstat (limited to 'pkg')
-rw-r--r-- | pkg/api/handlers/libpod/containers_create.go | 13 | ||||
-rw-r--r-- | pkg/specgen/specgen.go | 8 |
2 files changed, 19 insertions, 2 deletions
diff --git a/pkg/api/handlers/libpod/containers_create.go b/pkg/api/handlers/libpod/containers_create.go index 61f437faf..4f9dc008d 100644 --- a/pkg/api/handlers/libpod/containers_create.go +++ b/pkg/api/handlers/libpod/containers_create.go @@ -18,7 +18,18 @@ import ( // the new container ID on success along with any warnings. func CreateContainer(w http.ResponseWriter, r *http.Request) { runtime := r.Context().Value(api.RuntimeKey).(*libpod.Runtime) - var sg specgen.SpecGenerator + conf, err := runtime.GetConfigNoCopy() + if err != nil { + utils.InternalServerError(w, err) + return + } + + // we have to set the default before we decode to make sure the correct default is set when the field is unset + sg := specgen.SpecGenerator{ + ContainerNetworkConfig: specgen.ContainerNetworkConfig{ + UseImageHosts: conf.Containers.NoHosts, + }, + } if err := json.NewDecoder(r.Body).Decode(&sg); err != nil { utils.Error(w, http.StatusInternalServerError, errors.Wrap(err, "Decode()")) diff --git a/pkg/specgen/specgen.go b/pkg/specgen/specgen.go index 27d77af9f..dfac1d457 100644 --- a/pkg/specgen/specgen.go +++ b/pkg/specgen/specgen.go @@ -467,7 +467,13 @@ type ContainerNetworkConfig struct { // UseImageHosts indicates that /etc/hosts should not be managed by // Podman, and instead sourced from the image. // Conflicts with HostAdd. - UseImageHosts bool `json:"use_image_hosts,omitempty"` + // Do not set omitempty here, if this is false it should be set to not get + // the server default. + // Ideally this would be a pointer so we could differentiate between an + // explicitly false/true and unset (containers.conf default). However + // specgen is stable so we can not change this right now. + // TODO (5.0): change to pointer + UseImageHosts bool `json:"use_image_hosts"` // HostAdd is a set of hosts which will be added to the container's // /etc/hosts file. // Conflicts with UseImageHosts. |