diff options
author | Giuseppe Scrivano <gscrivan@redhat.com> | 2019-03-20 12:45:04 +0100 |
---|---|---|
committer | Giuseppe Scrivano <gscrivan@redhat.com> | 2019-03-20 23:22:22 +0100 |
commit | a53c768409db7cf18c20eab73a24bd193493c9ce (patch) | |
tree | 5ed2a7da8757e1a34fe9b52dcfd4b17aaccf3e8d | |
parent | c230f0c693134830b3df60a8dc37770848a6f5e2 (diff) | |
download | podman-a53c768409db7cf18c20eab73a24bd193493c9ce.tar.gz podman-a53c768409db7cf18c20eab73a24bd193493c9ce.tar.bz2 podman-a53c768409db7cf18c20eab73a24bd193493c9ce.zip |
podman: do not split --env on comma
if --env "a=b,c" is used, do not split into a=b and c=.
Closes: https://github.com/containers/libpod/issues/2712
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
-rw-r--r-- | cmd/podman/common.go | 2 | ||||
-rw-r--r-- | cmd/podman/exec.go | 2 | ||||
-rw-r--r-- | cmd/podman/shared/create.go | 2 | ||||
-rw-r--r-- | test/e2e/run_test.go | 4 |
4 files changed, 5 insertions, 5 deletions
diff --git a/cmd/podman/common.go b/cmd/podman/common.go index 43dfdb837..8b42ed673 100644 --- a/cmd/podman/common.go +++ b/cmd/podman/common.go @@ -264,7 +264,7 @@ func getCreateFlags(c *cliconfig.PodmanCommand) { "entrypoint", "", "Overwrite the default ENTRYPOINT of the image", ) - createFlags.StringSliceP( + createFlags.StringArrayP( "env", "e", []string{}, "Set environment variables in container", ) diff --git a/cmd/podman/exec.go b/cmd/podman/exec.go index aa81edf56..a6afbf75a 100644 --- a/cmd/podman/exec.go +++ b/cmd/podman/exec.go @@ -41,7 +41,7 @@ func init() { execCommand.SetUsageTemplate(UsageTemplate()) flags := execCommand.Flags() flags.SetInterspersed(false) - flags.StringSliceVarP(&execCommand.Env, "env", "e", []string{}, "Set environment variables") + flags.StringArrayVarP(&execCommand.Env, "env", "e", []string{}, "Set environment variables") flags.BoolVarP(&execCommand.Interfactive, "interactive", "i", false, "Not supported. All exec commands are interactive by default") flags.BoolVarP(&execCommand.Latest, "latest", "l", false, "Act on the latest container podman is aware of") flags.BoolVar(&execCommand.Privileged, "privileged", false, "Give the process extended Linux capabilities inside the container. The default is false") diff --git a/cmd/podman/shared/create.go b/cmd/podman/shared/create.go index 32a80e9f9..55eb3ce83 100644 --- a/cmd/podman/shared/create.go +++ b/cmd/podman/shared/create.go @@ -499,7 +499,7 @@ func ParseCreateOpts(ctx context.Context, c *cliconfig.PodmanCommand, runtime *l } } } - if err := parse.ReadKVStrings(env, c.StringSlice("env-file"), c.StringSlice("env")); err != nil { + if err := parse.ReadKVStrings(env, c.StringSlice("env-file"), c.StringArray("env")); err != nil { return nil, errors.Wrapf(err, "unable to process environment variables") } diff --git a/test/e2e/run_test.go b/test/e2e/run_test.go index 9ab4ae563..b0dc66707 100644 --- a/test/e2e/run_test.go +++ b/test/e2e/run_test.go @@ -152,10 +152,10 @@ var _ = Describe("Podman run", func() { }) It("podman run environment test", func() { - session := podmanTest.Podman([]string{"run", "--rm", "--env", "FOO=BAR", ALPINE, "printenv", "FOO"}) + session := podmanTest.Podman([]string{"run", "--rm", "--env", "FOO=BAR,BAZ", ALPINE, "printenv", "FOO"}) session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - match, _ := session.GrepString("BAR") + match, _ := session.GrepString("BAR,BAZ") Expect(match).Should(BeTrue()) session = podmanTest.Podman([]string{"run", "--rm", "--env", "PATH=/bin", ALPINE, "printenv", "PATH"}) |