mirror of
https://github.com/podman-container-tools/podman.git
synced 2026-10-18 11:57:32 +00:00
Now that Dan has added helpful comments to each SkipIfRemote,
let's take the next step and include those messages in the
Skip() output so someone viewing test results can easily
see if a remote test is skipped for a real reason or for
a FIXME.
This commit is the result of a simple:
perl -pi -e 's;(SkipIfRemote)\(\)(\s+//\s+(.*))?;$1("$3");' *.go
in the test/e2e directory, with a few minor (manual) changes
in wording.
Signed-off-by: Ed Santiago <santiago@redhat.com>
127 lines
3.9 KiB
Go
127 lines
3.9 KiB
Go
package integration
|
|
|
|
import (
|
|
"os"
|
|
|
|
. "github.com/containers/podman/v2/test/utils"
|
|
. "github.com/onsi/ginkgo"
|
|
. "github.com/onsi/gomega"
|
|
)
|
|
|
|
var PodmanDockerfile = `
|
|
FROM alpine:latest
|
|
LABEL RUN podman --version`
|
|
|
|
var LsDockerfile = `
|
|
FROM alpine:latest
|
|
LABEL RUN ls -la`
|
|
|
|
var GlobalDockerfile = `
|
|
FROM alpine:latest
|
|
LABEL RUN echo \$GLOBAL_OPTS
|
|
`
|
|
|
|
var _ = Describe("podman container runlabel", func() {
|
|
var (
|
|
tempdir string
|
|
err error
|
|
podmanTest *PodmanTestIntegration
|
|
)
|
|
|
|
BeforeEach(func() {
|
|
SkipIfRemote("runlabel is not supported for remote connections")
|
|
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 container runlabel (podman --version)", func() {
|
|
image := "podman-runlabel-test:podman"
|
|
podmanTest.BuildImage(PodmanDockerfile, image, "false")
|
|
|
|
result := podmanTest.Podman([]string{"container", "runlabel", "RUN", image})
|
|
result.WaitWithDefaultTimeout()
|
|
Expect(result.ExitCode()).To(Equal(0))
|
|
|
|
result = podmanTest.Podman([]string{"rmi", image})
|
|
result.WaitWithDefaultTimeout()
|
|
Expect(result.ExitCode()).To(Equal(0))
|
|
})
|
|
|
|
It("podman container runlabel (ls -la)", func() {
|
|
image := "podman-runlabel-test:ls"
|
|
podmanTest.BuildImage(LsDockerfile, image, "false")
|
|
|
|
result := podmanTest.Podman([]string{"container", "runlabel", "RUN", image})
|
|
result.WaitWithDefaultTimeout()
|
|
Expect(result.ExitCode()).To(Equal(0))
|
|
|
|
result = podmanTest.Podman([]string{"rmi", image})
|
|
result.WaitWithDefaultTimeout()
|
|
Expect(result.ExitCode()).To(Equal(0))
|
|
})
|
|
It("podman container runlabel --display", func() {
|
|
image := "podman-runlabel-test:ls"
|
|
podmanTest.BuildImage(LsDockerfile, image, "false")
|
|
|
|
result := podmanTest.Podman([]string{"container", "runlabel", "--display", "RUN", image})
|
|
result.WaitWithDefaultTimeout()
|
|
Expect(result.ExitCode()).To(Equal(0))
|
|
Expect(result.OutputToString()).To(ContainSubstring(podmanTest.PodmanBinary + " -la"))
|
|
|
|
result = podmanTest.Podman([]string{"rmi", image})
|
|
result.WaitWithDefaultTimeout()
|
|
Expect(result.ExitCode()).To(Equal(0))
|
|
})
|
|
It("podman container runlabel bogus label should result in non-zero exit code", func() {
|
|
result := podmanTest.Podman([]string{"container", "runlabel", "RUN", ALPINE})
|
|
result.WaitWithDefaultTimeout()
|
|
Expect(result).To(ExitWithError())
|
|
})
|
|
It("podman container runlabel bogus label in remote image should result in non-zero exit", func() {
|
|
result := podmanTest.Podman([]string{"container", "runlabel", "RUN", "docker.io/library/ubuntu:latest"})
|
|
result.WaitWithDefaultTimeout()
|
|
Expect(result).To(ExitWithError())
|
|
|
|
})
|
|
|
|
It("podman container runlabel global options", func() {
|
|
Skip("Test nonfunctional for podman-in-podman testing")
|
|
image := "podman-global-test:ls"
|
|
podmanTest.BuildImage(GlobalDockerfile, image, "false")
|
|
result := podmanTest.Podman([]string{"--syslog", "--log-level", "debug", "container", "runlabel", "RUN", image})
|
|
result.WaitWithDefaultTimeout()
|
|
Expect(result.ExitCode()).To(Equal(0))
|
|
|
|
Expect(result.OutputToString()).To(ContainSubstring("--syslog true"))
|
|
Expect(result.OutputToString()).To(ContainSubstring("--log-level debug"))
|
|
result = podmanTest.Podman([]string{"rmi", image})
|
|
result.WaitWithDefaultTimeout()
|
|
Expect(result.ExitCode()).To(Equal(0))
|
|
})
|
|
|
|
It("runlabel should fail with nonexist authfile", func() {
|
|
image := "podman-runlabel-test:podman"
|
|
podmanTest.BuildImage(PodmanDockerfile, image, "false")
|
|
|
|
// runlabel should fail with nonexist authfile
|
|
result := podmanTest.Podman([]string{"container", "runlabel", "--authfile", "/tmp/nonexist", "RUN", image})
|
|
result.WaitWithDefaultTimeout()
|
|
Expect(result.ExitCode()).To(Not(Equal(0)))
|
|
|
|
result = podmanTest.Podman([]string{"rmi", image})
|
|
result.WaitWithDefaultTimeout()
|
|
Expect(result.ExitCode()).To(Equal(0))
|
|
})
|
|
})
|