diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2021-01-26 16:59:57 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-26 16:59:57 +0100 |
commit | ad1e0bb77f56499ff22eeb8123aaab8e57a43c03 (patch) | |
tree | 2d51bab04ef8f221273d3f9d18aceb847daf5dc1 /pkg/specgen/generate/container_create.go | |
parent | 41dd1eb8a22f6ac70dd48b53993c9d6ce4476eb4 (diff) | |
parent | 0f668aa0857815f388ef1bb880efa4b2e889edaf (diff) | |
download | podman-ad1e0bb77f56499ff22eeb8123aaab8e57a43c03.tar.gz podman-ad1e0bb77f56499ff22eeb8123aaab8e57a43c03.tar.bz2 podman-ad1e0bb77f56499ff22eeb8123aaab8e57a43c03.zip |
Merge pull request #9054 from vrothberg/fix-9040
make sure the workdir exists on container mount
Diffstat (limited to 'pkg/specgen/generate/container_create.go')
-rw-r--r-- | pkg/specgen/generate/container_create.go | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/pkg/specgen/generate/container_create.go b/pkg/specgen/generate/container_create.go index 4f36744ca..1bc050b00 100644 --- a/pkg/specgen/generate/container_create.go +++ b/pkg/specgen/generate/container_create.go @@ -272,10 +272,18 @@ func createContainerOptions(ctx context.Context, rt *libpod.Runtime, s *specgen. if s.Entrypoint != nil { options = append(options, libpod.WithEntrypoint(s.Entrypoint)) } - // If the user did not set an workdir but the image did, ensure it is - // created. + // If the user did not specify a workdir on the CLI, let's extract it + // from the image. if s.WorkDir == "" && img != nil { options = append(options, libpod.WithCreateWorkingDir()) + wd, err := img.WorkingDir(ctx) + if err != nil { + return nil, err + } + s.WorkDir = wd + } + if s.WorkDir == "" { + s.WorkDir = "/" } if s.StopSignal != nil { options = append(options, libpod.WithStopSignal(*s.StopSignal)) |