Skip to content

Commit c85ac09

Browse files
committed
Name all controllers explicitly with constants
This allows us to pass the controller-name as a field-owner to better keep track who changed what.
1 parent 4c495a8 commit c85ac09

9 files changed

Lines changed: 28 additions & 14 deletions

internal/controller/aggregates_controller.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ const (
4040
ConditionTypeAggregatesUpdated = "AggregatesUpdated"
4141
ConditionAggregatesSuccess = "Success"
4242
ConditionAggregatesFailed = "Failed"
43+
aggregatesControllerName = "aggregates"
4344
)
4445

4546
type AggregatesController struct {
@@ -138,7 +139,7 @@ func (ac *AggregatesController) SetupWithManager(mgr ctrl.Manager) error {
138139
ac.computeClient.Microversion = "2.40" // gophercloud only supports numeric ids
139140

140141
return ctrl.NewControllerManagedBy(mgr).
141-
Named("aggregates").
142+
Named(aggregatesControllerName).
142143
For(&kvmv1.Hypervisor{}).
143144
Complete(ac)
144145
}

internal/controller/decomission_controller.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,8 @@ import (
4444
)
4545

4646
const (
47-
decommissionFinalizerName = "cobaltcore.cloud.sap/decommission-hypervisor"
47+
decommissionFinalizerName = "cobaltcore.cloud.sap/decommission-hypervisor"
48+
decommissionControllerName = "nodeDecommission"
4849
)
4950

5051
type NodeDecommissionReconciler struct {
@@ -222,7 +223,7 @@ func (r *NodeDecommissionReconciler) SetupWithManager(mgr ctrl.Manager) error {
222223
})
223224

224225
return ctrl.NewControllerManagedBy(mgr).
225-
Named("nodeDecommission").
226+
Named(decommissionControllerName).
226227
For(&corev1.Node{}).
227228
WithEventFilter(predicateFilter).
228229
Complete(r)

internal/controller/eviction_controller.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,8 @@ type EvictionReconciler struct {
5252
}
5353

5454
const (
55-
evictionFinalizerName = "eviction-controller.cloud.sap/finalizer"
55+
evictionFinalizerName = "eviction-controller.cloud.sap/finalizer"
56+
evictionControllerName = "eviction"
5657
)
5758

5859
// +kubebuilder:rbac:groups=kvm.cloud.sap,resources=evictions,verbs=get;list;watch;create;update;patch;delete
@@ -565,6 +566,7 @@ func (r *EvictionReconciler) SetupWithManager(mgr ctrl.Manager) error {
565566
r.rand = rand.New(rand.NewSource(time.Now().UnixNano()))
566567

567568
return ctrl.NewControllerManagedBy(mgr).
569+
Named(evictionControllerName).
568570
For(&kvmv1.Eviction{}).
569571
Complete(r)
570572
}

internal/controller/hypervisor_controller.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,10 @@ import (
4040
)
4141

4242
const (
43-
labelLifecycleMode = "cobaltcore.cloud.sap/node-hypervisor-lifecycle"
44-
annotationAggregates = "nova.openstack.cloud.sap/aggregates"
45-
annotationCustomTraits = "nova.openstack.cloud.sap/custom-traits"
43+
labelLifecycleMode = "cobaltcore.cloud.sap/node-hypervisor-lifecycle"
44+
annotationAggregates = "nova.openstack.cloud.sap/aggregates"
45+
annotationCustomTraits = "nova.openstack.cloud.sap/custom-traits"
46+
hypervisorControllerName = "hypervisor"
4647
)
4748

4849
var transferLabels = []string{
@@ -172,6 +173,7 @@ func (hv *HypervisorController) SetupWithManager(mgr ctrl.Manager) error {
172173
}
173174

174175
return ctrl.NewControllerManagedBy(mgr).
176+
Named(hypervisorControllerName).
175177
For(&corev1.Node{}).
176178
WithEventFilter(novaVirtLabeledPredicate).
177179
Complete(hv)

internal/controller/maintenance_controller.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ const (
5555
labelCriticalComponent = "node.gardener.cloud/critical-component"
5656
labelCriticalComponentsNotReady = "node.gardener.cloud/critical-components-not-ready"
5757
valueReasonTerminating = "terminating"
58+
maintenanceControllerName = "maintenance"
5859
)
5960

6061
// The counter-side in gardener is here:
@@ -260,7 +261,7 @@ func (r *MaintenanceController) SetupWithManager(mgr ctrl.Manager, namespace str
260261
}
261262

262263
return ctrl.NewControllerManagedBy(mgr).
263-
Named("maintenance").
264+
Named(maintenanceControllerName).
264265
For(&corev1.Node{}).
265266
Owns(&appsv1.Deployment{}). // trigger the r.Reconcile whenever an Own-ed deployment is created/updated/deleted
266267
Owns(&policyv1.PodDisruptionBudget{}).

internal/controller/node_certificate_controller.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,10 @@ import (
3636
"sigs.k8s.io/controller-runtime/pkg/predicate"
3737
)
3838

39+
const (
40+
nodeCertificateControllerName = "certificate"
41+
)
42+
3943
type NodeCertificateController struct {
4044
k8sclient.Client
4145
Scheme *runtime.Scheme
@@ -191,7 +195,7 @@ func (r *NodeCertificateController) SetupWithManager(mgr ctrl.Manager, namespace
191195
}
192196

193197
return ctrl.NewControllerManagedBy(mgr).
194-
Named("certificate").
198+
Named(nodeCertificateControllerName).
195199
For(&corev1.Node{}).
196200
WithEventFilter(novaVirtLabeledPredicate).
197201
Complete(r)

internal/controller/node_eviction_label_controller.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,9 @@ import (
3737
)
3838

3939
const (
40-
disabledSuffix = "-disabled"
41-
labelMl2MechanismDriver = "neutron.openstack.cloud.sap/ml2-mechanism-driver"
40+
disabledSuffix = "-disabled"
41+
labelMl2MechanismDriver = "neutron.openstack.cloud.sap/ml2-mechanism-driver"
42+
nodeEvictionLabelControllerName = "nodeEvictionLabel"
4243
)
4344

4445
type NodeEvictionLabelReconciler struct {
@@ -188,7 +189,7 @@ func (r *NodeEvictionLabelReconciler) SetupWithManager(mgr ctrl.Manager) error {
188189
_ = logger.FromContext(ctx)
189190

190191
return ctrl.NewControllerManagedBy(mgr).
191-
Named("nodeEvictionLabel").
192+
Named(nodeEvictionLabelControllerName).
192193
For(&corev1.Node{}). // trigger the r.Reconcile whenever a node is created/updated/deleted.
193194
Owns(&kvmv1.Eviction{}). // trigger the r.Reconcile whenever an Own-ed eviction is created/updated/deleted
194195
Complete(r)

internal/controller/onboarding_controller.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ const (
6565
testImageName = "cirros-d240801-kvm"
6666
testPrefixName = "ohooc-"
6767
testVolumeType = "kvm-pilot"
68+
onboardingControllerName = "onboarding"
6869
)
6970

7071
type OnboardingController struct {
@@ -576,7 +577,7 @@ func (r *OnboardingController) SetupWithManager(mgr ctrl.Manager) error {
576577
r.testNetworkClient.ResourceBase = fmt.Sprintf("%vv2.0/", r.testNetworkClient.Endpoint)
577578

578579
return ctrl.NewControllerManagedBy(mgr).
579-
Named("onboarding").
580+
Named(onboardingControllerName).
580581
For(&kvmv1.Hypervisor{}).
581582
Complete(r)
582583
}

internal/controller/traits_controller.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ const (
4343
ConditionTypeTraitsUpdated = "TraitsUpdated"
4444
ConditionTraitsSuccess = "Success"
4545
ConditionTraitsFailed = "Failed"
46+
traitsControllerName = "traits"
4647
)
4748

4849
type TraitsController struct {
@@ -171,7 +172,7 @@ func (tc *TraitsController) SetupWithManager(mgr ctrl.Manager) error {
171172
tc.serviceClient.Microversion = "1.39" // yoga, or later
172173

173174
return ctrl.NewControllerManagedBy(mgr).
174-
Named("traits").
175+
Named(traitsControllerName).
175176
For(&kvmv1.Hypervisor{}).
176177
Complete(tc)
177178
}

0 commit comments

Comments
 (0)