diff options
author | cdoern <cdoern@redhat.com> | 2022-06-06 13:03:37 -0400 |
---|---|---|
committer | Charlie Doern <cdoern@redhat.com> | 2022-07-05 09:28:07 -0400 |
commit | 8f2d9e7a7c30f5e74f6aa0375b21a4522ec81756 (patch) | |
tree | 03526a91d8d8c428547b63b22f145e59a373bd63 /pkg/specgen/generate/namespaces.go | |
parent | 13479d457d34496b43027bc1d71cdb0891a8b738 (diff) | |
download | podman-8f2d9e7a7c30f5e74f6aa0375b21a4522ec81756.tar.gz podman-8f2d9e7a7c30f5e74f6aa0375b21a4522ec81756.tar.bz2 podman-8f2d9e7a7c30f5e74f6aa0375b21a4522ec81756.zip |
podman pod create --uts support
add support for the --uts flag in pod create, allowing users to avoid
issues with default values in containers.conf.
uts follows the same format as other namespace flags:
--uts=private (default), --uts=host, --uts=ns:PATH
resolves #13714
Signed-off-by: Charlie Doern <cdoern@redhat.com>
Diffstat (limited to 'pkg/specgen/generate/namespaces.go')
-rw-r--r-- | pkg/specgen/generate/namespaces.go | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/pkg/specgen/generate/namespaces.go b/pkg/specgen/generate/namespaces.go index 4224d16ce..a3719d58e 100644 --- a/pkg/specgen/generate/namespaces.go +++ b/pkg/specgen/generate/namespaces.go @@ -176,7 +176,14 @@ func namespaceOptions(s *specgen.SpecGenerator, rt *libpod.Runtime, pod *libpod. if pod == nil || infraCtr == nil { return nil, errNoInfra } - toReturn = append(toReturn, libpod.WithUTSNSFrom(infraCtr)) + if pod.NamespaceMode(spec.UTSNamespace) == host { + // adding infra as a nsCtr is not what we want to do when uts == host + // this leads the new ctr to try to add an ns path which is should not in this mode + logrus.Debug("pod has host uts, not adding infra as a nsCtr") + s.UtsNS = specgen.Namespace{NSMode: specgen.Host} + } else { + toReturn = append(toReturn, libpod.WithUTSNSFrom(infraCtr)) + } case specgen.FromContainer: utsCtr, err := rt.LookupContainer(s.UtsNS.Value) if err != nil { |