From dc22350be5f59f612342bc53ec9689f0b2c2145a Mon Sep 17 00:00:00 2001
From: Matthew Heon <matthew.heon@pm.me>
Date: Wed, 24 Jun 2020 15:55:09 -0400
Subject: Print port mappings in `ps` for ctrs sharing network

In Podman v1.9, we printed port mappings for the container, even
if it shared its network namespace (and thus ports) with another
container. We regressed on this in Podman v2.0, which is fixed
here.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
---
 test/e2e/ps_test.go | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

(limited to 'test')

diff --git a/test/e2e/ps_test.go b/test/e2e/ps_test.go
index 0dc8e01af..cfc0a415e 100644
--- a/test/e2e/ps_test.go
+++ b/test/e2e/ps_test.go
@@ -449,4 +449,21 @@ var _ = Describe("Podman ps", func() {
 		Expect(len(output)).To(Equal(1))
 		Expect(output[0]).To(Equal(ctrName))
 	})
+
+	It("podman ps test with port shared with pod", func() {
+		podName := "testPod"
+		pod := podmanTest.Podman([]string{"pod", "create", "-p", "8080:80", "--name", podName})
+		pod.WaitWithDefaultTimeout()
+		Expect(pod.ExitCode()).To(Equal(0))
+
+		ctrName := "testCtr"
+		session := podmanTest.Podman([]string{"run", "--name", ctrName, "-dt", "--pod", podName, ALPINE, "top"})
+		session.WaitWithDefaultTimeout()
+		Expect(session.ExitCode()).To(Equal(0))
+
+		ps := podmanTest.Podman([]string{"ps", "--filter", fmt.Sprintf("name=%s", ctrName), "--format", "{{.Ports}}"})
+		ps.WaitWithDefaultTimeout()
+		Expect(ps.ExitCode()).To(Equal(0))
+		Expect(ps.OutputToString()).To(ContainSubstring("0.0.0.0:8080->80/tcp"))
+	})
 })
-- 
cgit v1.2.3-54-g00ecf