podman: split env variables in env and overrides

There are three different priorities for applying env variables:

1) environment/config file environment variables
2) image's config
3) user overrides (--env)

The third kind are known to the client, while the default config and image's
config is handled by the backend.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
This commit is contained in:
Giuseppe Scrivano
2020-05-06 13:20:44 +02:00
committed by Daniel J Walsh
parent 1d3cdf9a46
commit 99bdafba99
11 changed files with 46 additions and 29 deletions

View File

@ -91,7 +91,8 @@ var _ = Describe("Podman run", func() {
Expect(match).Should(BeTrue())
})
It("podman run --host-env environment test", func() {
It("podman run --env-host environment test", func() {
SkipIfRemote()
env := append(os.Environ(), "FOO=BAR")
session := podmanTest.PodmanAsUser([]string{"run", "--rm", "--env-host", ALPINE, "/bin/printenv", "FOO"}, 0, 0, "", env)
@ -109,6 +110,7 @@ var _ = Describe("Podman run", func() {
})
It("podman run --http-proxy test", func() {
SkipIfRemote()
os.Setenv("http_proxy", "1.2.3.4")
session := podmanTest.Podman([]string{"run", "--rm", ALPINE, "printenv", "http_proxy"})
session.WaitWithDefaultTimeout()