@@ -49,13 +49,13 @@ var defaultNodeSelector = deployments.GPUPluginDaemonSet().Spec.Template.Spec.No
4949// +kubebuilder:rbac:groups=deviceplugin.intel.com,resources=gpudeviceplugins/finalizers,verbs=update
5050
5151// SetupReconciler creates a new reconciler for GpuDevicePlugin objects.
52- func SetupReconciler (mgr ctrl.Manager , namespace , registrySecret string , withWebhook bool ) error {
53- c := & controller {scheme : mgr .GetScheme (), ns : namespace , secret : registrySecret }
52+ func SetupReconciler (mgr ctrl.Manager , args controllers. ControllerArgs ) error {
53+ c := & controller {scheme : mgr .GetScheme (), args : args }
5454 if err := controllers .SetupWithManager (mgr , c , devicepluginv1 .GroupVersion .String (), "GpuDevicePlugin" , ownerKey ); err != nil {
5555 return err
5656 }
5757
58- if withWebhook {
58+ if args . WithWebhook {
5959 return (& devicepluginv1.GpuDevicePlugin {}).SetupWebhookWithManager (mgr )
6060 }
6161
@@ -64,8 +64,7 @@ func SetupReconciler(mgr ctrl.Manager, namespace, registrySecret string, withWeb
6464
6565type controller struct {
6666 scheme * runtime.Scheme
67- ns string
68- secret string
67+ args controllers.ControllerArgs
6968}
7069
7170func (c * controller ) CreateEmptyObject () client.Object {
@@ -81,7 +80,7 @@ func (c *controller) NewSharedServiceAccount() *v1.ServiceAccount {
8180 return & v1.ServiceAccount {
8281 ObjectMeta : metav1.ObjectMeta {
8382 Name : serviceAccountName ,
84- Namespace : c .ns ,
83+ Namespace : c .args . Namespace ,
8584 },
8685 }
8786}
@@ -90,13 +89,13 @@ func (c *controller) NewSharedClusterRoleBinding() *rbacv1.ClusterRoleBinding {
9089 return & rbacv1.ClusterRoleBinding {
9190 ObjectMeta : metav1.ObjectMeta {
9291 Name : roleBindingName ,
93- Namespace : c .ns ,
92+ Namespace : c .args . Namespace ,
9493 },
9594 Subjects : []rbacv1.Subject {
9695 {
9796 Kind : "ServiceAccount" ,
9897 Name : serviceAccountName ,
99- Namespace : c .ns ,
98+ Namespace : c .args . Namespace ,
10099 },
101100 },
102101 RoleRef : rbacv1.RoleRef {
@@ -141,13 +140,13 @@ func (c *controller) NewDaemonSet(rawObj client.Object) *apps.DaemonSet {
141140 daemonSet .Spec .Template .Spec .Tolerations = devicePlugin .Spec .Tolerations
142141 }
143142
144- daemonSet .ObjectMeta .Namespace = c .ns
143+ daemonSet .ObjectMeta .Namespace = c .args . Namespace
145144 daemonSet .Spec .Template .Spec .Containers [0 ].Args = getPodArgs (devicePlugin )
146145 daemonSet .Spec .Template .Spec .Containers [0 ].Image = devicePlugin .Spec .Image
147146
148- if len (c .secret ) > 0 {
147+ if len (c .args . Secret ) > 0 {
149148 daemonSet .Spec .Template .Spec .ImagePullSecrets = []v1.LocalObjectReference {
150- {Name : c .secret },
149+ {Name : c .args . Secret },
151150 }
152151 }
153152
0 commit comments