func testDownwardAPI(f *framework.Framework, podName string, env []api.EnvVar, expectations []string) { pod := &api.Pod{ ObjectMeta: api.ObjectMeta{ Name: podName, Labels: map[string]string{"name": podName}, }, Spec: api.PodSpec{ Containers: []api.Container{ { Name: "dapi-container", Image: "gcr.io/google_containers/busybox:1.24", Command: []string{"sh", "-c", "env"}, Resources: api.ResourceRequirements{ Requests: api.ResourceList{ api.ResourceCPU: resource.MustParse("250m"), api.ResourceMemory: resource.MustParse("32Mi"), }, Limits: api.ResourceList{ api.ResourceCPU: resource.MustParse("1250m"), api.ResourceMemory: resource.MustParse("64Mi"), }, }, Env: env, }, }, RestartPolicy: api.RestartPolicyNever, }, } f.MungePodSpec(pod) f.TestContainerOutputRegexp("downward api env vars", pod, 0, expectations) }
func doConfigMapE2EWithMappings(f *framework.Framework, uid, fsGroup int64) { var ( name = "configmap-test-volume-map-" + string(util.NewUUID()) volumeName = "configmap-volume" volumeMountPath = "/etc/configmap-volume" configMap = newConfigMap(f, name) ) By(fmt.Sprintf("Creating configMap with name %s", configMap.Name)) var err error if configMap, err = f.Client.ConfigMaps(f.Namespace.Name).Create(configMap); err != nil { framework.Failf("unable to create test configMap %s: %v", configMap.Name, err) } pod := &api.Pod{ ObjectMeta: api.ObjectMeta{ Name: "pod-configmaps-" + string(util.NewUUID()), }, Spec: api.PodSpec{ SecurityContext: &api.PodSecurityContext{}, Volumes: []api.Volume{ { Name: volumeName, VolumeSource: api.VolumeSource{ ConfigMap: &api.ConfigMapVolumeSource{ LocalObjectReference: api.LocalObjectReference{ Name: name, }, Items: []api.KeyToPath{ { Key: "data-2", Path: "path/to/data-2", }, }, }, }, }, }, Containers: []api.Container{ { Name: "configmap-volume-test", Image: "gcr.io/google_containers/mounttest:0.6", Args: []string{"--file_content=/etc/configmap-volume/path/to/data-2"}, VolumeMounts: []api.VolumeMount{ { Name: volumeName, MountPath: volumeMountPath, ReadOnly: true, }, }, }, }, RestartPolicy: api.RestartPolicyNever, }, } if uid != 0 { pod.Spec.SecurityContext.RunAsUser = &uid } if fsGroup != 0 { pod.Spec.SecurityContext.FSGroup = &fsGroup } f.MungePodSpec(pod) framework.TestContainerOutput("consume configMaps", f.Client, pod, 0, []string{ "content of file \"/etc/configmap-volume/path/to/data-2\": value-2", }, f.Namespace.Name) }