diff options
author | Jhon Honce <jhonce@redhat.com> | 2021-01-19 09:16:01 -0700 |
---|---|---|
committer | Matthew Heon <matthew.heon@pm.me> | 2021-02-04 14:24:26 -0500 |
commit | b576ddd9a2ebfa8b42777114ddc1fcc248d6d7fb (patch) | |
tree | 6c3ba3f200494470efa07dbec2761f2b2f0d1ff7 /test/e2e | |
parent | 6213225c919b3b30a298a9a2fb676da9ba811e37 (diff) | |
download | podman-b576ddd9a2ebfa8b42777114ddc1fcc248d6d7fb.tar.gz podman-b576ddd9a2ebfa8b42777114ddc1fcc248d6d7fb.tar.bz2 podman-b576ddd9a2ebfa8b42777114ddc1fcc248d6d7fb.zip |
Report StatusConflict on Pod opt partial failures
- When one or more containers in the Pod reports an error on an operation
report StatusConflict and report the error(s)
- jsoniter type encoding used to marshal error as string using error.Error()
- Update test framework to allow setting any flag when creating pods
- Fix test_resize() result check
Fixes #8865
Signed-off-by: Jhon Honce <jhonce@redhat.com>
<MH: Fix cherry-pick conflicts>
Signed-off-by: Matthew Heon <matthew.heon@pm.me>
Diffstat (limited to 'test/e2e')
-rw-r--r-- | test/e2e/common_test.go | 26 | ||||
-rw-r--r-- | test/e2e/exists_test.go | 6 | ||||
-rw-r--r-- | test/e2e/generate_kube_test.go | 8 | ||||
-rw-r--r-- | test/e2e/pod_create_test.go | 10 | ||||
-rw-r--r-- | test/e2e/pod_inspect_test.go | 2 | ||||
-rw-r--r-- | test/e2e/pod_kill_test.go | 16 | ||||
-rw-r--r-- | test/e2e/pod_pause_test.go | 8 | ||||
-rw-r--r-- | test/e2e/pod_prune_test.go | 6 | ||||
-rw-r--r-- | test/e2e/pod_ps_test.go | 59 | ||||
-rw-r--r-- | test/e2e/pod_restart_test.go | 18 | ||||
-rw-r--r-- | test/e2e/pod_rm_test.go | 24 | ||||
-rw-r--r-- | test/e2e/pod_start_test.go | 49 | ||||
-rw-r--r-- | test/e2e/pod_stats_test.go | 16 | ||||
-rw-r--r-- | test/e2e/pod_stop_test.go | 22 | ||||
-rw-r--r-- | test/e2e/pod_top_test.go | 12 | ||||
-rw-r--r-- | test/e2e/ps_test.go | 4 | ||||
-rw-r--r-- | test/e2e/restart_test.go | 4 |
17 files changed, 153 insertions, 137 deletions
diff --git a/test/e2e/common_test.go b/test/e2e/common_test.go index 59b52bff7..41ad9640c 100644 --- a/test/e2e/common_test.go +++ b/test/e2e/common_test.go @@ -514,27 +514,15 @@ func (s *PodmanSessionIntegration) InspectPodArrToJSON() []define.InspectPodData // CreatePod creates a pod with no infra container // it optionally takes a pod name -func (p *PodmanTestIntegration) CreatePod(name string) (*PodmanSessionIntegration, int, string) { - var podmanArgs = []string{"pod", "create", "--infra=false", "--share", ""} - if name != "" { - podmanArgs = append(podmanArgs, "--name", name) +func (p *PodmanTestIntegration) CreatePod(options map[string][]string) (*PodmanSessionIntegration, int, string) { + var args = []string{"pod", "create", "--infra=false", "--share", ""} + for k, values := range options { + for _, v := range values { + args = append(args, k+"="+v) + } } - session := p.Podman(podmanArgs) - session.WaitWithDefaultTimeout() - return session, session.ExitCode(), session.OutputToString() -} -// CreatePod creates a pod with no infra container and some labels. -// it optionally takes a pod name -func (p *PodmanTestIntegration) CreatePodWithLabels(name string, labels map[string]string) (*PodmanSessionIntegration, int, string) { - var podmanArgs = []string{"pod", "create", "--infra=false", "--share", ""} - if name != "" { - podmanArgs = append(podmanArgs, "--name", name) - } - for labelKey, labelValue := range labels { - podmanArgs = append(podmanArgs, "--label", fmt.Sprintf("%s=%s", labelKey, labelValue)) - } - session := p.Podman(podmanArgs) + session := p.Podman(args) session.WaitWithDefaultTimeout() return session, session.ExitCode(), session.OutputToString() } diff --git a/test/e2e/exists_test.go b/test/e2e/exists_test.go index 480bfe5fc..306e8c250 100644 --- a/test/e2e/exists_test.go +++ b/test/e2e/exists_test.go @@ -83,7 +83,7 @@ var _ = Describe("Podman image|container exists", func() { }) It("podman pod exists in local storage by name", func() { - setup, _, _ := podmanTest.CreatePod("foobar") + setup, _, _ := podmanTest.CreatePod(map[string][]string{"--name": {"foobar"}}) setup.WaitWithDefaultTimeout() Expect(setup).Should(Exit(0)) @@ -92,7 +92,7 @@ var _ = Describe("Podman image|container exists", func() { Expect(session).Should(Exit(0)) }) It("podman pod exists in local storage by container ID", func() { - setup, _, podID := podmanTest.CreatePod("") + setup, _, podID := podmanTest.CreatePod(nil) setup.WaitWithDefaultTimeout() Expect(setup).Should(Exit(0)) @@ -101,7 +101,7 @@ var _ = Describe("Podman image|container exists", func() { Expect(session).Should(Exit(0)) }) It("podman pod exists in local storage by short container ID", func() { - setup, _, podID := podmanTest.CreatePod("") + setup, _, podID := podmanTest.CreatePod(nil) setup.WaitWithDefaultTimeout() Expect(setup).Should(Exit(0)) diff --git a/test/e2e/generate_kube_test.go b/test/e2e/generate_kube_test.go index 83b9cfb14..dba366a1e 100644 --- a/test/e2e/generate_kube_test.go +++ b/test/e2e/generate_kube_test.go @@ -131,7 +131,7 @@ var _ = Describe("Podman generate kube", func() { }) It("podman generate kube on pod", func() { - _, rc, _ := podmanTest.CreatePod("toppod") + _, rc, _ := podmanTest.CreatePod(map[string][]string{"--name": {"toppod"}}) Expect(rc).To(Equal(0)) session := podmanTest.RunTopContainerInPod("topcontainer", "toppod") @@ -221,7 +221,7 @@ var _ = Describe("Podman generate kube", func() { }) It("podman generate service kube on pod", func() { - _, rc, _ := podmanTest.CreatePod("toppod") + _, rc, _ := podmanTest.CreatePod(map[string][]string{"--name": {"toppod"}}) Expect(rc).To(Equal(0)) session := podmanTest.RunTopContainerInPod("topcontainer", "toppod") @@ -373,7 +373,7 @@ var _ = Describe("Podman generate kube", func() { It("podman generate and reimport kube on pod", func() { podName := "toppod" - _, rc, _ := podmanTest.CreatePod(podName) + _, rc, _ := podmanTest.CreatePod(map[string][]string{"--name": {podName}}) Expect(rc).To(Equal(0)) session := podmanTest.Podman([]string{"create", "--pod", podName, "--name", "test1", ALPINE, "top"}) @@ -412,7 +412,7 @@ var _ = Describe("Podman generate kube", func() { It("podman generate with user and reimport kube on pod", func() { podName := "toppod" - _, rc, _ := podmanTest.CreatePod(podName) + _, rc, _ := podmanTest.CreatePod(map[string][]string{"--name": {podName}}) Expect(rc).To(Equal(0)) session := podmanTest.Podman([]string{"create", "--pod", podName, "--name", "test1", "--user", "100:200", ALPINE, "top"}) diff --git a/test/e2e/pod_create_test.go b/test/e2e/pod_create_test.go index 575f9df68..fc634d36f 100644 --- a/test/e2e/pod_create_test.go +++ b/test/e2e/pod_create_test.go @@ -38,7 +38,7 @@ var _ = Describe("Podman pod create", func() { }) It("podman create pod", func() { - _, ec, podID := podmanTest.CreatePod("") + _, ec, podID := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) check := podmanTest.Podman([]string{"pod", "ps", "-q", "--no-trunc"}) @@ -50,7 +50,7 @@ var _ = Describe("Podman pod create", func() { It("podman create pod with name", func() { name := "test" - _, ec, _ := podmanTest.CreatePod(name) + _, ec, _ := podmanTest.CreatePod(map[string][]string{"--name": {name}}) Expect(ec).To(Equal(0)) check := podmanTest.Podman([]string{"pod", "ps", "--no-trunc"}) @@ -61,10 +61,10 @@ var _ = Describe("Podman pod create", func() { It("podman create pod with doubled name", func() { name := "test" - _, ec, _ := podmanTest.CreatePod(name) + _, ec, _ := podmanTest.CreatePod(map[string][]string{"--name": {name}}) Expect(ec).To(Equal(0)) - _, ec2, _ := podmanTest.CreatePod(name) + _, ec2, _ := podmanTest.CreatePod(map[string][]string{"--name": {name}}) Expect(ec2).To(Not(Equal(0))) check := podmanTest.Podman([]string{"pod", "ps", "-q"}) @@ -78,7 +78,7 @@ var _ = Describe("Podman pod create", func() { session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - _, ec, _ := podmanTest.CreatePod(name) + _, ec, _ := podmanTest.CreatePod(map[string][]string{"--name": {name}}) Expect(ec).To(Not(Equal(0))) check := podmanTest.Podman([]string{"pod", "ps", "-q"}) diff --git a/test/e2e/pod_inspect_test.go b/test/e2e/pod_inspect_test.go index fd9589afe..d9c4a393a 100644 --- a/test/e2e/pod_inspect_test.go +++ b/test/e2e/pod_inspect_test.go @@ -41,7 +41,7 @@ var _ = Describe("Podman pod inspect", func() { }) It("podman inspect a pod", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) diff --git a/test/e2e/pod_kill_test.go b/test/e2e/pod_kill_test.go index 710147893..06d244f99 100644 --- a/test/e2e/pod_kill_test.go +++ b/test/e2e/pod_kill_test.go @@ -40,7 +40,7 @@ var _ = Describe("Podman pod kill", func() { }) It("podman pod kill a pod by id", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -58,7 +58,7 @@ var _ = Describe("Podman pod kill", func() { }) It("podman pod kill a pod by id with TERM", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -72,7 +72,7 @@ var _ = Describe("Podman pod kill", func() { }) It("podman pod kill a pod by name", func() { - _, ec, podid := podmanTest.CreatePod("test1") + _, ec, podid := podmanTest.CreatePod(map[string][]string{"--name": {"test1"}}) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -86,7 +86,7 @@ var _ = Describe("Podman pod kill", func() { }) It("podman pod kill a pod by id with a bogus signal", func() { - _, ec, podid := podmanTest.CreatePod("test1") + _, ec, podid := podmanTest.CreatePod(map[string][]string{"--name": {"test1"}}) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -100,14 +100,14 @@ var _ = Describe("Podman pod kill", func() { }) It("podman pod kill latest pod", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - _, ec, podid2 := podmanTest.CreatePod("") + _, ec, podid2 := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session = podmanTest.RunTopContainerInPod("", podid2) @@ -128,7 +128,7 @@ var _ = Describe("Podman pod kill", func() { It("podman pod kill all", func() { SkipIfRootlessCgroupsV1("Not supported for rootless + CGroupsV1") - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -139,7 +139,7 @@ var _ = Describe("Podman pod kill", func() { session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - _, ec, podid2 := podmanTest.CreatePod("") + _, ec, podid2 := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session = podmanTest.RunTopContainerInPod("", podid2) diff --git a/test/e2e/pod_pause_test.go b/test/e2e/pod_pause_test.go index 3dabf7b4a..0c1b39f38 100644 --- a/test/e2e/pod_pause_test.go +++ b/test/e2e/pod_pause_test.go @@ -48,7 +48,7 @@ var _ = Describe("Podman pod pause", func() { }) It("podman pod pause a created pod by id", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) result := podmanTest.Podman([]string{"pod", "pause", podid}) @@ -57,7 +57,7 @@ var _ = Describe("Podman pod pause", func() { }) It("podman pod pause a running pod by id", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -78,7 +78,7 @@ var _ = Describe("Podman pod pause", func() { }) It("podman unpause a running pod by id", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -93,7 +93,7 @@ var _ = Describe("Podman pod pause", func() { }) It("podman pod pause a running pod by name", func() { - _, ec, _ := podmanTest.CreatePod("test1") + _, ec, _ := podmanTest.CreatePod(map[string][]string{"--name": {"test1"}}) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", "test1") diff --git a/test/e2e/pod_prune_test.go b/test/e2e/pod_prune_test.go index 0346cfdc8..d1ebf7249 100644 --- a/test/e2e/pod_prune_test.go +++ b/test/e2e/pod_prune_test.go @@ -33,7 +33,7 @@ var _ = Describe("Podman pod prune", func() { }) It("podman pod prune empty pod", func() { - _, ec, _ := podmanTest.CreatePod("") + _, ec, _ := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) result := podmanTest.Podman([]string{"pod", "prune", "--force"}) @@ -42,7 +42,7 @@ var _ = Describe("Podman pod prune", func() { }) It("podman pod prune doesn't remove a pod with a running container", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) ec2 := podmanTest.RunTopContainerInPod("", podid) @@ -59,7 +59,7 @@ var _ = Describe("Podman pod prune", func() { }) It("podman pod prune removes a pod with a stopped container", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) _, ec2, _ := podmanTest.RunLsContainerInPod("", podid) diff --git a/test/e2e/pod_ps_test.go b/test/e2e/pod_ps_test.go index 9f63c1d5d..c20cb44e7 100644 --- a/test/e2e/pod_ps_test.go +++ b/test/e2e/pod_ps_test.go @@ -43,7 +43,7 @@ var _ = Describe("Podman ps", func() { }) It("podman pod ps default", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -57,7 +57,7 @@ var _ = Describe("Podman ps", func() { }) It("podman pod ps quiet flag", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) _, ec, _ = podmanTest.RunLsContainerInPod("", podid) @@ -71,7 +71,7 @@ var _ = Describe("Podman ps", func() { }) It("podman pod ps no-trunc", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) _, ec2, _ := podmanTest.RunLsContainerInPod("", podid) @@ -86,10 +86,10 @@ var _ = Describe("Podman ps", func() { It("podman pod ps latest", func() { SkipIfRemote("--latest flag n/a") - _, ec, podid1 := podmanTest.CreatePod("") + _, ec, podid1 := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) - _, ec2, podid2 := podmanTest.CreatePod("") + _, ec2, podid2 := podmanTest.CreatePod(nil) Expect(ec2).To(Equal(0)) result := podmanTest.Podman([]string{"pod", "ps", "-q", "--no-trunc", "--latest"}) @@ -100,7 +100,7 @@ var _ = Describe("Podman ps", func() { }) It("podman pod ps id filter flag", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) result := podmanTest.Podman([]string{"pod", "ps", "--filter", fmt.Sprintf("id=%s", podid)}) @@ -109,9 +109,9 @@ var _ = Describe("Podman ps", func() { }) It("podman pod ps filter name regexp", func() { - _, ec, podid := podmanTest.CreatePod("mypod") + _, ec, podid := podmanTest.CreatePod(map[string][]string{"--name": {"mypod"}}) Expect(ec).To(Equal(0)) - _, ec2, _ := podmanTest.CreatePod("mypod1") + _, ec2, _ := podmanTest.CreatePod(map[string][]string{"--name": {"mypod1"}}) Expect(ec2).To(Equal(0)) result := podmanTest.Podman([]string{"pod", "ps", "-q", "--no-trunc", "--filter", "name=mypod"}) @@ -138,13 +138,13 @@ var _ = Describe("Podman ps", func() { }) It("podman pod ps --sort by name", func() { - _, ec, _ := podmanTest.CreatePod("") + _, ec, _ := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) - _, ec2, _ := podmanTest.CreatePod("") + _, ec2, _ := podmanTest.CreatePod(nil) Expect(ec2).To(Equal(0)) - _, ec3, _ := podmanTest.CreatePod("") + _, ec3, _ := podmanTest.CreatePod(nil) Expect(ec3).To(Equal(0)) session := podmanTest.Podman([]string{"pod", "ps", "--sort=name", "--format", "{{.Name}}"}) @@ -159,7 +159,7 @@ var _ = Describe("Podman ps", func() { It("podman pod ps --ctr-names", func() { SkipIfRootlessCgroupsV1("Not supported for rootless + CGroupsV1") - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("test1", podid) @@ -177,14 +177,14 @@ var _ = Describe("Podman ps", func() { }) It("podman pod ps filter ctr attributes", func() { - _, ec, podid1 := podmanTest.CreatePod("") + _, ec, podid1 := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("test1", podid1) session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - _, ec2, podid2 := podmanTest.CreatePod("") + _, ec2, podid2 := podmanTest.CreatePod(nil) Expect(ec2).To(Equal(0)) _, ec3, cid := podmanTest.RunLsContainerInPod("test2", podid2) @@ -214,7 +214,7 @@ var _ = Describe("Podman ps", func() { Expect(session.OutputToString()).To(ContainSubstring(podid2)) Expect(session.OutputToString()).To(Not(ContainSubstring(podid1))) - _, ec3, podid3 := podmanTest.CreatePod("") + _, ec3, podid3 := podmanTest.CreatePod(nil) Expect(ec3).To(Equal(0)) session = podmanTest.Podman([]string{"pod", "ps", "-q", "--no-trunc", "--filter", "ctr-number=1"}) @@ -259,23 +259,20 @@ var _ = Describe("Podman ps", func() { }) It("podman pod ps filter labels", func() { - _, ec, podid1 := podmanTest.CreatePod("") - Expect(ec).To(Equal(0)) + s, _, podid1 := podmanTest.CreatePod(nil) + Expect(s).To(Exit(0)) - _, ec, podid2 := podmanTest.CreatePodWithLabels("", map[string]string{ - "app": "myapp", - "io.podman.test.key": "irrelevant-value", + s, _, podid2 := podmanTest.CreatePod(map[string][]string{ + "--label": {"app=myapp", "io.podman.test.key=irrelevant-value"}, }) - Expect(ec).To(Equal(0)) + Expect(s).To(Exit(0)) - _, ec, podid3 := podmanTest.CreatePodWithLabels("", map[string]string{ - "app": "test", - }) - Expect(ec).To(Equal(0)) + s, _, podid3 := podmanTest.CreatePod(map[string][]string{"--label": {"app=test"}}) + Expect(s).To(Exit(0)) session := podmanTest.Podman([]string{"pod", "ps", "--no-trunc", "--filter", "label=app", "--filter", "label=app=myapp"}) session.WaitWithDefaultTimeout() - Expect(session.ExitCode()).To(Equal(0)) + Expect(session).To(Exit(0)) Expect(session.OutputToString()).To(Not(ContainSubstring(podid1))) Expect(session.OutputToString()).To(ContainSubstring(podid2)) Expect(session.OutputToString()).To(Not(ContainSubstring(podid3))) @@ -359,13 +356,13 @@ var _ = Describe("Podman ps", func() { }) It("podman pod ps format with labels", func() { - _, ec, _ := podmanTest.CreatePod("") + _, ec, _ := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) - _, ec1, _ := podmanTest.CreatePodWithLabels("", map[string]string{ - "io.podman.test.label": "value1", - "io.podman.test.key": "irrelevant-value", - }) + _, ec1, _ := podmanTest.CreatePod(map[string][]string{"--label": { + "io.podman.test.label=value1", + "io.podman.test.key=irrelevant-value", + }}) Expect(ec1).To(Equal(0)) session := podmanTest.Podman([]string{"pod", "ps", "--format", "{{.Labels}}"}) diff --git a/test/e2e/pod_restart_test.go b/test/e2e/pod_restart_test.go index b358c2c7a..c6b1a0d46 100644 --- a/test/e2e/pod_restart_test.go +++ b/test/e2e/pod_restart_test.go @@ -39,7 +39,7 @@ var _ = Describe("Podman pod restart", func() { }) It("podman pod restart single empty pod", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.Podman([]string{"pod", "restart", podid}) @@ -48,7 +48,7 @@ var _ = Describe("Podman pod restart", func() { }) It("podman pod restart single pod by name", func() { - _, ec, _ := podmanTest.CreatePod("foobar99") + _, ec, _ := podmanTest.CreatePod(map[string][]string{"--name": {"foobar99"}}) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("test1", "foobar99") @@ -68,14 +68,14 @@ var _ = Describe("Podman pod restart", func() { }) It("podman pod restart multiple pods", func() { - _, ec, _ := podmanTest.CreatePod("foobar99") + _, ec, _ := podmanTest.CreatePod(map[string][]string{"--name": {"foobar99"}}) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("test1", "foobar99") session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - _, ec, _ = podmanTest.CreatePod("foobar100") + _, ec, _ = podmanTest.CreatePod(map[string][]string{"--name": {"foobar100"}}) Expect(ec).To(Equal(0)) session = podmanTest.RunTopContainerInPod("test2", "foobar100") @@ -106,14 +106,14 @@ var _ = Describe("Podman pod restart", func() { }) It("podman pod restart all pods", func() { - _, ec, _ := podmanTest.CreatePod("foobar99") + _, ec, _ := podmanTest.CreatePod(map[string][]string{"--name": {"foobar99"}}) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("test1", "foobar99") session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - _, ec, _ = podmanTest.CreatePod("foobar100") + _, ec, _ = podmanTest.CreatePod(map[string][]string{"--name": {"foobar100"}}) Expect(ec).To(Equal(0)) session = podmanTest.RunTopContainerInPod("test2", "foobar100") @@ -134,14 +134,14 @@ var _ = Describe("Podman pod restart", func() { }) It("podman pod restart latest pod", func() { - _, ec, _ := podmanTest.CreatePod("foobar99") + _, ec, _ := podmanTest.CreatePod(map[string][]string{"--name": {"foobar99"}}) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("test1", "foobar99") session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - _, ec, _ = podmanTest.CreatePod("foobar100") + _, ec, _ = podmanTest.CreatePod(map[string][]string{"--name": {"foobar100"}}) Expect(ec).To(Equal(0)) session = podmanTest.RunTopContainerInPod("test2", "foobar100") @@ -166,7 +166,7 @@ var _ = Describe("Podman pod restart", func() { }) It("podman pod restart multiple pods with bogus", func() { - _, ec, podid1 := podmanTest.CreatePod("foobar99") + _, ec, podid1 := podmanTest.CreatePod(map[string][]string{"--name": {"foobar99"}}) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", "foobar99") diff --git a/test/e2e/pod_rm_test.go b/test/e2e/pod_rm_test.go index 24e945d5a..40a903cd0 100644 --- a/test/e2e/pod_rm_test.go +++ b/test/e2e/pod_rm_test.go @@ -37,7 +37,7 @@ var _ = Describe("Podman pod rm", func() { }) It("podman pod rm empty pod", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) result := podmanTest.Podman([]string{"pod", "rm", podid}) @@ -61,10 +61,10 @@ var _ = Describe("Podman pod rm", func() { }) It("podman pod rm latest pod", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) - _, ec2, podid2 := podmanTest.CreatePod("pod2") + _, ec2, podid2 := podmanTest.CreatePod(map[string][]string{"--name": {"pod2"}}) Expect(ec2).To(Equal(0)) latest := "--latest" @@ -83,7 +83,7 @@ var _ = Describe("Podman pod rm", func() { }) It("podman pod rm removes a pod with a container", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) _, ec2, _ := podmanTest.RunLsContainerInPod("", podid) @@ -99,7 +99,7 @@ var _ = Describe("Podman pod rm", func() { }) It("podman pod rm -f does remove a running container", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -117,10 +117,10 @@ var _ = Describe("Podman pod rm", func() { It("podman pod rm -a doesn't remove a running container", func() { fmt.Printf("To start, there are %d pods\n", podmanTest.NumberOfPods()) - _, ec, podid1 := podmanTest.CreatePod("") + _, ec, podid1 := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) - _, ec, _ = podmanTest.CreatePod("") + _, ec, _ = podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) fmt.Printf("Started %d pods\n", podmanTest.NumberOfPods()) @@ -154,13 +154,13 @@ var _ = Describe("Podman pod rm", func() { }) It("podman pod rm -fa removes everything", func() { - _, ec, podid1 := podmanTest.CreatePod("") + _, ec, podid1 := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) - _, ec, podid2 := podmanTest.CreatePod("") + _, ec, podid2 := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) - _, ec, _ = podmanTest.CreatePod("") + _, ec, _ = podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid1) @@ -199,7 +199,7 @@ var _ = Describe("Podman pod rm", func() { }) It("podman rm bogus pod and a running pod", func() { - _, ec, podid1 := podmanTest.CreatePod("") + _, ec, podid1 := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("test1", podid1) @@ -217,7 +217,7 @@ var _ = Describe("Podman pod rm", func() { It("podman rm --ignore bogus pod and a running pod", func() { - _, ec, podid1 := podmanTest.CreatePod("") + _, ec, podid1 := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("test1", podid1) diff --git a/test/e2e/pod_start_test.go b/test/e2e/pod_start_test.go index 63a915548..e14796ab3 100644 --- a/test/e2e/pod_start_test.go +++ b/test/e2e/pod_start_test.go @@ -10,6 +10,7 @@ import ( . "github.com/containers/podman/v2/test/utils" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" + . "github.com/onsi/gomega/gexec" ) var _ = Describe("Podman pod start", func() { @@ -43,7 +44,7 @@ var _ = Describe("Podman pod start", func() { }) It("podman pod start single empty pod", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.Podman([]string{"pod", "start", podid}) @@ -52,7 +53,7 @@ var _ = Describe("Podman pod start", func() { }) It("podman pod start single pod by name", func() { - _, ec, _ := podmanTest.CreatePod("foobar99") + _, ec, _ := podmanTest.CreatePod(map[string][]string{"--name": {"foobar99"}}) Expect(ec).To(Equal(0)) session := podmanTest.Podman([]string{"create", "--pod", "foobar99", ALPINE, "ls"}) @@ -65,14 +66,14 @@ var _ = Describe("Podman pod start", func() { }) It("podman pod start multiple pods", func() { - _, ec, podid1 := podmanTest.CreatePod("foobar99") + _, ec, podid1 := podmanTest.CreatePod(map[string][]string{"--name": {"foobar99"}}) Expect(ec).To(Equal(0)) session := podmanTest.Podman([]string{"create", "--pod", "foobar99", ALPINE, "top"}) session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - _, ec2, podid2 := podmanTest.CreatePod("foobar100") + _, ec2, podid2 := podmanTest.CreatePod(map[string][]string{"--name": {"foobar100"}}) Expect(ec2).To(Equal(0)) session = podmanTest.Podman([]string{"create", "--pod", "foobar100", ALPINE, "top"}) @@ -85,15 +86,45 @@ var _ = Describe("Podman pod start", func() { Expect(podmanTest.NumberOfContainersRunning()).To(Equal(2)) }) + It("multiple pods in conflict", func() { + podName := []string{"Pod_" + RandomString(10), "Pod_" + RandomString(10)} + + pod, _, podid1 := podmanTest.CreatePod(map[string][]string{ + "--infra": {"true"}, + "--name": {podName[0]}, + "--publish": {"127.0.0.1:8080:80"}, + }) + Expect(pod).To(Exit(0)) + + session := podmanTest.Podman([]string{"create", "--pod", podName[0], ALPINE, "top"}) + session.WaitWithDefaultTimeout() + Expect(session).To(Exit(0)) + + pod, _, podid2 := podmanTest.CreatePod(map[string][]string{ + "--infra": {"true"}, + "--name": {podName[1]}, + "--publish": {"127.0.0.1:8080:80"}, + }) + Expect(pod).To(Exit(0)) + + session = podmanTest.Podman([]string{"create", "--pod", podName[1], ALPINE, "top"}) + session.WaitWithDefaultTimeout() + Expect(session).To(Exit(0)) + + session = podmanTest.Podman([]string{"pod", "start", podid1, podid2}) + session.WaitWithDefaultTimeout() + Expect(session).To(Exit(125)) + }) + It("podman pod start all pods", func() { - _, ec, _ := podmanTest.CreatePod("foobar99") + _, ec, _ := podmanTest.CreatePod(map[string][]string{"--name": {"foobar99"}}) Expect(ec).To(Equal(0)) session := podmanTest.Podman([]string{"create", "--pod", "foobar99", ALPINE, "top"}) session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - _, ec, _ = podmanTest.CreatePod("foobar100") + _, ec, _ = podmanTest.CreatePod(map[string][]string{"--name": {"foobar100"}}) Expect(ec).To(Equal(0)) session = podmanTest.Podman([]string{"create", "--pod", "foobar100", ALPINE, "top"}) @@ -107,14 +138,14 @@ var _ = Describe("Podman pod start", func() { }) It("podman pod start latest pod", func() { - _, ec, _ := podmanTest.CreatePod("foobar99") + _, ec, _ := podmanTest.CreatePod(map[string][]string{"--name": {"foobar99"}}) Expect(ec).To(Equal(0)) session := podmanTest.Podman([]string{"create", "--pod", "foobar99", ALPINE, "top"}) session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - _, ec, _ = podmanTest.CreatePod("foobar100") + _, ec, _ = podmanTest.CreatePod(map[string][]string{"--name": {"foobar100"}}) Expect(ec).To(Equal(0)) session = podmanTest.Podman([]string{"create", "--pod", "foobar100", ALPINE, "top"}) @@ -132,7 +163,7 @@ var _ = Describe("Podman pod start", func() { }) It("podman pod start multiple pods with bogus", func() { - _, ec, podid := podmanTest.CreatePod("foobar99") + _, ec, podid := podmanTest.CreatePod(map[string][]string{"--name": {"foobar99"}}) Expect(ec).To(Equal(0)) session := podmanTest.Podman([]string{"create", "--pod", "foobar99", ALPINE, "top"}) diff --git a/test/e2e/pod_stats_test.go b/test/e2e/pod_stats_test.go index 1709b4f81..073d4752b 100644 --- a/test/e2e/pod_stats_test.go +++ b/test/e2e/pod_stats_test.go @@ -50,7 +50,7 @@ var _ = Describe("Podman pod stats", func() { }) It("podman stats on a specific running pod", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -67,7 +67,7 @@ var _ = Describe("Podman pod stats", func() { }) It("podman stats on a specific running pod with shortID", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -84,7 +84,7 @@ var _ = Describe("Podman pod stats", func() { }) It("podman stats on a specific running pod with name", func() { - _, ec, podid := podmanTest.CreatePod("test") + _, ec, podid := podmanTest.CreatePod(map[string][]string{"--name": {"test"}}) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -101,7 +101,7 @@ var _ = Describe("Podman pod stats", func() { }) It("podman stats on running pods", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -118,7 +118,7 @@ var _ = Describe("Podman pod stats", func() { }) It("podman stats on all pods", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -135,7 +135,7 @@ var _ = Describe("Podman pod stats", func() { }) It("podman stats with json output", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -152,7 +152,7 @@ var _ = Describe("Podman pod stats", func() { Expect(stats.IsJSONOutputValid()).To(BeTrue()) }) It("podman stats with GO template", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -164,7 +164,7 @@ var _ = Describe("Podman pod stats", func() { }) It("podman stats with invalid GO template", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) diff --git a/test/e2e/pod_stop_test.go b/test/e2e/pod_stop_test.go index 4eb897786..30a5632d0 100644 --- a/test/e2e/pod_stop_test.go +++ b/test/e2e/pod_stop_test.go @@ -47,7 +47,7 @@ var _ = Describe("Podman pod stop", func() { }) It("podman stop bogus pod and a running pod", func() { - _, ec, podid1 := podmanTest.CreatePod("") + _, ec, podid1 := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("test1", podid1) @@ -61,7 +61,7 @@ var _ = Describe("Podman pod stop", func() { It("podman stop --ignore bogus pod and a running pod", func() { - _, ec, podid1 := podmanTest.CreatePod("") + _, ec, podid1 := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("test1", podid1) @@ -78,7 +78,7 @@ var _ = Describe("Podman pod stop", func() { }) It("podman pod stop single empty pod", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.Podman([]string{"pod", "stop", podid}) @@ -87,7 +87,7 @@ var _ = Describe("Podman pod stop", func() { }) It("podman pod stop single pod by name", func() { - _, ec, _ := podmanTest.CreatePod("foobar99") + _, ec, _ := podmanTest.CreatePod(map[string][]string{"--name": {"foobar99"}}) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", "foobar99") @@ -101,14 +101,14 @@ var _ = Describe("Podman pod stop", func() { }) It("podman pod stop multiple pods", func() { - _, ec, podid1 := podmanTest.CreatePod("foobar99") + _, ec, podid1 := podmanTest.CreatePod(map[string][]string{"--name": {"foobar99"}}) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", "foobar99") session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - _, ec2, podid2 := podmanTest.CreatePod("foobar100") + _, ec2, podid2 := podmanTest.CreatePod(map[string][]string{"--name": {"foobar100"}}) Expect(ec2).To(Equal(0)) session = podmanTest.RunTopContainerInPod("", "foobar100") @@ -122,14 +122,14 @@ var _ = Describe("Podman pod stop", func() { }) It("podman pod stop all pods", func() { - _, ec, _ := podmanTest.CreatePod("foobar99") + _, ec, _ := podmanTest.CreatePod(map[string][]string{"--name": {"foobar99"}}) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", "foobar99") session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - _, ec, _ = podmanTest.CreatePod("foobar100") + _, ec, _ = podmanTest.CreatePod(map[string][]string{"--name": {"foobar100"}}) Expect(ec).To(Equal(0)) session = podmanTest.RunTopContainerInPod("", "foobar100") @@ -143,14 +143,14 @@ var _ = Describe("Podman pod stop", func() { }) It("podman pod stop latest pod", func() { - _, ec, _ := podmanTest.CreatePod("foobar99") + _, ec, _ := podmanTest.CreatePod(map[string][]string{"--name": {"foobar99"}}) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", "foobar99") session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - _, ec, _ = podmanTest.CreatePod("foobar100") + _, ec, _ = podmanTest.CreatePod(map[string][]string{"--name": {"foobar100"}}) Expect(ec).To(Equal(0)) session = podmanTest.RunTopContainerInPod("", "foobar100") @@ -168,7 +168,7 @@ var _ = Describe("Podman pod stop", func() { }) It("podman pod stop multiple pods with bogus", func() { - _, ec, podid1 := podmanTest.CreatePod("foobar99") + _, ec, podid1 := podmanTest.CreatePod(map[string][]string{"--name": {"foobar99"}}) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", "foobar99") diff --git a/test/e2e/pod_top_test.go b/test/e2e/pod_top_test.go index 9e3570360..e191b44fc 100644 --- a/test/e2e/pod_top_test.go +++ b/test/e2e/pod_top_test.go @@ -47,7 +47,7 @@ var _ = Describe("Podman top", func() { }) It("podman pod top on non-running pod", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) result := podmanTest.Podman([]string{"top", podid}) @@ -56,7 +56,7 @@ var _ = Describe("Podman top", func() { }) It("podman pod top on pod", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.Podman([]string{"run", "-d", "--pod", podid, ALPINE, "top", "-d", "2"}) @@ -73,7 +73,7 @@ var _ = Describe("Podman top", func() { }) It("podman pod top with options", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.Podman([]string{"run", "-d", "--pod", podid, ALPINE, "top", "-d", "2"}) @@ -87,7 +87,7 @@ var _ = Describe("Podman top", func() { }) It("podman pod top on pod invalid options", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.Podman([]string{"run", "-d", "--pod", podid, ALPINE, "top", "-d", "2"}) @@ -104,7 +104,7 @@ var _ = Describe("Podman top", func() { }) It("podman pod top on pod with containers in same pid namespace", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.Podman([]string{"run", "-d", "--pod", podid, ALPINE, "top", "-d", "2"}) @@ -123,7 +123,7 @@ var _ = Describe("Podman top", func() { }) It("podman pod top on pod with containers in different namespace", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.Podman([]string{"run", "-d", "--pod", podid, ALPINE, "top", "-d", "2"}) diff --git a/test/e2e/ps_test.go b/test/e2e/ps_test.go index 13701fc3b..1b3dca7b7 100644 --- a/test/e2e/ps_test.go +++ b/test/e2e/ps_test.go @@ -389,7 +389,7 @@ var _ = Describe("Podman ps", func() { }) It("podman --pod", func() { - _, ec, podid := podmanTest.CreatePod("") + _, ec, podid := podmanTest.CreatePod(nil) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podid) @@ -406,7 +406,7 @@ var _ = Describe("Podman ps", func() { It("podman --pod with a non-empty pod name", func() { podName := "testPodName" - _, ec, podid := podmanTest.CreatePod(podName) + _, ec, podid := podmanTest.CreatePod(map[string][]string{"--name": {podName}}) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("", podName) diff --git a/test/e2e/restart_test.go b/test/e2e/restart_test.go index 584ccd22b..76362dcbf 100644 --- a/test/e2e/restart_test.go +++ b/test/e2e/restart_test.go @@ -197,10 +197,10 @@ var _ = Describe("Podman restart", func() { Expect(restartTime.OutputToStringArray()[1]).To(Not(Equal(startTime.OutputToStringArray()[1]))) }) - It("Podman restart a container in a pod and hosts shouln't duplicated", func() { + It("Podman restart a container in a pod and hosts should not duplicated", func() { // Fixes: https://github.com/containers/podman/issues/8921 - _, ec, _ := podmanTest.CreatePod("foobar99") + _, ec, _ := podmanTest.CreatePod(map[string][]string{"--name": {"foobar99"}}) Expect(ec).To(Equal(0)) session := podmanTest.RunTopContainerInPod("host-restart-test", "foobar99") |