From 163d81cc0dd0139eb14dfcd6595c9eafb40472b2 Mon Sep 17 00:00:00 2001 From: cdoern Date: Thu, 30 Sep 2021 14:12:30 -0400 Subject: Pod Events Logging Fix on create, libpod was only creating a new event if the pod had an infra container. now, pod creation triggers a new pod event with or without infra Signed-off-by: cdoern --- pkg/specgen/generate/pod_create.go | 6 ++++++ test/e2e/events_test.go | 13 +++++++++++++ 2 files changed, 19 insertions(+) diff --git a/pkg/specgen/generate/pod_create.go b/pkg/specgen/generate/pod_create.go index e523aef42..a4027eae7 100644 --- a/pkg/specgen/generate/pod_create.go +++ b/pkg/specgen/generate/pod_create.go @@ -59,6 +59,12 @@ func MakePod(p *entities.PodSpec, rt *libpod.Runtime) (*libpod.Pod, error) { if err != nil { return nil, err } + } else { + // SavePod is used to save the pod state and trigger a create event even if infra is not created + err := rt.SavePod(pod) + if err != nil { + return nil, err + } } return pod, nil } diff --git a/test/e2e/events_test.go b/test/e2e/events_test.go index 46ea10c56..ee0b8761a 100644 --- a/test/e2e/events_test.go +++ b/test/e2e/events_test.go @@ -199,4 +199,17 @@ var _ = Describe("Podman events", func() { wg.Wait() }) + + It("podman events pod creation", func() { + create := podmanTest.Podman([]string{"pod", "create", "--infra=false", "--name", "foobarpod"}) + create.WaitWithDefaultTimeout() + Expect(create).Should(Exit(0)) + id := create.OutputToString() + result := podmanTest.Podman([]string{"events", "--stream=false", "--filter", "pod=" + id}) + result.WaitWithDefaultTimeout() + Expect(result).Should(Exit(0)) + Expect(result.OutputToStringArray()).To(HaveLen(1)) + Expect(result.OutputToString()).To(ContainSubstring("create")) + }) + }) -- cgit v1.2.3-54-g00ecf