diff options
author | Daniel J Walsh <dwalsh@redhat.com> | 2021-10-26 12:16:21 -0400 |
---|---|---|
committer | Daniel J Walsh <dwalsh@redhat.com> | 2021-11-15 15:10:12 -0500 |
commit | 44d1618dd7eeb2560571b14ba5cece69a93dcaff (patch) | |
tree | fc84a330a86dcabb48f8d27754ffd679558364cb /libpod | |
parent | 230f0b622e391b78626f150471fce5c198048ed8 (diff) | |
download | podman-44d1618dd7eeb2560571b14ba5cece69a93dcaff.tar.gz podman-44d1618dd7eeb2560571b14ba5cece69a93dcaff.tar.bz2 podman-44d1618dd7eeb2560571b14ba5cece69a93dcaff.zip |
Add --unsetenv & --unsetenv-all to remove def environment variables
Podman adds a few environment variables by default, and
currently there is no way to get rid of them from your container.
This option will allow you to specify which defaults you don't
want.
--unsetenv-all will remove all default environment variables.
Default environment variables can come from podman builtin,
containers.conf or from the container image.
Fixes: https://github.com/containers/podman/issues/11836
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
Diffstat (limited to 'libpod')
-rw-r--r-- | libpod/container_inspect.go | 3 | ||||
-rw-r--r-- | libpod/container_internal_linux.go | 12 |
2 files changed, 1 insertions, 14 deletions
diff --git a/libpod/container_inspect.go b/libpod/container_inspect.go index 277c3b960..0dae810de 100644 --- a/libpod/container_inspect.go +++ b/libpod/container_inspect.go @@ -300,8 +300,7 @@ func (c *Container) generateInspectContainerConfig(spec *spec.Spec) *define.Insp ctrConfig.User = c.config.User if spec.Process != nil { ctrConfig.Tty = spec.Process.Terminal - ctrConfig.Env = []string{} - ctrConfig.Env = append(ctrConfig.Env, spec.Process.Env...) + ctrConfig.Env = append([]string{}, spec.Process.Env...) ctrConfig.WorkingDir = spec.Process.Cwd } diff --git a/libpod/container_internal_linux.go b/libpod/container_internal_linux.go index 4a15d495f..fbe8d8e7e 100644 --- a/libpod/container_internal_linux.go +++ b/libpod/container_internal_linux.go @@ -709,18 +709,6 @@ func (c *Container) generateSpec(ctx context.Context) (*spec.Spec, error) { g.AddAnnotation(annotations.ContainerManager, annotations.ContainerManagerLibpod) } - // Only add container environment variable if not already present - foundContainerEnv := false - for _, env := range g.Config.Process.Env { - if strings.HasPrefix(env, "container=") { - foundContainerEnv = true - break - } - } - if !foundContainerEnv { - g.AddProcessEnv("container", "libpod") - } - cgroupPath, err := c.getOCICgroupPath() if err != nil { return nil, err |