diff options
author | baude <bbaude@redhat.com> | 2018-01-10 07:51:02 -0600 |
---|---|---|
committer | Atomic Bot <atomic-devel@projectatomic.io> | 2018-01-11 21:27:26 +0000 |
commit | 9adcb85929ac9536e967907c6a6057046a98ab16 (patch) | |
tree | 88aeff6abd88055048f9d157cde67a01cbd2e2a3 /cmd/podman | |
parent | dd0d35deb098b63f8c5be7ef9d8d63c16760221b (diff) | |
download | podman-9adcb85929ac9536e967907c6a6057046a98ab16.tar.gz podman-9adcb85929ac9536e967907c6a6057046a98ab16.tar.bz2 podman-9adcb85929ac9536e967907c6a6057046a98ab16.zip |
podman run container id to file
podman run --cidfile /tmp/foo writes the container's id
to a file.
Signed-off-by: baude <bbaude@redhat.com>
Closes: #205
Approved by: rhatdan
Diffstat (limited to 'cmd/podman')
-rw-r--r-- | cmd/podman/create.go | 15 | ||||
-rw-r--r-- | cmd/podman/run.go | 12 |
2 files changed, 21 insertions, 6 deletions
diff --git a/cmd/podman/create.go b/cmd/podman/create.go index ce06ac51b..076e8c56e 100644 --- a/cmd/podman/create.go +++ b/cmd/podman/create.go @@ -154,6 +154,12 @@ func createCmd(c *cli.Context) error { return err } + if c.String("cidfile") != "" { + if err := libpod.WriteFile("", c.String("cidfile")); err != nil { + return errors.Wrapf(err, "unable to write cidfile %s", c.String("cidfile")) + } + } + runtime, err := getRuntime(c) if err != nil { return errors.Wrapf(err, "error creating libpod runtime") @@ -196,11 +202,12 @@ func createCmd(c *cli.Context) error { logrus.Debug("new container created ", ctr.ID()) if c.String("cidfile") != "" { - libpod.WriteFile(ctr.ID(), c.String("cidfile")) - } else { - fmt.Printf("%s\n", ctr.ID()) + err := libpod.WriteFile(ctr.ID(), c.String("cidfile")) + if err != nil { + logrus.Error(err) + } } - + fmt.Printf("%s\n", ctr.ID()) return nil } diff --git a/cmd/podman/run.go b/cmd/podman/run.go index 07af4a6a2..d9bc00b78 100644 --- a/cmd/podman/run.go +++ b/cmd/podman/run.go @@ -29,6 +29,13 @@ func runCmd(c *cli.Context) error { if err := validateFlags(c, createFlags); err != nil { return err } + + if c.String("cidfile") != "" { + if err := libpod.WriteFile("", c.String("cidfile")); err != nil { + return errors.Wrapf(err, "unable to write cidfile %s", c.String("cidfile")) + } + } + runtime, err := getRuntime(c) if err != nil { return errors.Wrapf(err, "error creating libpod runtime") @@ -84,8 +91,9 @@ func runCmd(c *cli.Context) error { logrus.Debug("new container created ", ctr.ID()) if c.String("cidfile") != "" { - libpod.WriteFile(ctr.ID(), c.String("cidfile")) - return nil + if err := libpod.WriteFile(ctr.ID(), c.String("cidfile")); err != nil { + logrus.Error(err) + } } // Create a bool channel to track that the console socket attach |