diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2021-11-16 16:27:34 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-11-16 16:27:34 +0100 |
commit | f031bd23c6f5f790dde383d542c940bfe2dfaadd (patch) | |
tree | 34d460f57b3ecf7491ec92a296ebd68e233e8bf6 /pkg/specgen/generate/container.go | |
parent | 8430ffc72e74f1271174984674a1c2ee6118779e (diff) | |
parent | 44d1618dd7eeb2560571b14ba5cece69a93dcaff (diff) | |
download | podman-f031bd23c6f5f790dde383d542c940bfe2dfaadd.tar.gz podman-f031bd23c6f5f790dde383d542c940bfe2dfaadd.tar.bz2 podman-f031bd23c6f5f790dde383d542c940bfe2dfaadd.zip |
Merge pull request #12100 from rhatdan/env
Add option --unsetenv to remove default environment variables
Diffstat (limited to 'pkg/specgen/generate/container.go')
-rw-r--r-- | pkg/specgen/generate/container.go | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/pkg/specgen/generate/container.go b/pkg/specgen/generate/container.go index 002b4ace3..40a18a6ac 100644 --- a/pkg/specgen/generate/container.go +++ b/pkg/specgen/generate/container.go @@ -88,9 +88,6 @@ func CompleteSpec(ctx context.Context, r *libpod.Runtime, s *specgen.SpecGenerat if err != nil { return nil, errors.Wrap(err, "error parsing fields in containers.conf") } - if defaultEnvs["container"] == "" { - defaultEnvs["container"] = "podman" - } var envs map[string]string // Image Environment defaults @@ -101,9 +98,16 @@ func CompleteSpec(ctx context.Context, r *libpod.Runtime, s *specgen.SpecGenerat if err != nil { return nil, errors.Wrap(err, "Env fields from image failed to parse") } - defaultEnvs = envLib.Join(defaultEnvs, envs) + defaultEnvs = envLib.Join(envLib.DefaultEnvVariables(), envLib.Join(defaultEnvs, envs)) + } + + for _, e := range s.UnsetEnv { + delete(defaultEnvs, e) } + if s.UnsetEnvAll { + defaultEnvs = make(map[string]string) + } // First transform the os env into a map. We need it for the labels later in // any case. osEnv, err := envLib.ParseSlice(os.Environ()) |