Skip to content

Commit

Permalink
test/e2e: fix Cleanup()
Browse files Browse the repository at this point in the history
Only check exit codes last, othwerwise in case of errors it will return
early and miss other commands.
Also explicitly stop before rm, rm is not working in all cases (containers#18180).

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
  • Loading branch information
Luap99 committed Apr 21, 2023
1 parent 597d0f2 commit 85a556f
Showing 1 changed file with 11 additions and 4 deletions.
15 changes: 11 additions & 4 deletions test/e2e/common_test.go
Expand Up @@ -569,6 +569,11 @@ func (p *PodmanTestIntegration) Quadlet(args []string, sourceDir string) *Podman

// Cleanup cleans up the temporary store
func (p *PodmanTestIntegration) Cleanup() {
// first stop everything, rm -fa is unreliable
// https://github.com/containers/podman/issues/18180
stop := p.Podman([]string{"stop", "--all", "-t", "0"})
stop.WaitWithDefaultTimeout()

// Remove all pods...
podrm := p.Podman([]string{"pod", "rm", "-fa", "-t", "0"})
podrm.WaitWithDefaultTimeout()
Expand All @@ -577,16 +582,18 @@ func (p *PodmanTestIntegration) Cleanup() {
rmall := p.Podman([]string{"rm", "-fa", "-t", "0"})
rmall.WaitWithDefaultTimeout()

// make sure to only check exit code after both commands ran otherwise we leak when pod rm fails
Expect(podrm).To(Exit(0))
Expect(rmall).To(Exit(0))

p.StopRemoteService()
// Nuke tempdir
p.removeCache(p.TempDir)

// Clean up the registries configuration file ENV variable set in Create
resetRegistriesConfigEnv()

// Make sure to only check exit codes after all cleanup is done.
// An error would cause it to stop and return early otherwise.
Expect(stop).To(Exit(0), "command: %v\nstdout: %s\nstderr: %s", stop.Command.Args, stop.OutputToString(), stop.ErrorToString())
Expect(podrm).To(Exit(0), "command: %v\nstdout: %s\nstderr: %s", podrm.Command.Args, podrm.OutputToString(), podrm.ErrorToString())
Expect(rmall).To(Exit(0), "command: %v\nstdout: %s\nstderr: %s", rmall.Command.Args, rmall.OutputToString(), rmall.ErrorToString())
}

// CleanupVolume cleans up the temporary store
Expand Down

0 comments on commit 85a556f

Please sign in to comment.