diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2021-11-08 16:19:57 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-11-08 16:19:57 +0100 |
commit | c9ba1fb7d4565365ee4ad4f852cce13f2072574e (patch) | |
tree | a8cd0830f2c2c351ce87e376718360edee53f1d1 /test/e2e | |
parent | a58c0bb39ada24ea21204702d07117bf24d24156 (diff) | |
parent | ffa5ed0e0e00f79a1f3b6a88bf9efce3dbb19207 (diff) | |
download | podman-c9ba1fb7d4565365ee4ad4f852cce13f2072574e.tar.gz podman-c9ba1fb7d4565365ee4ad4f852cce13f2072574e.tar.bz2 podman-c9ba1fb7d4565365ee4ad4f852cce13f2072574e.zip |
Merge pull request #11958 from cdoern/scp
Podman Image SCP rootful to rootless transfer
Diffstat (limited to 'test/e2e')
-rw-r--r-- | test/e2e/image_scp_test.go | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/test/e2e/image_scp_test.go b/test/e2e/image_scp_test.go index 9fd8d7e27..acea2993d 100644 --- a/test/e2e/image_scp_test.go +++ b/test/e2e/image_scp_test.go @@ -22,12 +22,14 @@ var _ = Describe("podman image scp", func() { ) BeforeEach(func() { + ConfPath.Value, ConfPath.IsSet = os.LookupEnv("CONTAINERS_CONF") conf, err := ioutil.TempFile("", "containersconf") if err != nil { panic(err) } os.Setenv("CONTAINERS_CONF", conf.Name()) + tempdir, err = CreateTempDirInTempDir() if err != nil { os.Exit(1) @@ -38,6 +40,7 @@ var _ = Describe("podman image scp", func() { AfterEach(func() { podmanTest.Cleanup() + os.Remove(os.Getenv("CONTAINERS_CONF")) if ConfPath.IsSet { os.Setenv("CONTAINERS_CONF", ConfPath.Value) @@ -58,6 +61,25 @@ var _ = Describe("podman image scp", func() { Expect(scp).To(Exit(0)) }) + It("podman image scp root to rootless transfer", func() { + SkipIfNotRootless("this is a rootless only test, transfering from root to rootless using PodmanAsUser") + if IsRemote() { + Skip("this test is only for non-remote") + } + env := os.Environ() + img := podmanTest.PodmanAsUser([]string{"image", "pull", ALPINE}, 0, 0, "", env) // pull image to root + img.WaitWithDefaultTimeout() + Expect(img).To(Exit(0)) + scp := podmanTest.PodmanAsUser([]string{"image", "scp", "root@localhost::" + ALPINE, "1000:1000@localhost::"}, 0, 0, "", env) //transfer from root to rootless (us) + scp.WaitWithDefaultTimeout() + Expect(scp).To(Exit(0)) + + list := podmanTest.Podman([]string{"image", "list"}) // our image should now contain alpine loaded in from root + list.WaitWithDefaultTimeout() + Expect(list).To(Exit(0)) + Expect(list.LineInOutputStartsWith("quay.io/libpod/alpine")).To(BeTrue()) + }) + It("podman image scp bogus image", func() { if IsRemote() { Skip("this test is only for non-remote") |