diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2019-08-05 14:26:04 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-08-05 14:26:04 +0200 |
commit | e2f38cdaa41ddc711cce40e00dab9c8457d2e830 (patch) | |
tree | 2658cb33c3be5554f8a8da5c3de0b658c41dbc10 /libpod/container_internal_linux.go | |
parent | b609de2e3dc60df4179d41a54e359a8722dbd3ff (diff) | |
parent | 80dcd4bebcdc8e280f6b43228561d09c194c328b (diff) | |
download | podman-e2f38cdaa41ddc711cce40e00dab9c8457d2e830.tar.gz podman-e2f38cdaa41ddc711cce40e00dab9c8457d2e830.tar.bz2 podman-e2f38cdaa41ddc711cce40e00dab9c8457d2e830.zip |
Merge pull request #3310 from gabibeyer/rootlessKata
rootless: Rearrange setup of rootless containers ***CIRRUS: TEST IMAGES***
Diffstat (limited to 'libpod/container_internal_linux.go')
-rw-r--r-- | libpod/container_internal_linux.go | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/libpod/container_internal_linux.go b/libpod/container_internal_linux.go index 6dbd53fbf..57c2854ea 100644 --- a/libpod/container_internal_linux.go +++ b/libpod/container_internal_linux.go @@ -63,12 +63,12 @@ func (c *Container) unmountSHM(mount string) error { // namespaces func (c *Container) prepare() (err error) { var ( - wg sync.WaitGroup - netNS ns.NetNS - networkStatus []*cnitypes.Result - createNetNSErr, mountStorageErr error - mountPoint string - tmpStateLock sync.Mutex + wg sync.WaitGroup + netNS ns.NetNS + networkStatus []*cnitypes.Result + createNetNSErr, mountStorageErr, rootlessSetupErr error + mountPoint string + tmpStateLock sync.Mutex ) wg.Add(2) @@ -87,6 +87,11 @@ func (c *Container) prepare() (err error) { c.state.NetNS = netNS c.state.NetworkStatus = networkStatus } + + // Setup rootless networking, requires c.state.NetNS to be set + if rootless.IsRootless() { + rootlessSetupErr = c.runtime.setupRootlessNetNS(c) + } } }() // Mount storage if not mounted @@ -132,6 +137,10 @@ func (c *Container) prepare() (err error) { return mountStorageErr } + if rootlessSetupErr != nil { + return rootlessSetupErr + } + // Save the container return c.save() } |