我正在实现一个admission webhook,它应该添加一个sidecar 容器,需要从a 中选择配置configmap
作为当前流程,configmap
假设它存在于集群中,我只需要VolumeMounts
它。我正在 client-go 中尝试以下代码:
pod.Spec.Volumes = append(pod.Spec.Volumes, corev1.Volume{
Name: "startup-config",
VolumeSource: corev1.VolumeSource{
ConfigMap: &corev1.ConfigMapVolumeSource{
v1.LocalObjectReference{
Name: "my-configmap",
},
},
},
})
但是我收到一个too few values in "k8s.io/api/core/v1".ConfigMapVolumeSource literal
错误由于该configmap
对象已经存在于集群中,我不想/不需要提供除了
我在这里缺少什么Name
之外的任何其他字段?configmap
ps:文档中提到所有其他字段ConfigMapVolumeSource
都是可选的。我想实现一些简单的事情:
apiVersion: v1
kind: Pod
metadata:
name: dapi-test-pod
spec:
containers:
- name: test-container
image: k8s.gcr.io/busybox
command: [ "/bin/sh", "-c", "ls /etc/config/" ]
volumeMounts:
- name: config-volume
mountPath: /etc/config
volumes:
- name: config-volume
configMap:
# Provide the name of the ConfigMap containing the files you want
# to add to the container
name: special-config
YAML 清单只是一个例子。我想要达到的目标