From 9aafc25a3d5c34b89ccd1e9866fbe57b171cf001 Mon Sep 17 00:00:00 2001 From: umohnani8 Date: Thu, 12 Apr 2018 14:41:17 -0400 Subject: Fix secrets patch The secrets code was just tarring and copying the contents of the secrets directory on host as is. This meant it was not accounting for any symlinks inside the directory, leading up to the contents not being copied over. Signed-off-by: umohnani8 Closes: #611 Approved by: mheon --- test/e2e/run_test.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'test/e2e') diff --git a/test/e2e/run_test.go b/test/e2e/run_test.go index 17b61533b..94a1fef57 100644 --- a/test/e2e/run_test.go +++ b/test/e2e/run_test.go @@ -278,10 +278,26 @@ var _ = Describe("Podman run", func() { err = ioutil.WriteFile(secretsFile, []byte(secretsString), 0755) Expect(err).To(BeNil()) + targetDir := "/tmp/symlink/target" + err = os.MkdirAll(targetDir, 0755) + Expect(err).To(BeNil()) + keyFile := filepath.Join(targetDir, "key.pem") + err = ioutil.WriteFile(keyFile, []byte(mountString), 0755) + Expect(err).To(BeNil()) + execSession := podmanTest.SystemExec("ln", []string{"-s", targetDir, filepath.Join(secretsDir, "mysymlink")}) + execSession.WaitWithDefaultTimeout() + Expect(execSession.ExitCode()).To(Equal(0)) + session := podmanTest.Podman([]string{"run", "--rm", ALPINE, "cat", "/run/secrets/test.txt"}) session.WaitWithDefaultTimeout() + Expect(session.ExitCode()).To(Equal(0)) Expect(session.OutputToString()).To(Equal(secretsString)) + session = podmanTest.Podman([]string{"run", "--rm", ALPINE, "ls", "/run/secrets/mysymlink"}) + session.WaitWithDefaultTimeout() + Expect(session.ExitCode()).To(Equal(0)) + Expect(session.OutputToString()).To(ContainSubstring("key.pem")) + err = os.RemoveAll(containersDir) Expect(err).To(BeNil()) }) -- cgit v1.2.3-54-g00ecf