diff options
author | Matthew Heon <matthew.heon@pm.me> | 2020-07-31 17:08:06 -0400 |
---|---|---|
committer | Matthew Heon <matthew.heon@pm.me> | 2020-08-03 14:44:52 -0400 |
commit | 333d9af77a65d860b5fd788805cd4c0f2cd232df (patch) | |
tree | ad5ac181ecd3a360c118c2fddeaba83182b86a05 /test | |
parent | 7a15be546adffe4f884abfbd4ed02f69ac7659e0 (diff) | |
download | podman-333d9af77a65d860b5fd788805cd4c0f2cd232df.tar.gz podman-333d9af77a65d860b5fd788805cd4c0f2cd232df.tar.bz2 podman-333d9af77a65d860b5fd788805cd4c0f2cd232df.zip |
Ensure WORKDIR from images is created
A recent crun change stopped the creation of the container's
working directory if it does not exist. This is arguably correct
for user-specified directories, to protect against typos; it is
definitely not correct for image WORKDIR, where the image author
definitely intended for the directory to be used.
This makes Podman create the working directory and chown it to
container root, if it does not already exist, and only if it was
specified by an image, not the user.
Signed-off-by: Matthew Heon <matthew.heon@pm.me>
Diffstat (limited to 'test')
-rw-r--r-- | test/e2e/run_test.go | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/test/e2e/run_test.go b/test/e2e/run_test.go index 1f9cc3cb0..b666f114b 100644 --- a/test/e2e/run_test.go +++ b/test/e2e/run_test.go @@ -1123,4 +1123,14 @@ USER mail` Expect(session.ExitCode()).To(Not(Equal(0))) Expect(session.ErrorToString()).To(ContainSubstring("Invalid umask")) }) + + It("podman run makes entrypoint from image", func() { + dockerfile := `FROM busybox +WORKDIR /madethis` + podmanTest.BuildImage(dockerfile, "test", "false") + session := podmanTest.Podman([]string{"run", "--rm", "test", "pwd"}) + session.WaitWithDefaultTimeout() + Expect(session.ExitCode()).To(Equal(0)) + Expect(session.OutputToString()).To(ContainSubstring("/madethis")) + }) }) |