From 251727a3dbf85f16a768c989529f40fcf3408a2a Mon Sep 17 00:00:00 2001 From: Hyeongju Johannes Lee Date: Thu, 2 Dec 2021 08:33:50 -0800 Subject: [PATCH] operator: add node selection constraint (amd64 arch) In order to make controllers consistent, I add a nodeselector constraint of daemonset to dlb, fpga, qat too. Since the same code is commonly used in many files, I add a function that replaces duplicated code. Signed-off-by: Hyeongju Johannes Lee --- .../base/intel-fpga-plugin-daemonset.yaml | 2 + .../base/intel-qat-kernel-plugin.yaml | 2 + .../qat_plugin/base/intel-qat-plugin.yaml | 2 + .../sgx_plugin/base/intel-sgx-plugin.yaml | 2 + pkg/controllers/dlb/controller.go | 16 ++++++-- pkg/controllers/dsa/controller.go | 33 ++++++----------- pkg/controllers/dsa/controller_test.go | 14 +------ pkg/controllers/fpga/controller.go | 18 ++++++--- pkg/controllers/fpga/controller_test.go | 2 +- pkg/controllers/gpu/controller.go | 33 ++++++----------- pkg/controllers/gpu/controller_test.go | 14 +------ pkg/controllers/qat/controller.go | 18 ++++++--- pkg/controllers/qat/controller_test.go | 2 +- pkg/controllers/sgx/controller.go | 37 +++++++------------ pkg/controllers/sgx/controller_test.go | 14 +------ 15 files changed, 89 insertions(+), 120 deletions(-) diff --git a/deployments/fpga_plugin/base/intel-fpga-plugin-daemonset.yaml b/deployments/fpga_plugin/base/intel-fpga-plugin-daemonset.yaml index c2ba8530..041a012e 100644 --- a/deployments/fpga_plugin/base/intel-fpga-plugin-daemonset.yaml +++ b/deployments/fpga_plugin/base/intel-fpga-plugin-daemonset.yaml @@ -66,3 +66,5 @@ spec: hostPath: path: /etc/containers/oci/hooks.d type: DirectoryOrCreate + nodeSelector: + kubernetes.io/arch: amd64 diff --git a/deployments/qat_plugin/base/intel-qat-kernel-plugin.yaml b/deployments/qat_plugin/base/intel-qat-kernel-plugin.yaml index 5b876b1a..2e748d71 100644 --- a/deployments/qat_plugin/base/intel-qat-kernel-plugin.yaml +++ b/deployments/qat_plugin/base/intel-qat-kernel-plugin.yaml @@ -39,3 +39,5 @@ spec: - name: devfs hostPath: path: /dev + nodeSelector: + kubernetes.io/arch: amd64 diff --git a/deployments/qat_plugin/base/intel-qat-plugin.yaml b/deployments/qat_plugin/base/intel-qat-plugin.yaml index dff8a2bf..9ab528a5 100644 --- a/deployments/qat_plugin/base/intel-qat-plugin.yaml +++ b/deployments/qat_plugin/base/intel-qat-plugin.yaml @@ -37,3 +37,5 @@ spec: - name: kubeletsockets hostPath: path: /var/lib/kubelet/device-plugins + nodeSelector: + kubernetes.io/arch: amd64 diff --git a/deployments/sgx_plugin/base/intel-sgx-plugin.yaml b/deployments/sgx_plugin/base/intel-sgx-plugin.yaml index 448165c6..35e6057c 100644 --- a/deployments/sgx_plugin/base/intel-sgx-plugin.yaml +++ b/deployments/sgx_plugin/base/intel-sgx-plugin.yaml @@ -47,3 +47,5 @@ spec: hostPath: path: /dev/sgx_provision type: CharDevice + nodeSelector: + kubernetes.io/arch: amd64 diff --git a/pkg/controllers/dlb/controller.go b/pkg/controllers/dlb/controller.go index 79f0f370..84c80b42 100644 --- a/pkg/controllers/dlb/controller.go +++ b/pkg/controllers/dlb/controller.go @@ -1,4 +1,4 @@ -// Copyright 2020 Intel Corporation. All Rights Reserved. +// Copyright 2021 Intel Corporation. All Rights Reserved. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -35,6 +35,8 @@ import ( const ownerKey = ".metadata.controller.dlb" +var defaultNodeSelector map[string]string = deployments.DLBPluginDaemonSet().Spec.Template.Spec.NodeSelector + // +kubebuilder:rbac:groups=deviceplugin.intel.com,resources=dlbdeviceplugins,verbs=get;list;watch;create;update;patch;delete // +kubebuilder:rbac:groups=deviceplugin.intel.com,resources=dlbdeviceplugins/status,verbs=get;update;patch // +kubebuilder:rbac:groups=deviceplugin.intel.com,resources=dlbdeviceplugins/finalizers,verbs=update @@ -76,6 +78,9 @@ func (c *controller) NewDaemonSet(rawObj client.Object) *apps.DaemonSet { devicePlugin := rawObj.(*devicepluginv1.DlbDevicePlugin) daemonSet := deployments.DLBPluginDaemonSet() + if len(devicePlugin.Spec.NodeSelector) > 0 { + daemonSet.Spec.Template.Spec.NodeSelector = devicePlugin.Spec.NodeSelector + } daemonSet.ObjectMeta.Namespace = c.ns daemonSet.Spec.Template.Spec.Containers[0].Args = getPodArgs(devicePlugin) @@ -92,8 +97,13 @@ func (c *controller) UpdateDaemonSet(rawObj client.Object, ds *apps.DaemonSet) ( updated = true } - if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, dp.Spec.NodeSelector) { - ds.Spec.Template.Spec.NodeSelector = dp.Spec.NodeSelector + if len(dp.Spec.NodeSelector) > 0 { + if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, dp.Spec.NodeSelector) { + ds.Spec.Template.Spec.NodeSelector = dp.Spec.NodeSelector + updated = true + } + } else if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, defaultNodeSelector) { + ds.Spec.Template.Spec.NodeSelector = defaultNodeSelector updated = true } diff --git a/pkg/controllers/dsa/controller.go b/pkg/controllers/dsa/controller.go index 9483fb72..f95c8eb5 100644 --- a/pkg/controllers/dsa/controller.go +++ b/pkg/controllers/dsa/controller.go @@ -36,10 +36,11 @@ import ( const ( ownerKey = ".metadata.controller.dsa" - amd64 = "amd64" inicontainerName = "intel-idxd-config-initcontainer" ) +var defaultNodeSelector = deployments.DSAPluginDaemonSet().Spec.Template.Spec.NodeSelector + // +kubebuilder:rbac:groups=deviceplugin.intel.com,resources=dsadeviceplugins,verbs=get;list;watch;create;update;patch;delete // +kubebuilder:rbac:groups=deviceplugin.intel.com,resources=dsadeviceplugins/status,verbs=get;update;patch // +kubebuilder:rbac:groups=deviceplugin.intel.com,resources=dsadeviceplugins/finalizers,verbs=update @@ -159,20 +160,10 @@ func addInitContainer(ds *apps.DaemonSet, dp *devicepluginv1.DsaDevicePlugin) { func (c *controller) NewDaemonSet(rawObj client.Object) *apps.DaemonSet { devicePlugin := rawObj.(*devicepluginv1.DsaDevicePlugin) - var nodeSelector map[string]string - dpNodeSelectorSize := len(devicePlugin.Spec.NodeSelector) - if dpNodeSelectorSize > 0 { - nodeSelector = make(map[string]string, dpNodeSelectorSize+1) - for k, v := range devicePlugin.Spec.NodeSelector { - nodeSelector[k] = v - } - nodeSelector["kubernetes.io/arch"] = amd64 - } else { - nodeSelector = map[string]string{"kubernetes.io/arch": amd64} - } - daemonSet := deployments.DSAPluginDaemonSet() - daemonSet.Spec.Template.Spec.NodeSelector = nodeSelector + if len(devicePlugin.Spec.NodeSelector) > 0 { + daemonSet.Spec.Template.Spec.NodeSelector = devicePlugin.Spec.NodeSelector + } daemonSet.ObjectMeta.Namespace = c.ns daemonSet.Spec.Template.Spec.Containers[0].Args = getPodArgs(devicePlugin) daemonSet.Spec.Template.Spec.Containers[0].Image = devicePlugin.Spec.Image @@ -226,13 +217,13 @@ func (c *controller) UpdateDaemonSet(rawObj client.Object, ds *apps.DaemonSet) ( updated = true } - if dp.Spec.NodeSelector == nil { - dp.Spec.NodeSelector = map[string]string{"kubernetes.io/arch": amd64} - } else { - dp.Spec.NodeSelector["kubernetes.io/arch"] = "amd64" - } - if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, dp.Spec.NodeSelector) { - ds.Spec.Template.Spec.NodeSelector = dp.Spec.NodeSelector + if len(dp.Spec.NodeSelector) > 0 { + if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, dp.Spec.NodeSelector) { + ds.Spec.Template.Spec.NodeSelector = dp.Spec.NodeSelector + updated = true + } + } else if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, defaultNodeSelector) { + ds.Spec.Template.Spec.NodeSelector = defaultNodeSelector updated = true } diff --git a/pkg/controllers/dsa/controller_test.go b/pkg/controllers/dsa/controller_test.go index a33920f5..ff70c4a2 100644 --- a/pkg/controllers/dsa/controller_test.go +++ b/pkg/controllers/dsa/controller_test.go @@ -34,18 +34,6 @@ const appLabel = "intel-dsa-plugin" func (c *controller) newDaemonSetExpected(rawObj client.Object) *apps.DaemonSet { devicePlugin := rawObj.(*devicepluginv1.DsaDevicePlugin) - var nodeSelector map[string]string - dpNodeSelectorSize := len(devicePlugin.Spec.NodeSelector) - if dpNodeSelectorSize > 0 { - nodeSelector = make(map[string]string, dpNodeSelectorSize+1) - for k, v := range devicePlugin.Spec.NodeSelector { - nodeSelector[k] = v - } - nodeSelector["kubernetes.io/arch"] = "amd64" - } else { - nodeSelector = map[string]string{"kubernetes.io/arch": "amd64"} - } - yes := true daemonSet := apps.DaemonSet{ TypeMeta: metav1.TypeMeta{ @@ -114,7 +102,7 @@ func (c *controller) newDaemonSetExpected(rawObj client.Object) *apps.DaemonSet }, }, }, - NodeSelector: nodeSelector, + NodeSelector: map[string]string{"kubernetes.io/arch": "amd64"}, Volumes: []v1.Volume{ { Name: "devfs", diff --git a/pkg/controllers/fpga/controller.go b/pkg/controllers/fpga/controller.go index 1e1952f6..e3f4dba7 100644 --- a/pkg/controllers/fpga/controller.go +++ b/pkg/controllers/fpga/controller.go @@ -33,9 +33,9 @@ import ( "github.com/pkg/errors" ) -const ( - ownerKey = ".metadata.controller.fpga" -) +const ownerKey = ".metadata.controller.fpga" + +var defaultNodeSelector = deployments.FPGAPluginDaemonSet().Spec.Template.Spec.NodeSelector // +kubebuilder:rbac:groups=deviceplugin.intel.com,resources=fpgadeviceplugins,verbs=get;list;watch;create;update;patch;delete // +kubebuilder:rbac:groups=deviceplugin.intel.com,resources=fpgadeviceplugins/status,verbs=get;update;patch @@ -78,6 +78,9 @@ func (c *controller) NewDaemonSet(rawObj client.Object) *apps.DaemonSet { devicePlugin := rawObj.(*devicepluginv1.FpgaDevicePlugin) daemonSet := deployments.FPGAPluginDaemonSet() + if len(devicePlugin.Spec.NodeSelector) > 0 { + daemonSet.Spec.Template.Spec.NodeSelector = devicePlugin.Spec.NodeSelector + } daemonSet.ObjectMeta.Namespace = c.ns daemonSet.Spec.Template.Spec.Containers[0].Args = getPodArgs(devicePlugin) daemonSet.Spec.Template.Spec.Containers[0].Image = devicePlugin.Spec.Image @@ -98,8 +101,13 @@ func (c *controller) UpdateDaemonSet(rawObj client.Object, ds *apps.DaemonSet) ( updated = true } - if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, dp.Spec.NodeSelector) { - ds.Spec.Template.Spec.NodeSelector = dp.Spec.NodeSelector + if len(dp.Spec.NodeSelector) > 0 { + if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, dp.Spec.NodeSelector) { + ds.Spec.Template.Spec.NodeSelector = dp.Spec.NodeSelector + updated = true + } + } else if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, defaultNodeSelector) { + ds.Spec.Template.Spec.NodeSelector = defaultNodeSelector updated = true } diff --git a/pkg/controllers/fpga/controller_test.go b/pkg/controllers/fpga/controller_test.go index 2310dddc..7a98b9b4 100644 --- a/pkg/controllers/fpga/controller_test.go +++ b/pkg/controllers/fpga/controller_test.go @@ -119,7 +119,7 @@ func (c *controller) newDaemonSetExpected(rawObj client.Object) *apps.DaemonSet }, }, }, - NodeSelector: devicePlugin.Spec.NodeSelector, + NodeSelector: map[string]string{"kubernetes.io/arch": "amd64"}, Volumes: []v1.Volume{ { Name: "devfs", diff --git a/pkg/controllers/gpu/controller.go b/pkg/controllers/gpu/controller.go index 00755ba3..57d84ae4 100644 --- a/pkg/controllers/gpu/controller.go +++ b/pkg/controllers/gpu/controller.go @@ -39,9 +39,10 @@ import ( const ( ownerKey = ".metadata.controller.gpu" serviceAccountName = "gpu-manager-sa" - amd64 = "amd64" ) +var defaultNodeSelector = deployments.GPUPluginDaemonSet().Spec.Template.Spec.NodeSelector + // +kubebuilder:rbac:groups=deviceplugin.intel.com,resources=gpudeviceplugins,verbs=get;list;watch;create;update;patch;delete // +kubebuilder:rbac:groups=deviceplugin.intel.com,resources=gpudeviceplugins/status,verbs=get;update;patch // +kubebuilder:rbac:groups=deviceplugin.intel.com,resources=gpudeviceplugins/finalizers,verbs=update @@ -121,20 +122,10 @@ func (c *controller) NewClusterRoleBinding(rawObj client.Object) *rbacv1.Cluster func (c *controller) NewDaemonSet(rawObj client.Object) *apps.DaemonSet { devicePlugin := rawObj.(*devicepluginv1.GpuDevicePlugin) - var nodeSelector map[string]string - dpNodeSelectorSize := len(devicePlugin.Spec.NodeSelector) - if dpNodeSelectorSize > 0 { - nodeSelector = make(map[string]string, dpNodeSelectorSize+1) - for k, v := range devicePlugin.Spec.NodeSelector { - nodeSelector[k] = v - } - nodeSelector["kubernetes.io/arch"] = amd64 - } else { - nodeSelector = map[string]string{"kubernetes.io/arch": amd64} - } - daemonSet := deployments.GPUPluginDaemonSet() - daemonSet.Spec.Template.Spec.NodeSelector = nodeSelector + if len(devicePlugin.Spec.NodeSelector) > 0 { + daemonSet.Spec.Template.Spec.NodeSelector = devicePlugin.Spec.NodeSelector + } daemonSet.ObjectMeta.Namespace = c.ns daemonSet.Spec.Template.Spec.Containers[0].Args = getPodArgs(devicePlugin) daemonSet.Spec.Template.Spec.Containers[0].Image = devicePlugin.Spec.Image @@ -245,13 +236,13 @@ func (c *controller) UpdateDaemonSet(rawObj client.Object, ds *apps.DaemonSet) ( updated = true } - if dp.Spec.NodeSelector == nil { - dp.Spec.NodeSelector = map[string]string{"kubernetes.io/arch": amd64} - } else { - dp.Spec.NodeSelector["kubernetes.io/arch"] = amd64 - } - if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, dp.Spec.NodeSelector) { - ds.Spec.Template.Spec.NodeSelector = dp.Spec.NodeSelector + if len(dp.Spec.NodeSelector) > 0 { + if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, dp.Spec.NodeSelector) { + ds.Spec.Template.Spec.NodeSelector = dp.Spec.NodeSelector + updated = true + } + } else if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, defaultNodeSelector) { + ds.Spec.Template.Spec.NodeSelector = defaultNodeSelector updated = true } diff --git a/pkg/controllers/gpu/controller_test.go b/pkg/controllers/gpu/controller_test.go index 6265f896..ef0a277c 100644 --- a/pkg/controllers/gpu/controller_test.go +++ b/pkg/controllers/gpu/controller_test.go @@ -35,18 +35,6 @@ const appLabel = "intel-gpu-plugin" func (c *controller) newDaemonSetExpected(rawObj client.Object) *apps.DaemonSet { devicePlugin := rawObj.(*devicepluginv1.GpuDevicePlugin) - var nodeSelector map[string]string - dpNodeSelectorSize := len(devicePlugin.Spec.NodeSelector) - if dpNodeSelectorSize > 0 { - nodeSelector = make(map[string]string, dpNodeSelectorSize+1) - for k, v := range devicePlugin.Spec.NodeSelector { - nodeSelector[k] = v - } - nodeSelector["kubernetes.io/arch"] = "amd64" - } else { - nodeSelector = map[string]string{"kubernetes.io/arch": "amd64"} - } - yes := true daemonSet := apps.DaemonSet{ TypeMeta: metav1.TypeMeta{ @@ -110,7 +98,7 @@ func (c *controller) newDaemonSetExpected(rawObj client.Object) *apps.DaemonSet }, }, }, - NodeSelector: nodeSelector, + NodeSelector: map[string]string{"kubernetes.io/arch": "amd64"}, Volumes: []v1.Volume{ { Name: "devfs", diff --git a/pkg/controllers/qat/controller.go b/pkg/controllers/qat/controller.go index 904e5ce0..a422c452 100644 --- a/pkg/controllers/qat/controller.go +++ b/pkg/controllers/qat/controller.go @@ -33,9 +33,9 @@ import ( "github.com/pkg/errors" ) -const ( - ownerKey = ".metadata.controller.qat" -) +const ownerKey = ".metadata.controller.qat" + +var defaultNodeSelector = deployments.QATPluginDaemonSet().Spec.Template.Spec.NodeSelector // +kubebuilder:rbac:groups=deviceplugin.intel.com,resources=qatdeviceplugins,verbs=get;list;watch;create;update;patch;delete // +kubebuilder:rbac:groups=deviceplugin.intel.com,resources=qatdeviceplugins/status,verbs=get;update;patch @@ -82,6 +82,9 @@ func (c *controller) NewDaemonSet(rawObj client.Object) *apps.DaemonSet { daemonSet := deployments.QATPluginDaemonSet() daemonSet.Annotations = annotations daemonSet.Spec.Template.Annotations = annotations + if len(devicePlugin.Spec.NodeSelector) > 0 { + daemonSet.Spec.Template.Spec.NodeSelector = devicePlugin.Spec.NodeSelector + } daemonSet.ObjectMeta.Namespace = c.ns daemonSet.Spec.Template.Spec.Containers[0].Args = getPodArgs(devicePlugin) daemonSet.Spec.Template.Spec.Containers[0].Image = devicePlugin.Spec.Image @@ -104,8 +107,13 @@ func (c *controller) UpdateDaemonSet(rawObj client.Object, ds *apps.DaemonSet) ( updated = true } - if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, dp.Spec.NodeSelector) { - ds.Spec.Template.Spec.NodeSelector = dp.Spec.NodeSelector + if len(dp.Spec.NodeSelector) > 0 { + if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, dp.Spec.NodeSelector) { + ds.Spec.Template.Spec.NodeSelector = dp.Spec.NodeSelector + updated = true + } + } else if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, defaultNodeSelector) { + ds.Spec.Template.Spec.NodeSelector = defaultNodeSelector updated = true } diff --git a/pkg/controllers/qat/controller_test.go b/pkg/controllers/qat/controller_test.go index 87769e46..1e5cab19 100644 --- a/pkg/controllers/qat/controller_test.go +++ b/pkg/controllers/qat/controller_test.go @@ -89,7 +89,7 @@ func (c *controller) newDaemonSetExpected(rawObj client.Object) *apps.DaemonSet }, }, }, - NodeSelector: devicePlugin.Spec.NodeSelector, + NodeSelector: map[string]string{"kubernetes.io/arch": "amd64"}, Volumes: []v1.Volume{ { Name: "devdir", diff --git a/pkg/controllers/sgx/controller.go b/pkg/controllers/sgx/controller.go index 3047ccde..9564269d 100644 --- a/pkg/controllers/sgx/controller.go +++ b/pkg/controllers/sgx/controller.go @@ -34,10 +34,9 @@ import ( v1 "k8s.io/api/core/v1" ) -const ( - ownerKey = ".metadata.controller.sgx" - amd64 = "amd64" -) +const ownerKey = ".metadata.controller.sgx" + +var defaultNodeSelector = deployments.SGXPluginDaemonSet().Spec.Template.Spec.NodeSelector // +kubebuilder:rbac:groups=deviceplugin.intel.com,resources=sgxdeviceplugins,verbs=get;list;watch;create;update;patch;delete // +kubebuilder:rbac:groups=deviceplugin.intel.com,resources=sgxdeviceplugins/status,verbs=get;update;patch @@ -117,20 +116,10 @@ func setInitContainer(spec *v1.PodSpec, imageName string) { func (c *controller) NewDaemonSet(rawObj client.Object) *apps.DaemonSet { devicePlugin := rawObj.(*devicepluginv1.SgxDevicePlugin) - var nodeSelector map[string]string - dpNodeSelectorSize := len(devicePlugin.Spec.NodeSelector) - if dpNodeSelectorSize > 0 { - nodeSelector = make(map[string]string, dpNodeSelectorSize+1) - for k, v := range devicePlugin.Spec.NodeSelector { - nodeSelector[k] = v - } - nodeSelector["kubernetes.io/arch"] = amd64 - } else { - nodeSelector = map[string]string{"kubernetes.io/arch": amd64} - } - daemonSet := deployments.SGXPluginDaemonSet() - daemonSet.Spec.Template.Spec.NodeSelector = nodeSelector + if len(devicePlugin.Spec.NodeSelector) > 0 { + daemonSet.Spec.Template.Spec.NodeSelector = devicePlugin.Spec.NodeSelector + } daemonSet.ObjectMeta.Namespace = c.ns daemonSet.Spec.Template.Spec.Containers[0].Args = getPodArgs(devicePlugin) daemonSet.Spec.Template.Spec.Containers[0].Image = devicePlugin.Spec.Image @@ -151,13 +140,13 @@ func (c *controller) UpdateDaemonSet(rawObj client.Object, ds *apps.DaemonSet) ( updated = true } - if dp.Spec.NodeSelector == nil { - dp.Spec.NodeSelector = map[string]string{"kubernetes.io/arch": amd64} - } else { - dp.Spec.NodeSelector["kubernetes.io/arch"] = amd64 - } - if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, dp.Spec.NodeSelector) { - ds.Spec.Template.Spec.NodeSelector = dp.Spec.NodeSelector + if len(dp.Spec.NodeSelector) > 0 { + if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, dp.Spec.NodeSelector) { + ds.Spec.Template.Spec.NodeSelector = dp.Spec.NodeSelector + updated = true + } + } else if !reflect.DeepEqual(ds.Spec.Template.Spec.NodeSelector, defaultNodeSelector) { + ds.Spec.Template.Spec.NodeSelector = defaultNodeSelector updated = true } diff --git a/pkg/controllers/sgx/controller_test.go b/pkg/controllers/sgx/controller_test.go index d08d6989..bfb40309 100644 --- a/pkg/controllers/sgx/controller_test.go +++ b/pkg/controllers/sgx/controller_test.go @@ -35,18 +35,6 @@ const appLabel = "intel-sgx-plugin" func (c *controller) newDaemonSetExpected(rawObj client.Object) *apps.DaemonSet { devicePlugin := rawObj.(*devicepluginv1.SgxDevicePlugin) - var nodeSelector map[string]string - dpNodeSelectorSize := len(devicePlugin.Spec.NodeSelector) - if dpNodeSelectorSize > 0 { - nodeSelector = make(map[string]string, dpNodeSelectorSize+1) - for k, v := range devicePlugin.Spec.NodeSelector { - nodeSelector[k] = v - } - nodeSelector["kubernetes.io/arch"] = "amd64" - } else { - nodeSelector = map[string]string{"kubernetes.io/arch": "amd64"} - } - yes := true charDevice := v1.HostPathCharDev directoryOrCreate := v1.HostPathDirectoryOrCreate @@ -107,7 +95,7 @@ func (c *controller) newDaemonSetExpected(rawObj client.Object) *apps.DaemonSet }, }, }, - NodeSelector: nodeSelector, + NodeSelector: map[string]string{"kubernetes.io/arch": "amd64"}, Volumes: []v1.Volume{ { Name: "kubeletsockets",