Fixes podman pod create --pod-id-file #6292
Prints pod id to file and adds relevant test case Signed-off-by: Sujil02 <sushah@redhat.com>
This commit is contained in:
parent
09f8f14b4f
commit
9415670722
|
|
@ -3,6 +3,7 @@ package pods
|
|||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"strings"
|
||||
|
||||
|
|
@ -147,6 +148,11 @@ func create(cmd *cobra.Command, args []string) error {
|
|||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if len(podIDFile) > 0 {
|
||||
if err = ioutil.WriteFile(podIDFile, []byte(response.Id), 0644); err != nil {
|
||||
return errors.Wrapf(err, "failed to write pod ID to file %q", podIDFile)
|
||||
}
|
||||
}
|
||||
fmt.Println(response.Id)
|
||||
return nil
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,7 +2,9 @@ package integration
|
|||
|
||||
import (
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"strings"
|
||||
|
||||
. "github.com/containers/libpod/test/utils"
|
||||
|
|
@ -284,4 +286,26 @@ var _ = Describe("Podman pod create", func() {
|
|||
podCreate.WaitWithDefaultTimeout()
|
||||
Expect(podCreate.ExitCode()).To(Equal(125))
|
||||
})
|
||||
|
||||
It("podman create pod and print id to external file", func() {
|
||||
// Switch to temp dir and restore it afterwards
|
||||
cwd, err := os.Getwd()
|
||||
Expect(err).To(BeNil())
|
||||
Expect(os.Chdir(os.TempDir())).To(BeNil())
|
||||
targetPath := filepath.Join(os.TempDir(), "dir")
|
||||
Expect(os.MkdirAll(targetPath, 0755)).To(BeNil())
|
||||
targetFile := filepath.Join(targetPath, "idFile")
|
||||
defer Expect(os.RemoveAll(targetFile)).To(BeNil())
|
||||
defer Expect(os.Chdir(cwd)).To(BeNil())
|
||||
|
||||
session := podmanTest.Podman([]string{"pod", "create", "--name=abc", "--pod-id-file", targetFile})
|
||||
session.WaitWithDefaultTimeout()
|
||||
Expect(session.ExitCode()).To(Equal(0))
|
||||
|
||||
id, _ := ioutil.ReadFile(targetFile)
|
||||
check := podmanTest.Podman([]string{"pod", "inspect", "abc"})
|
||||
check.WaitWithDefaultTimeout()
|
||||
data := check.InspectPodToJSON()
|
||||
Expect(data.ID).To(Equal(string(id)))
|
||||
})
|
||||
})
|
||||
|
|
|
|||
Loading…
Reference in New Issue