github.com/AbhinandanKurakure/podman/v3@v3.4.10/test/e2e/volume_prune_test.go (about) 1 package integration 2 3 import ( 4 "os" 5 6 . "github.com/containers/podman/v3/test/utils" 7 . "github.com/onsi/ginkgo" 8 . "github.com/onsi/gomega" 9 . "github.com/onsi/gomega/gexec" 10 ) 11 12 var _ = Describe("Podman volume prune", func() { 13 var ( 14 tempdir string 15 err error 16 podmanTest *PodmanTestIntegration 17 ) 18 19 BeforeEach(func() { 20 tempdir, err = CreateTempDirInTempDir() 21 if err != nil { 22 os.Exit(1) 23 } 24 podmanTest = PodmanTestCreate(tempdir) 25 podmanTest.Setup() 26 podmanTest.SeedImages() 27 }) 28 29 AfterEach(func() { 30 podmanTest.CleanupVolume() 31 f := CurrentGinkgoTestDescription() 32 processTestResult(f) 33 34 }) 35 36 It("podman prune volume", func() { 37 session := podmanTest.Podman([]string{"volume", "create"}) 38 session.WaitWithDefaultTimeout() 39 Expect(session).Should(Exit(0)) 40 41 session = podmanTest.Podman([]string{"volume", "create"}) 42 session.WaitWithDefaultTimeout() 43 Expect(session).Should(Exit(0)) 44 45 session = podmanTest.Podman([]string{"create", "-v", "myvol:/myvol", ALPINE, "ls"}) 46 session.WaitWithDefaultTimeout() 47 Expect(session).Should(Exit(0)) 48 49 session = podmanTest.Podman([]string{"volume", "ls"}) 50 session.WaitWithDefaultTimeout() 51 Expect(session).Should(Exit(0)) 52 Expect(len(session.OutputToStringArray())).To(Equal(4)) 53 54 session = podmanTest.Podman([]string{"volume", "prune", "--force"}) 55 session.WaitWithDefaultTimeout() 56 Expect(session).Should(Exit(0)) 57 58 session = podmanTest.Podman([]string{"volume", "ls"}) 59 session.WaitWithDefaultTimeout() 60 Expect(session).Should(Exit(0)) 61 Expect(len(session.OutputToStringArray())).To(Equal(2)) 62 63 podmanTest.Cleanup() 64 }) 65 66 It("podman prune volume --filter until", func() { 67 session := podmanTest.Podman([]string{"volume", "create", "--label", "label1=value1", "myvol1"}) 68 session.WaitWithDefaultTimeout() 69 Expect(session).Should(Exit(0)) 70 71 session = podmanTest.Podman([]string{"volume", "ls"}) 72 session.WaitWithDefaultTimeout() 73 Expect(session).Should(Exit(0)) 74 Expect(len(session.OutputToStringArray())).To(Equal(2)) 75 76 session = podmanTest.Podman([]string{"volume", "prune", "--force", "--filter", "until=50"}) 77 session.WaitWithDefaultTimeout() 78 Expect(session).Should(Exit(0)) 79 80 session = podmanTest.Podman([]string{"volume", "ls"}) 81 session.WaitWithDefaultTimeout() 82 Expect(session).Should(Exit(0)) 83 Expect(len(session.OutputToStringArray())).To(Equal(2)) 84 85 session = podmanTest.Podman([]string{"volume", "prune", "--force", "--filter", "until=5000000000"}) 86 session.WaitWithDefaultTimeout() 87 Expect(session).Should(Exit(0)) 88 89 session = podmanTest.Podman([]string{"volume", "ls"}) 90 session.WaitWithDefaultTimeout() 91 Expect(session).Should(Exit(0)) 92 Expect(len(session.OutputToStringArray())).To(Equal(0)) 93 94 podmanTest.Cleanup() 95 }) 96 97 It("podman prune volume --filter", func() { 98 session := podmanTest.Podman([]string{"volume", "create", "--label", "label1=value1", "myvol1"}) 99 session.WaitWithDefaultTimeout() 100 Expect(session).Should(Exit(0)) 101 102 session = podmanTest.Podman([]string{"volume", "create", "--label", "sharedlabel1=slv1", "myvol2"}) 103 session.WaitWithDefaultTimeout() 104 Expect(session).Should(Exit(0)) 105 106 session = podmanTest.Podman([]string{"volume", "create", "--label", "sharedlabel1=slv2", "myvol3"}) 107 session.WaitWithDefaultTimeout() 108 Expect(session).Should(Exit(0)) 109 110 session = podmanTest.Podman([]string{"volume", "create", "--label", "sharedlabel1", "myvol4"}) 111 session.WaitWithDefaultTimeout() 112 Expect(session).Should(Exit(0)) 113 114 session = podmanTest.Podman([]string{"create", "-v", "myvol5:/myvol5", ALPINE, "ls"}) 115 session.WaitWithDefaultTimeout() 116 Expect(session).Should(Exit(0)) 117 118 session = podmanTest.Podman([]string{"create", "-v", "myvol6:/myvol6", ALPINE, "ls"}) 119 session.WaitWithDefaultTimeout() 120 Expect(session).Should(Exit(0)) 121 122 session = podmanTest.Podman([]string{"volume", "ls"}) 123 session.WaitWithDefaultTimeout() 124 Expect(session).Should(Exit(0)) 125 Expect(len(session.OutputToStringArray())).To(Equal(7)) 126 127 session = podmanTest.Podman([]string{"volume", "prune", "--force", "--filter", "label=label1=value1"}) 128 session.WaitWithDefaultTimeout() 129 Expect(session).Should(Exit(0)) 130 131 session = podmanTest.Podman([]string{"volume", "ls"}) 132 session.WaitWithDefaultTimeout() 133 Expect(session).Should(Exit(0)) 134 Expect(len(session.OutputToStringArray())).To(Equal(6)) 135 136 session = podmanTest.Podman([]string{"volume", "prune", "--force", "--filter", "label=sharedlabel1=slv1"}) 137 session.WaitWithDefaultTimeout() 138 Expect(session).Should(Exit(0)) 139 140 session = podmanTest.Podman([]string{"volume", "ls"}) 141 session.WaitWithDefaultTimeout() 142 Expect(session).Should(Exit(0)) 143 Expect(len(session.OutputToStringArray())).To(Equal(5)) 144 145 session = podmanTest.Podman([]string{"volume", "prune", "--force", "--filter", "label=sharedlabel1"}) 146 session.WaitWithDefaultTimeout() 147 Expect(session).Should(Exit(0)) 148 149 session = podmanTest.Podman([]string{"volume", "ls"}) 150 session.WaitWithDefaultTimeout() 151 Expect(session).Should(Exit(0)) 152 Expect(len(session.OutputToStringArray())).To(Equal(3)) 153 154 podmanTest.Cleanup() 155 }) 156 157 It("podman system prune --volume", func() { 158 session := podmanTest.Podman([]string{"volume", "create"}) 159 session.WaitWithDefaultTimeout() 160 Expect(session).Should(Exit(0)) 161 162 session = podmanTest.Podman([]string{"volume", "create"}) 163 session.WaitWithDefaultTimeout() 164 Expect(session).Should(Exit(0)) 165 166 session = podmanTest.Podman([]string{"create", "-v", "myvol:/myvol", ALPINE, "ls"}) 167 session.WaitWithDefaultTimeout() 168 Expect(session).Should(Exit(0)) 169 170 session = podmanTest.Podman([]string{"volume", "ls"}) 171 session.WaitWithDefaultTimeout() 172 Expect(session).Should(Exit(0)) 173 Expect(len(session.OutputToStringArray())).To(Equal(4)) 174 175 session = podmanTest.Podman([]string{"system", "prune", "--force", "--volumes"}) 176 session.WaitWithDefaultTimeout() 177 Expect(session).Should(Exit(0)) 178 179 session = podmanTest.Podman([]string{"volume", "ls"}) 180 session.WaitWithDefaultTimeout() 181 Expect(session).Should(Exit(0)) 182 Expect(len(session.OutputToStringArray())).To(Equal(0)) 183 184 podmanTest.Cleanup() 185 }) 186 })