mirror of
https://github.com/containers/podman.git
synced 2025-06-21 01:19:15 +08:00
enable volume integration tests
enabled integration tests for volumes. there are two exceptions that still need work because of something not yet implemented. also, add code to deal with the fact that containers conf appears to set a local volume driver where it used to be simply blank. Signed-off-by: Brent Baude <bbaude@redhat.com>
This commit is contained in:
@ -2,6 +2,7 @@ package volumes
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"html/template"
|
||||
"io"
|
||||
"os"
|
||||
@ -57,6 +58,9 @@ func list(cmd *cobra.Command, args []string) error {
|
||||
if cliOpts.Quiet && cmd.Flag("format").Changed {
|
||||
return errors.New("quiet and format flags cannot be used together")
|
||||
}
|
||||
if len(cliOpts.Filter) > 0 {
|
||||
lsOpts.Filter = make(map[string][]string)
|
||||
}
|
||||
for _, f := range cliOpts.Filter {
|
||||
filterSplit := strings.Split(f, "=")
|
||||
if len(filterSplit) < 2 {
|
||||
@ -68,6 +72,10 @@ func list(cmd *cobra.Command, args []string) error {
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if cliOpts.Format == "json" {
|
||||
return outputJSON(responses)
|
||||
}
|
||||
|
||||
if len(responses) < 1 {
|
||||
return nil
|
||||
}
|
||||
@ -99,3 +107,12 @@ func list(cmd *cobra.Command, args []string) error {
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func outputJSON(vols []*entities.VolumeListReport) error {
|
||||
b, err := json.MarshalIndent(vols, "", " ")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
fmt.Println(string(b))
|
||||
return nil
|
||||
}
|
||||
|
@ -1400,8 +1400,13 @@ func WithVolumeDriver(driver string) VolumeCreateOption {
|
||||
if volume.valid {
|
||||
return define.ErrVolumeFinalized
|
||||
}
|
||||
|
||||
// only local driver is possible rn
|
||||
if driver != define.VolumeDriverLocal {
|
||||
return define.ErrNotImplemented
|
||||
|
||||
}
|
||||
volume.config.Driver = define.VolumeDriverLocal
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -222,7 +222,6 @@ var _ = Describe("Podman run with volumes", func() {
|
||||
})
|
||||
|
||||
It("podman run with tmpfs named volume mounts and unmounts", func() {
|
||||
Skip(v2fail)
|
||||
SkipIfRootless()
|
||||
volName := "testvol"
|
||||
mkVolume := podmanTest.Podman([]string{"volume", "create", "--opt", "type=tmpfs", "--opt", "device=tmpfs", "--opt", "o=nodev", "testvol"})
|
||||
@ -279,7 +278,6 @@ var _ = Describe("Podman run with volumes", func() {
|
||||
})
|
||||
|
||||
It("podman named volume copyup", func() {
|
||||
Skip(v2fail)
|
||||
baselineSession := podmanTest.Podman([]string{"run", "--rm", "-t", "-i", ALPINE, "ls", "/etc/apk/"})
|
||||
baselineSession.WaitWithDefaultTimeout()
|
||||
Expect(baselineSession.ExitCode()).To(Equal(0))
|
||||
@ -311,7 +309,6 @@ var _ = Describe("Podman run with volumes", func() {
|
||||
})
|
||||
|
||||
It("podman run with anonymous volume", func() {
|
||||
Skip(v2fail)
|
||||
list1 := podmanTest.Podman([]string{"volume", "list", "--quiet"})
|
||||
list1.WaitWithDefaultTimeout()
|
||||
Expect(list1.ExitCode()).To(Equal(0))
|
||||
@ -330,7 +327,6 @@ var _ = Describe("Podman run with volumes", func() {
|
||||
})
|
||||
|
||||
It("podman rm -v removes anonymous volume", func() {
|
||||
Skip(v2fail)
|
||||
list1 := podmanTest.Podman([]string{"volume", "list", "--quiet"})
|
||||
list1.WaitWithDefaultTimeout()
|
||||
Expect(list1.ExitCode()).To(Equal(0))
|
||||
@ -359,7 +355,6 @@ var _ = Describe("Podman run with volumes", func() {
|
||||
})
|
||||
|
||||
It("podman rm -v retains named volume", func() {
|
||||
Skip(v2fail)
|
||||
list1 := podmanTest.Podman([]string{"volume", "list", "--quiet"})
|
||||
list1.WaitWithDefaultTimeout()
|
||||
Expect(list1.ExitCode()).To(Equal(0))
|
||||
@ -398,7 +393,6 @@ var _ = Describe("Podman run with volumes", func() {
|
||||
})
|
||||
|
||||
It("podman mount with invalid option fails", func() {
|
||||
Skip(v2fail)
|
||||
volName := "testVol"
|
||||
volCreate := podmanTest.Podman([]string{"volume", "create", "--opt", "type=tmpfs", "--opt", "device=tmpfs", "--opt", "o=invalid", volName})
|
||||
volCreate.WaitWithDefaultTimeout()
|
||||
@ -410,7 +404,6 @@ var _ = Describe("Podman run with volumes", func() {
|
||||
})
|
||||
|
||||
It("Podman fix for CVE-2020-1726", func() {
|
||||
Skip(v2fail)
|
||||
volName := "testVol"
|
||||
volCreate := podmanTest.Podman([]string{"volume", "create", volName})
|
||||
volCreate.WaitWithDefaultTimeout()
|
||||
|
@ -17,7 +17,6 @@ var _ = Describe("Podman volume create", func() {
|
||||
)
|
||||
|
||||
BeforeEach(func() {
|
||||
Skip(v2fail)
|
||||
tempdir, err = CreateTempDirInTempDir()
|
||||
if err != nil {
|
||||
os.Exit(1)
|
||||
|
@ -17,7 +17,6 @@ var _ = Describe("Podman volume inspect", func() {
|
||||
)
|
||||
|
||||
BeforeEach(func() {
|
||||
Skip(v2fail)
|
||||
tempdir, err = CreateTempDirInTempDir()
|
||||
if err != nil {
|
||||
os.Exit(1)
|
||||
|
@ -16,7 +16,6 @@ var _ = Describe("Podman volume ls", func() {
|
||||
)
|
||||
|
||||
BeforeEach(func() {
|
||||
Skip(v2fail)
|
||||
tempdir, err = CreateTempDirInTempDir()
|
||||
if err != nil {
|
||||
os.Exit(1)
|
||||
@ -56,6 +55,7 @@ var _ = Describe("Podman volume ls", func() {
|
||||
})
|
||||
|
||||
It("podman ls volume with Go template", func() {
|
||||
Skip(v2fail)
|
||||
session := podmanTest.Podman([]string{"volume", "create", "myvol"})
|
||||
session.WaitWithDefaultTimeout()
|
||||
Expect(session.ExitCode()).To(Equal(0))
|
||||
|
@ -18,7 +18,6 @@ var _ = Describe("Podman volume prune", func() {
|
||||
)
|
||||
|
||||
BeforeEach(func() {
|
||||
Skip(v2fail)
|
||||
tempdir, err = CreateTempDirInTempDir()
|
||||
if err != nil {
|
||||
os.Exit(1)
|
||||
@ -66,6 +65,7 @@ var _ = Describe("Podman volume prune", func() {
|
||||
})
|
||||
|
||||
It("podman system prune --volume", func() {
|
||||
Skip(v2fail)
|
||||
session := podmanTest.Podman([]string{"volume", "create"})
|
||||
session.WaitWithDefaultTimeout()
|
||||
Expect(session.ExitCode()).To(Equal(0))
|
||||
|
@ -16,7 +16,6 @@ var _ = Describe("Podman volume rm", func() {
|
||||
)
|
||||
|
||||
BeforeEach(func() {
|
||||
Skip(v2fail)
|
||||
tempdir, err = CreateTempDirInTempDir()
|
||||
if err != nil {
|
||||
os.Exit(1)
|
||||
|
Reference in New Issue
Block a user