diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2020-12-07 17:28:28 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-07 17:28:28 -0500 |
commit | 23d2deed30c2491a2cf59644324f27c9eebf7ba4 (patch) | |
tree | e191f6ea97f53e22f9b43e04900fe9df1e65eef9 /libpod/runtime.go | |
parent | 4c424e845239aef6e8cdab93dc19f55f4314513c (diff) | |
parent | 33bde4569ccb65b447150894c56f9a351a09a471 (diff) | |
download | podman-23d2deed30c2491a2cf59644324f27c9eebf7ba4.tar.gz podman-23d2deed30c2491a2cf59644324f27c9eebf7ba4.tar.bz2 podman-23d2deed30c2491a2cf59644324f27c9eebf7ba4.zip |
Merge pull request #8640 from mheon/221_backports
Backports for v2.2.1
Diffstat (limited to 'libpod/runtime.go')
-rw-r--r-- | libpod/runtime.go | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/libpod/runtime.go b/libpod/runtime.go index df3dfae2b..1f50f3407 100644 --- a/libpod/runtime.go +++ b/libpod/runtime.go @@ -190,7 +190,7 @@ func newRuntimeFromConfig(ctx context.Context, conf *config.Config, options ...R if err := shutdown.Register("libpod", func(sig os.Signal) error { os.Exit(1) return nil - }); err != nil { + }); err != nil && errors.Cause(err) != shutdown.ErrHandlerExists { logrus.Errorf("Error registering shutdown handler for libpod: %v", err) } @@ -472,7 +472,7 @@ func makeRuntime(ctx context.Context, runtime *Runtime) (retErr error) { // we will need to access the storage. if os.Geteuid() != 0 { aliveLock.Unlock() // Unlock to avoid deadlock as BecomeRootInUserNS will reexec. - pausePid, err := util.GetRootlessPauseProcessPidPath() + pausePid, err := util.GetRootlessPauseProcessPidPathGivenDir(runtime.config.Engine.TmpDir) if err != nil { return errors.Wrapf(err, "could not get pause process pid file path") } @@ -538,6 +538,15 @@ func makeRuntime(ctx context.Context, runtime *Runtime) (retErr error) { return nil } +// TmpDir gets the current Libpod temporary files directory. +func (r *Runtime) TmpDir() (string, error) { + if !r.valid { + return "", define.ErrRuntimeStopped + } + + return r.config.Engine.TmpDir, nil +} + // GetConfig returns a copy of the configuration used by the runtime func (r *Runtime) GetConfig() (*config.Config, error) { r.lock.RLock() |