summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/apiv2/10-images.at6
-rw-r--r--test/e2e/generate_systemd_test.go1
-rw-r--r--test/e2e/inspect_test.go1
-rw-r--r--test/e2e/run_env_test.go138
-rw-r--r--test/e2e/run_test.go89
-rw-r--r--test/e2e/save_test.go12
-rw-r--r--test/system/005-info.bats14
-rw-r--r--test/system/150-login.bats6
-rw-r--r--test/system/250-generate-systemd.bats2
9 files changed, 168 insertions, 101 deletions
diff --git a/test/apiv2/10-images.at b/test/apiv2/10-images.at
index 42ec028d0..1c8da0c2f 100644
--- a/test/apiv2/10-images.at
+++ b/test/apiv2/10-images.at
@@ -7,15 +7,15 @@
podman pull -q $IMAGE
t GET libpod/images/json 200 \
- .[0].Id~[0-9a-f]\\{64\\}
-iid=$(jq -r '.[0].Id' <<<"$output")
+ .[0].ID~[0-9a-f]\\{64\\}
+iid=$(jq -r '.[0].ID' <<<"$output")
t GET libpod/images/$iid/exists 204
t GET libpod/images/$PODMAN_TEST_IMAGE_NAME/exists 204
# FIXME: compare to actual podman info
t GET libpod/images/json 200 \
- .[0].Id=${iid}
+ .[0].ID=${iid}
t GET libpod/images/$iid/json 200 \
.Id=$iid \
diff --git a/test/e2e/generate_systemd_test.go b/test/e2e/generate_systemd_test.go
index 2901e7ac6..abfca4db9 100644
--- a/test/e2e/generate_systemd_test.go
+++ b/test/e2e/generate_systemd_test.go
@@ -18,7 +18,6 @@ var _ = Describe("Podman generate systemd", func() {
)
BeforeEach(func() {
- Skip(v2fail)
tempdir, err = CreateTempDirInTempDir()
if err != nil {
os.Exit(1)
diff --git a/test/e2e/inspect_test.go b/test/e2e/inspect_test.go
index 5ec1b51bb..ebac087ac 100644
--- a/test/e2e/inspect_test.go
+++ b/test/e2e/inspect_test.go
@@ -17,7 +17,6 @@ var _ = Describe("Podman inspect", func() {
)
BeforeEach(func() {
- Skip(v2fail)
tempdir, err = CreateTempDirInTempDir()
if err != nil {
os.Exit(1)
diff --git a/test/e2e/run_env_test.go b/test/e2e/run_env_test.go
new file mode 100644
index 000000000..867913a08
--- /dev/null
+++ b/test/e2e/run_env_test.go
@@ -0,0 +1,138 @@
+// +build !remoteclient
+
+package integration
+
+import (
+ "os"
+
+ . "github.com/containers/libpod/test/utils"
+ . "github.com/onsi/ginkgo"
+ . "github.com/onsi/gomega"
+)
+
+var _ = Describe("Podman run", func() {
+ var (
+ tempdir string
+ err error
+ podmanTest *PodmanTestIntegration
+ )
+
+ BeforeEach(func() {
+ tempdir, err = CreateTempDirInTempDir()
+ if err != nil {
+ os.Exit(1)
+ }
+ podmanTest = PodmanTestCreate(tempdir)
+ podmanTest.Setup()
+ podmanTest.SeedImages()
+ })
+
+ AfterEach(func() {
+ podmanTest.Cleanup()
+ f := CurrentGinkgoTestDescription()
+ processTestResult(f)
+
+ })
+
+ It("podman run environment test", func() {
+ session := podmanTest.Podman([]string{"run", "--rm", ALPINE, "printenv", "HOME"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+ match, _ := session.GrepString("/root")
+ Expect(match).Should(BeTrue())
+
+ session = podmanTest.Podman([]string{"run", "--rm", "--user", "2", ALPINE, "printenv", "HOME"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+ match, _ = session.GrepString("/sbin")
+ Expect(match).Should(BeTrue())
+
+ session = podmanTest.Podman([]string{"run", "--rm", "--env", "HOME=/foo", ALPINE, "printenv", "HOME"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+ match, _ = session.GrepString("/foo")
+ Expect(match).Should(BeTrue())
+
+ session = podmanTest.Podman([]string{"run", "--rm", "--env", "FOO=BAR,BAZ", ALPINE, "printenv", "FOO"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+ match, _ = session.GrepString("BAR,BAZ")
+ Expect(match).Should(BeTrue())
+
+ session = podmanTest.Podman([]string{"run", "--rm", "--env", "PATH=/bin", ALPINE, "printenv", "PATH"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+ match, _ = session.GrepString("/bin")
+ Expect(match).Should(BeTrue())
+
+ os.Setenv("FOO", "BAR")
+ session = podmanTest.Podman([]string{"run", "--rm", "--env", "FOO", ALPINE, "printenv", "FOO"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+ match, _ = session.GrepString("BAR")
+ Expect(match).Should(BeTrue())
+ os.Unsetenv("FOO")
+
+ session = podmanTest.Podman([]string{"run", "--rm", "--env", "FOO", ALPINE, "printenv", "FOO"})
+ session.WaitWithDefaultTimeout()
+ Expect(len(session.OutputToString())).To(Equal(0))
+ Expect(session.ExitCode()).To(Equal(1))
+
+ session = podmanTest.Podman([]string{"run", "--rm", ALPINE, "printenv"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+
+ // This currently does not work
+ // Re-enable when hostname is an env variable
+ session = podmanTest.Podman([]string{"run", "--rm", ALPINE, "sh", "-c", "printenv"})
+ session.Wait(10)
+ Expect(session.ExitCode()).To(Equal(0))
+ match, _ = session.GrepString("HOSTNAME")
+ Expect(match).Should(BeTrue())
+ })
+
+ It("podman run --host-env environment test", func() {
+ env := append(os.Environ(), "FOO=BAR")
+ session := podmanTest.PodmanAsUser([]string{"run", "--rm", "--env-host", ALPINE, "/bin/printenv", "FOO"}, 0, 0, "", env)
+
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+ match, _ := session.GrepString("BAR")
+ Expect(match).Should(BeTrue())
+
+ session = podmanTest.PodmanAsUser([]string{"run", "--rm", "--env", "FOO=BAR1", "--env-host", ALPINE, "/bin/printenv", "FOO"}, 0, 0, "", env)
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+ match, _ = session.GrepString("BAR1")
+ Expect(match).Should(BeTrue())
+ os.Unsetenv("FOO")
+ })
+
+ It("podman run --http-proxy test", func() {
+ os.Setenv("http_proxy", "1.2.3.4")
+ session := podmanTest.Podman([]string{"run", "--rm", ALPINE, "printenv", "http_proxy"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+ match, _ := session.GrepString("1.2.3.4")
+ Expect(match).Should(BeTrue())
+
+ session = podmanTest.Podman([]string{"run", "--http-proxy=false", ALPINE, "printenv", "http_proxy"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(1))
+ Expect(session.OutputToString()).To(Equal(""))
+
+ session = podmanTest.Podman([]string{"run", "--env", "http_proxy=5.6.7.8", ALPINE, "printenv", "http_proxy"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+ match, _ = session.GrepString("5.6.7.8")
+ Expect(match).Should(BeTrue())
+ os.Unsetenv("http_proxy")
+
+ session = podmanTest.Podman([]string{"run", "--http-proxy=false", "--env", "http_proxy=5.6.7.8", ALPINE, "printenv", "http_proxy"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+ match, _ = session.GrepString("5.6.7.8")
+ Expect(match).Should(BeTrue())
+ os.Unsetenv("http_proxy")
+ })
+})
diff --git a/test/e2e/run_test.go b/test/e2e/run_test.go
index 7d4039819..d94c6c169 100644
--- a/test/e2e/run_test.go
+++ b/test/e2e/run_test.go
@@ -193,80 +193,6 @@ var _ = Describe("Podman run", func() {
Expect(session.ExitCode()).To(Equal(0))
})
- It("podman run environment test", func() {
- session := podmanTest.Podman([]string{"run", "--rm", ALPINE, "printenv", "HOME"})
- session.WaitWithDefaultTimeout()
- Expect(session.ExitCode()).To(Equal(0))
- match, _ := session.GrepString("/root")
- Expect(match).Should(BeTrue())
-
- session = podmanTest.Podman([]string{"run", "--rm", "--user", "2", ALPINE, "printenv", "HOME"})
- session.WaitWithDefaultTimeout()
- Expect(session.ExitCode()).To(Equal(0))
- match, _ = session.GrepString("/sbin")
- Expect(match).Should(BeTrue())
-
- session = podmanTest.Podman([]string{"run", "--rm", "--env", "HOME=/foo", ALPINE, "printenv", "HOME"})
- session.WaitWithDefaultTimeout()
- Expect(session.ExitCode()).To(Equal(0))
- match, _ = session.GrepString("/foo")
- Expect(match).Should(BeTrue())
-
- session = podmanTest.Podman([]string{"run", "--rm", "--env", "FOO=BAR,BAZ", ALPINE, "printenv", "FOO"})
- session.WaitWithDefaultTimeout()
- Expect(session.ExitCode()).To(Equal(0))
- match, _ = session.GrepString("BAR,BAZ")
- Expect(match).Should(BeTrue())
-
- session = podmanTest.Podman([]string{"run", "--rm", "--env", "PATH=/bin", ALPINE, "printenv", "PATH"})
- session.WaitWithDefaultTimeout()
- Expect(session.ExitCode()).To(Equal(0))
- match, _ = session.GrepString("/bin")
- Expect(match).Should(BeTrue())
-
- os.Setenv("FOO", "BAR")
- session = podmanTest.Podman([]string{"run", "--rm", "--env", "FOO", ALPINE, "printenv", "FOO"})
- session.WaitWithDefaultTimeout()
- Expect(session.ExitCode()).To(Equal(0))
- match, _ = session.GrepString("BAR")
- Expect(match).Should(BeTrue())
- os.Unsetenv("FOO")
-
- session = podmanTest.Podman([]string{"run", "--rm", "--env", "FOO", ALPINE, "printenv", "FOO"})
- session.WaitWithDefaultTimeout()
- Expect(len(session.OutputToString())).To(Equal(0))
- Expect(session.ExitCode()).To(Equal(1))
-
- session = podmanTest.Podman([]string{"run", "--rm", ALPINE, "printenv"})
- session.WaitWithDefaultTimeout()
- Expect(session.ExitCode()).To(Equal(0))
-
- // This currently does not work
- // Re-enable when hostname is an env variable
- session = podmanTest.Podman([]string{"run", "--rm", ALPINE, "sh", "-c", "printenv"})
- session.Wait(10)
- Expect(session.ExitCode()).To(Equal(0))
- match, _ = session.GrepString("HOSTNAME")
- Expect(match).Should(BeTrue())
- })
-
- It("podman run --host-env environment test", func() {
- env := append(os.Environ(), "FOO=BAR")
- session := podmanTest.PodmanAsUser([]string{"run", "--rm", "--env-host", ALPINE, "/bin/printenv", "FOO"}, 0, 0, "", env)
-
- session.WaitWithDefaultTimeout()
- Expect(session.ExitCode()).To(Equal(0))
- match, _ := session.GrepString("BAR")
- Expect(match).Should(BeTrue())
-
- session = podmanTest.PodmanAsUser([]string{"run", "--rm", "--env", "FOO=BAR1", "--env-host", ALPINE, "/bin/printenv", "FOO"}, 0, 0, "", env)
- session.WaitWithDefaultTimeout()
- Expect(session.ExitCode()).To(Equal(0))
- match, _ = session.GrepString("BAR1")
- Expect(match).Should(BeTrue())
- os.Unsetenv("FOO")
- })
-
It("podman run limits test", func() {
SkipIfRootless()
session := podmanTest.Podman([]string{"run", "--rm", "--ulimit", "rtprio=99", "--cap-add=sys_nice", fedoraMinimal, "cat", "/proc/self/sched"})
@@ -875,21 +801,6 @@ USER mail`
Expect(session).To(ExitWithError())
})
- It("podman run --http-proxy test", func() {
- os.Setenv("http_proxy", "1.2.3.4")
- session := podmanTest.Podman([]string{"run", "--rm", ALPINE, "printenv", "http_proxy"})
- session.WaitWithDefaultTimeout()
- Expect(session.ExitCode()).To(Equal(0))
- match, _ := session.GrepString("1.2.3.4")
- Expect(match).Should(BeTrue())
-
- session = podmanTest.Podman([]string{"run", "--http-proxy=false", ALPINE, "printenv", "http_proxy"})
- session.WaitWithDefaultTimeout()
- Expect(session.ExitCode()).To(Equal(1))
- Expect(session.OutputToString()).To(Equal(""))
- os.Unsetenv("http_proxy")
- })
-
It("podman run with restart-policy always restarts containers", func() {
testDir := filepath.Join(podmanTest.RunRoot, "restart-test")
diff --git a/test/e2e/save_test.go b/test/e2e/save_test.go
index 60825f975..aaa5ae180 100644
--- a/test/e2e/save_test.go
+++ b/test/e2e/save_test.go
@@ -116,4 +116,16 @@ var _ = Describe("Podman save", func() {
Expect(save).To(ExitWithError())
})
+ It("podman save image with digest reference", func() {
+ // pull a digest reference
+ session := podmanTest.PodmanNoCache([]string{"pull", ALPINELISTDIGEST})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+
+ // save a digest reference should exit without error.
+ outfile := filepath.Join(podmanTest.TempDir, "temp.tar")
+ save := podmanTest.PodmanNoCache([]string{"save", "-o", outfile, ALPINELISTDIGEST})
+ save.WaitWithDefaultTimeout()
+ Expect(save.ExitCode()).To(Equal(0))
+ })
})
diff --git a/test/system/005-info.bats b/test/system/005-info.bats
index 3c06103e8..c53ba8125 100644
--- a/test/system/005-info.bats
+++ b/test/system/005-info.bats
@@ -8,19 +8,19 @@ load helpers
run_podman info
expected_keys="
-buildahversion: *[0-9.]\\\+
+buildahVersion: *[0-9.]\\\+
conmon:\\\s\\\+package:
distribution:
-ociruntime:\\\s\\\+name:
+ociRuntime:\\\s\\\+name:
os:
rootless:
registries:
store:
-graphdrivername:
-graphroot:
-graphstatus:
-imagestore:\\\s\\\+number: 1
-runroot:
+graphDriverName:
+graphRoot:
+graphStatus:
+imageStore:\\\s\\\+number: 1
+runRoot:
"
while read expect; do
is "$output" ".*$expect" "output includes '$expect'"
diff --git a/test/system/150-login.bats b/test/system/150-login.bats
index e33217e14..3edb11c2f 100644
--- a/test/system/150-login.bats
+++ b/test/system/150-login.bats
@@ -165,6 +165,9 @@ function setup() {
# Some push tests
@test "podman push fail" {
+
+ skip "Not working for v2 yet"
+
# Create an invalid authfile
authfile=${PODMAN_LOGIN_WORKDIR}/auth-$(random_string 10).json
rm -f $authfile
@@ -197,6 +200,9 @@ EOF
#
# https://github.com/containers/skopeo/issues/651
#
+
+ skip "Not working for v2 yet"
+
run_podman pull busybox
# Preserve its ID for later comparison against push/pulled image
diff --git a/test/system/250-generate-systemd.bats b/test/system/250-generate-systemd.bats
index 80199af5f..6155d6ace 100644
--- a/test/system/250-generate-systemd.bats
+++ b/test/system/250-generate-systemd.bats
@@ -10,6 +10,8 @@ SERVICE_NAME="podman_test_$(random_string)"
UNIT_DIR="$HOME/.config/systemd/user"
UNIT_FILE="$UNIT_DIR/$SERVICE_NAME.service"
+# FIXME: the must run as root (because of CI). It's also broken...
+
function setup() {
skip_if_not_systemd
skip_if_remote