mirror of
https://github.com/containers/podman.git
synced 2025-07-15 03:02:52 +08:00
remote load: check if input is directory
The remote client does not support loading directories yet. To prevent confusing error messages and to make the behaviour more explicit, check if the input points to a directory and throw an error if needed. Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
This commit is contained in:
@ -123,7 +123,7 @@ var _ = Describe("Podman load", func() {
|
||||
})
|
||||
|
||||
It("podman load directory", func() {
|
||||
SkipIfRemote("FIXME: Remote Load is broken.")
|
||||
SkipIfRemote("Remote does not support loading directories")
|
||||
outdir := filepath.Join(podmanTest.TempDir, "alpine")
|
||||
|
||||
save := podmanTest.PodmanNoCache([]string{"save", "--format", "oci-dir", "-o", outdir, ALPINE})
|
||||
@ -139,6 +139,22 @@ var _ = Describe("Podman load", func() {
|
||||
Expect(result.ExitCode()).To(Equal(0))
|
||||
})
|
||||
|
||||
It("podman-remote load directory", func() {
|
||||
// Remote-only test looking for the specific remote error
|
||||
// message when trying to load a directory.
|
||||
if !IsRemote() {
|
||||
Skip("Remote only test")
|
||||
}
|
||||
|
||||
result := podmanTest.Podman([]string{"load", "-i", podmanTest.TempDir})
|
||||
result.WaitWithDefaultTimeout()
|
||||
Expect(result.ExitCode()).To(Equal(125))
|
||||
|
||||
errMsg := fmt.Sprintf("remote client supports archives only but %q is a directory", podmanTest.TempDir)
|
||||
found, _ := result.ErrorGrepString(errMsg)
|
||||
Expect(found).Should(BeTrue())
|
||||
})
|
||||
|
||||
It("podman load bogus file", func() {
|
||||
save := podmanTest.PodmanNoCache([]string{"load", "-i", "foobar.tar"})
|
||||
save.WaitWithDefaultTimeout()
|
||||
|
Reference in New Issue
Block a user