github.com/jenkins-x/jx/v2@v2.1.155/pkg/kube/envvar.go (about)

     1  package kube
     2  
     3  import (
     4  	corev1 "k8s.io/api/core/v1"
     5  )
     6  
     7  // GetSliceEnvVar returns the EnvVar for the given name or nil if none exists in the slice
     8  func GetSliceEnvVar(envVars []corev1.EnvVar, name string) *corev1.EnvVar {
     9  	for _, envVar := range envVars {
    10  		if envVar.Name == name {
    11  			copy := envVar
    12  			return &copy
    13  		}
    14  	}
    15  	return nil
    16  }
    17  
    18  // SetEnvVar returns the env vars with the env var of the given name updated or appended
    19  func SetEnvVar(envVars []corev1.EnvVar, name string, value string) []corev1.EnvVar {
    20  	for i := range envVars {
    21  		if envVars[i].Name == name {
    22  			envVars[i].Value = value
    23  			return envVars
    24  		}
    25  	}
    26  	envVars = append(envVars, corev1.EnvVar{
    27  		Name:  name,
    28  		Value: value,
    29  	})
    30  	return envVars
    31  }