summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmd/podman/runlabel.go2
-rw-r--r--docs/libpod.conf.5.md2
-rw-r--r--libpod/container_commit.go2
-rw-r--r--test/e2e/commit_test.go20
4 files changed, 23 insertions, 3 deletions
diff --git a/cmd/podman/runlabel.go b/cmd/podman/runlabel.go
index c426817de..e87b88992 100644
--- a/cmd/podman/runlabel.go
+++ b/cmd/podman/runlabel.go
@@ -152,7 +152,7 @@ func runlabelCmd(c *cliconfig.RunlabelValues) error {
return err
}
if !c.Quiet {
- fmt.Printf("command: %s\n", strings.Join(cmd, " "))
+ fmt.Printf("command: %s\n", strings.Join(append([]string{os.Args[0]}, cmd[1:]...), " "))
if c.Display {
return nil
}
diff --git a/docs/libpod.conf.5.md b/docs/libpod.conf.5.md
index 2f0b3f303..cb08f0eb0 100644
--- a/docs/libpod.conf.5.md
+++ b/docs/libpod.conf.5.md
@@ -34,7 +34,7 @@ libpod to manage containers.
Each `*.json` file in the path configures a hook for Podman containers. For more details on the syntax of the JSON files and the semantics of hook injection, see `oci-hooks(5)`. Podman and libpod currently support both the 1.0.0 and 0.1.0 hook schemas, although the 0.1.0 schema is deprecated.
- Paths listed later in the array higher precedence (`oci-hooks(5)` discusses directory precedence).
+ Paths listed later in the array have higher precedence (`oci-hooks(5)` discusses directory precedence).
For the annotation conditions, libpod uses any annotations set in the generated OCI configuration.
diff --git a/libpod/container_commit.go b/libpod/container_commit.go
index ae04f67bb..739fcd80e 100644
--- a/libpod/container_commit.go
+++ b/libpod/container_commit.go
@@ -99,7 +99,7 @@ func (c *Container) Commit(ctx context.Context, destImage string, options Contai
// Should we store the ENV we actually want in the spec separately?
if c.config.Spec.Process != nil {
for _, e := range c.config.Spec.Process.Env {
- splitEnv := strings.Split(e, "=")
+ splitEnv := strings.SplitN(e, "=", 2)
importBuilder.SetEnv(splitEnv[0], splitEnv[1])
}
}
diff --git a/test/e2e/commit_test.go b/test/e2e/commit_test.go
index 3ece4887e..bf20ac999 100644
--- a/test/e2e/commit_test.go
+++ b/test/e2e/commit_test.go
@@ -194,4 +194,24 @@ var _ = Describe("Podman commit", func() {
Expect(r.ExitCode()).To(Equal(0))
})
+ It("podman commit container check env variables", func() {
+ s := podmanTest.Podman([]string{"run", "--name", "test1", "-e", "TEST=1=1-01=9.01", "-it", "alpine", "true"})
+ s.WaitWithDefaultTimeout()
+ Expect(s.ExitCode()).To(Equal(0))
+
+ c := podmanTest.Podman([]string{"commit", "test1", "newimage"})
+ c.WaitWithDefaultTimeout()
+ Expect(c.ExitCode()).To(Equal(0))
+
+ inspect := podmanTest.Podman([]string{"inspect", "newimage"})
+ inspect.WaitWithDefaultTimeout()
+ Expect(inspect.ExitCode()).To(Equal(0))
+ image := inspect.InspectImageJSON()
+
+ envMap := make(map[string]bool)
+ for _, v := range image[0].Config.Env {
+ envMap[v] = true
+ }
+ Expect(envMap["TEST=1=1-01=9.01"]).To(BeTrue())
+ })
})