mirror of
https://github.com/containers/podman.git
synced 2025-08-06 19:44:14 +08:00
Generate kube should'd add podman default environment vars
Currently we add the default PATH, TERM and container from Podman to every kubernetes.yaml file. These values should not be recorded in the yaml files. Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
This commit is contained in:
@ -11,6 +11,7 @@ import (
|
|||||||
|
|
||||||
"github.com/containers/podman/v3/libpod/define"
|
"github.com/containers/podman/v3/libpod/define"
|
||||||
"github.com/containers/podman/v3/libpod/network/types"
|
"github.com/containers/podman/v3/libpod/network/types"
|
||||||
|
"github.com/containers/podman/v3/pkg/env"
|
||||||
"github.com/containers/podman/v3/pkg/lookup"
|
"github.com/containers/podman/v3/pkg/lookup"
|
||||||
"github.com/containers/podman/v3/pkg/namespaces"
|
"github.com/containers/podman/v3/pkg/namespaces"
|
||||||
"github.com/containers/podman/v3/pkg/specgen"
|
"github.com/containers/podman/v3/pkg/specgen"
|
||||||
@ -570,12 +571,16 @@ func ocicniPortMappingToContainerPort(portMappings []types.OCICNIPortMapping) ([
|
|||||||
|
|
||||||
// libpodEnvVarsToKubeEnvVars converts a key=value string slice to []v1.EnvVar
|
// libpodEnvVarsToKubeEnvVars converts a key=value string slice to []v1.EnvVar
|
||||||
func libpodEnvVarsToKubeEnvVars(envs []string) ([]v1.EnvVar, error) {
|
func libpodEnvVarsToKubeEnvVars(envs []string) ([]v1.EnvVar, error) {
|
||||||
|
defaultEnv := env.DefaultEnvVariables()
|
||||||
envVars := make([]v1.EnvVar, 0, len(envs))
|
envVars := make([]v1.EnvVar, 0, len(envs))
|
||||||
for _, e := range envs {
|
for _, e := range envs {
|
||||||
split := strings.SplitN(e, "=", 2)
|
split := strings.SplitN(e, "=", 2)
|
||||||
if len(split) != 2 {
|
if len(split) != 2 {
|
||||||
return envVars, errors.Errorf("environment variable %s is malformed; should be key=value", e)
|
return envVars, errors.Errorf("environment variable %s is malformed; should be key=value", e)
|
||||||
}
|
}
|
||||||
|
if defaultEnv[split[0]] == split[1] {
|
||||||
|
continue
|
||||||
|
}
|
||||||
ev := v1.EnvVar{
|
ev := v1.EnvVar{
|
||||||
Name: split[0],
|
Name: split[0],
|
||||||
Value: split[1],
|
Value: split[1],
|
||||||
|
1
pkg/env/env.go
vendored
1
pkg/env/env.go
vendored
@ -19,6 +19,7 @@ func DefaultEnvVariables() map[string]string {
|
|||||||
return map[string]string{
|
return map[string]string{
|
||||||
"PATH": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
|
"PATH": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
|
||||||
"TERM": "xterm",
|
"TERM": "xterm",
|
||||||
|
"container": "podman",
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -63,12 +63,6 @@ spec:
|
|||||||
- -d
|
- -d
|
||||||
- "1.5"
|
- "1.5"
|
||||||
env:
|
env:
|
||||||
- name: PATH
|
|
||||||
value: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
|
||||||
- name: TERM
|
|
||||||
value: xterm
|
|
||||||
- name: container
|
|
||||||
value: podman
|
|
||||||
- name: HOSTNAME
|
- name: HOSTNAME
|
||||||
value: label-pod
|
value: label-pod
|
||||||
image: quay.io/libpod/alpine:latest
|
image: quay.io/libpod/alpine:latest
|
||||||
@ -171,12 +165,6 @@ spec:
|
|||||||
- -d
|
- -d
|
||||||
- "1.5"
|
- "1.5"
|
||||||
env:
|
env:
|
||||||
- name: PATH
|
|
||||||
value: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
|
||||||
- name: TERM
|
|
||||||
value: xterm
|
|
||||||
- name: container
|
|
||||||
value: podman
|
|
||||||
- name: HOSTNAME
|
- name: HOSTNAME
|
||||||
value: label-pod
|
value: label-pod
|
||||||
image: quay.io/libpod/alpine:latest
|
image: quay.io/libpod/alpine:latest
|
||||||
@ -287,13 +275,7 @@ spec:
|
|||||||
- {{.}}
|
- {{.}}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
env:
|
env:
|
||||||
- name: PATH
|
|
||||||
value: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
|
||||||
- name: TERM
|
|
||||||
value: xterm
|
|
||||||
- name: HOSTNAME
|
- name: HOSTNAME
|
||||||
- name: container
|
|
||||||
value: podman
|
|
||||||
{{ range .Env }}
|
{{ range .Env }}
|
||||||
- name: {{ .Name }}
|
- name: {{ .Name }}
|
||||||
{{ if (eq .ValueFrom "configmap") }}
|
{{ if (eq .ValueFrom "configmap") }}
|
||||||
@ -453,13 +435,7 @@ spec:
|
|||||||
- {{.}}
|
- {{.}}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
env:
|
env:
|
||||||
- name: PATH
|
|
||||||
value: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
|
||||||
- name: TERM
|
|
||||||
value: xterm
|
|
||||||
- name: HOSTNAME
|
- name: HOSTNAME
|
||||||
- name: container
|
|
||||||
value: podman
|
|
||||||
image: {{ .Image }}
|
image: {{ .Image }}
|
||||||
name: {{ .Name }}
|
name: {{ .Name }}
|
||||||
imagePullPolicy: {{ .PullPolicy }}
|
imagePullPolicy: {{ .PullPolicy }}
|
||||||
|
Reference in New Issue
Block a user