mirror of
https://github.com/containers/podman.git
synced 2025-06-26 12:56:45 +08:00
container prune remove state created, configured
podman container prune should remove containers with state Created, Configured to be compatible with docker Signed-off-by: Qi Wang <qiwan@redhat.com>
This commit is contained in:
@ -1057,7 +1057,8 @@ func (r *LocalRuntime) Prune(ctx context.Context, maxWorkers int, filters []stri
|
|||||||
if c.PodID() != "" {
|
if c.PodID() != "" {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
if state == define.ContainerStateStopped || state == define.ContainerStateExited {
|
if state == define.ContainerStateStopped || state == define.ContainerStateExited ||
|
||||||
|
state == define.ContainerStateCreated || state == define.ContainerStateConfigured {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
return false
|
return false
|
||||||
|
@ -59,6 +59,34 @@ var _ = Describe("Podman prune", func() {
|
|||||||
Expect(podmanTest.NumberOfContainers()).To(Equal(1))
|
Expect(podmanTest.NumberOfContainers()).To(Equal(1))
|
||||||
})
|
})
|
||||||
|
|
||||||
|
It("podman container prune after create containers", func() {
|
||||||
|
create := podmanTest.Podman([]string{"create", "--name", "test", BB})
|
||||||
|
create.WaitWithDefaultTimeout()
|
||||||
|
Expect(create.ExitCode()).To(Equal(0))
|
||||||
|
|
||||||
|
prune := podmanTest.Podman([]string{"container", "prune", "-f"})
|
||||||
|
prune.WaitWithDefaultTimeout()
|
||||||
|
Expect(prune.ExitCode()).To(Equal(0))
|
||||||
|
|
||||||
|
Expect(podmanTest.NumberOfContainers()).To(Equal(0))
|
||||||
|
})
|
||||||
|
|
||||||
|
It("podman container prune after create & init containers", func() {
|
||||||
|
create := podmanTest.Podman([]string{"create", "--name", "test", BB})
|
||||||
|
create.WaitWithDefaultTimeout()
|
||||||
|
Expect(create.ExitCode()).To(Equal(0))
|
||||||
|
|
||||||
|
init := podmanTest.Podman([]string{"init", "test"})
|
||||||
|
init.WaitWithDefaultTimeout()
|
||||||
|
Expect(init.ExitCode()).To(Equal(0))
|
||||||
|
|
||||||
|
prune := podmanTest.Podman([]string{"container", "prune", "-f"})
|
||||||
|
prune.WaitWithDefaultTimeout()
|
||||||
|
Expect(prune.ExitCode()).To(Equal(0))
|
||||||
|
|
||||||
|
Expect(podmanTest.NumberOfContainers()).To(Equal(0))
|
||||||
|
})
|
||||||
|
|
||||||
It("podman image prune none images", func() {
|
It("podman image prune none images", func() {
|
||||||
SkipIfRemote()
|
SkipIfRemote()
|
||||||
podmanTest.BuildImage(pruneImage, "alpine_bash:latest", "true")
|
podmanTest.BuildImage(pruneImage, "alpine_bash:latest", "true")
|
||||||
|
@ -89,7 +89,7 @@ var _ = Describe("Podman volume prune", func() {
|
|||||||
session = podmanTest.Podman([]string{"volume", "ls"})
|
session = podmanTest.Podman([]string{"volume", "ls"})
|
||||||
session.WaitWithDefaultTimeout()
|
session.WaitWithDefaultTimeout()
|
||||||
Expect(session.ExitCode()).To(Equal(0))
|
Expect(session.ExitCode()).To(Equal(0))
|
||||||
Expect(len(session.OutputToStringArray())).To(Equal(2))
|
Expect(len(session.OutputToStringArray())).To(Equal(0))
|
||||||
|
|
||||||
podmanTest.Cleanup()
|
podmanTest.Cleanup()
|
||||||
})
|
})
|
||||||
|
Reference in New Issue
Block a user