mirror of
https://github.com/containers/podman.git
synced 2025-06-26 04:46:57 +08:00
Add support for dangling filter to volumes
The dangling filter determine whether a volume is dangling - IE, it has no containers attached using it. Unlike our other filters, this one is a boolean - must be true or false, not arbitrary values. Signed-off-by: Matthew Heon <matthew.heon@pm.me>
This commit is contained in:
@ -1,6 +1,7 @@
|
||||
package integration
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"os"
|
||||
|
||||
. "github.com/containers/libpod/test/utils"
|
||||
@ -82,4 +83,30 @@ var _ = Describe("Podman volume ls", func() {
|
||||
Expect(len(session.OutputToStringArray())).To(Equal(2))
|
||||
Expect(session.OutputToStringArray()[1]).To(ContainSubstring(volName))
|
||||
})
|
||||
|
||||
It("podman volume ls with --filter dangling", func() {
|
||||
volName1 := "volume1"
|
||||
session := podmanTest.Podman([]string{"volume", "create", volName1})
|
||||
session.WaitWithDefaultTimeout()
|
||||
Expect(session.ExitCode()).To(Equal(0))
|
||||
|
||||
volName2 := "volume2"
|
||||
session2 := podmanTest.Podman([]string{"volume", "create", volName2})
|
||||
session2.WaitWithDefaultTimeout()
|
||||
Expect(session2.ExitCode()).To(Equal(0))
|
||||
|
||||
ctr := podmanTest.Podman([]string{"create", "-v", fmt.Sprintf("%s:/test", volName2), ALPINE, "sh"})
|
||||
ctr.WaitWithDefaultTimeout()
|
||||
Expect(ctr.ExitCode()).To(Equal(0))
|
||||
|
||||
lsNoDangling := podmanTest.Podman([]string{"volume", "ls", "--filter", "dangling=false", "--quiet"})
|
||||
lsNoDangling.WaitWithDefaultTimeout()
|
||||
Expect(lsNoDangling.ExitCode()).To(Equal(0))
|
||||
Expect(lsNoDangling.OutputToString()).To(ContainSubstring(volName2))
|
||||
|
||||
lsDangling := podmanTest.Podman([]string{"volume", "ls", "--filter", "dangling=true", "--quiet"})
|
||||
lsDangling.WaitWithDefaultTimeout()
|
||||
Expect(lsDangling.ExitCode()).To(Equal(0))
|
||||
Expect(lsDangling.OutputToString()).To(ContainSubstring(volName1))
|
||||
})
|
||||
})
|
||||
|
Reference in New Issue
Block a user