restict velero server in linux nodes

Signed-off-by: Lyndon-Li <lyonghui@vmware.com>
pull/8504/head
Lyndon-Li 2024-12-17 13:30:45 +08:00
parent a5a6e47e42
commit fe0a45eac6
2 changed files with 9 additions and 0 deletions

View File

@ -331,6 +331,12 @@ func Deployment(namespace string, opts ...podTemplateOption) *appsv1.Deployment
Spec: corev1.PodSpec{
RestartPolicy: corev1.RestartPolicyAlways,
ServiceAccountName: c.serviceAccountName,
NodeSelector: map[string]string{
"kubernetes.io/os": "linux",
},
OS: &corev1.PodOS{
Name: "linux",
},
Containers: []corev1.Container{
{
Name: "velero",

View File

@ -99,4 +99,7 @@ func TestDeployment(t *testing.T) {
deploy = Deployment("velero", WithRepoMaintenanceJobConfigMap("test-repo-maintenance-config"))
assert.Len(t, deploy.Spec.Template.Spec.Containers[0].Args, 2)
assert.Equal(t, "--repo-maintenance-job-configmap=test-repo-maintenance-config", deploy.Spec.Template.Spec.Containers[0].Args[1])
assert.Equal(t, "linux", deploy.Spec.Template.Spec.NodeSelector["kubernetes.io/os"])
assert.Equal(t, "linux", string(deploy.Spec.Template.Spec.OS.Name))
}