Skip to content

Commit 9233136

Browse files
TomerNewmank8s-ci-robot
authored andcommitted
Gathering kmm RBAC annotations in Module controller
Until now, RBAC annotations under internal/controllers and internal/controllers/hub were scattered across multiple controller files. With this commit, the annotations are now centralized only in the Module controller and the MCM controller. This change addresses the issue where annotations spread across various controllers are applied only to KMM and not to KMM-hub— because all controllers except MCM reside in internal/controllers, and RBAC generation for KMM-hub only scans internal/controllers/hub.
1 parent c0f149e commit 9233136

9 files changed

+16
-40
lines changed

internal/controllers/build_sign_reconciler.go

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -64,13 +64,6 @@ func NewBuildSignReconciler(
6464
}
6565
}
6666

67-
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=modules,verbs=get;list;watch;update;patch
68-
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=modules/status,verbs=get;update;patch
69-
//+kubebuilder:rbac:groups="core",resources=nodes,verbs=get;list;watch
70-
//+kubebuilder:rbac:groups="core",resources=secrets,verbs=get;list;watch
71-
//+kubebuilder:rbac:groups="core",resources=configmaps,verbs=get;list;watch
72-
//+kubebuilder:rbac:groups="core",resources=pods,verbs=create;list;watch;delete
73-
7467
// Reconcile lists all nodes and looks for kernels that match its mappings.
7568
// For each mapping that matches at least one node in the cluster, it creates a DaemonSet running the container image
7669
// on the nodes with a compatible kernel.

internal/controllers/device_plugin_pod_reconciler.go

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,6 @@ import (
1818
"sigs.k8s.io/controller-runtime/pkg/predicate"
1919
)
2020

21-
//+kubebuilder:rbac:groups="core",resources=pods,verbs=get;patch;list;watch
22-
//+kubebuilder:rbac:groups="core",resources=nodes,verbs=get;watch
23-
2421
const DevicePluginPodReconcilerName = "DevicePluginPod"
2522

2623
type DevicePluginPodReconciler struct {

internal/controllers/device_plugin_reconciler.go

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -79,12 +79,6 @@ func (r *DevicePluginReconciler) SetupWithManager(mgr ctrl.Manager) error {
7979
)
8080
}
8181

82-
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=modules,verbs=get;list;watch;
83-
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=modules/status,verbs=get;update;patch
84-
//+kubebuilder:rbac:groups=apps,resources=daemonsets,verbs=create;delete;get;list;patch;watch
85-
//+kubebuilder:rbac:groups="core",resources=nodes,verbs=get;list;watch
86-
//+kubebuilder:rbac:groups="core",resources=secrets,verbs=get;list;watch
87-
8882
func (r *DevicePluginReconciler) Reconcile(ctx context.Context, mod *kmmv1beta1.Module) (ctrl.Result, error) {
8983
res := ctrl.Result{}
9084

internal/controllers/mbsc_reconciler.go

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -63,12 +63,6 @@ func (r *mbscReconciler) SetupWithManager(mgr ctrl.Manager) error {
6363
)
6464
}
6565

66-
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=modulebuildsignconfigs,verbs=get;list;watch;update;patch;create
67-
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=modulebuildsignconfigs/status,verbs=get;update;patch
68-
//+kubebuilder:rbac:groups="core",resources=secrets,verbs=get;list;watch
69-
//+kubebuilder:rbac:groups="core",resources=configmaps,verbs=get;list;watch
70-
//+kubebuilder:rbac:groups="core",resources=pods,verbs=create;list;watch;delete
71-
7266
func (r *mbscReconciler) Reconcile(ctx context.Context, mbscObj *kmmv1beta1.ModuleBuildSignConfig) (ctrl.Result, error) {
7367
res := ctrl.Result{}
7468

internal/controllers/mic_reconciler.go

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,9 +63,6 @@ func (r *micReconciler) SetupWithManager(mgr ctrl.Manager) error {
6363
)
6464
}
6565

66-
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=moduleimagesconfigs,verbs=get;list;watch;patch;create;delete
67-
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=moduleimagesconfigs/status,verbs=get;update;patch
68-
6966
func (r *micReconciler) Reconcile(ctx context.Context, micObj *kmmv1beta1.ModuleImagesConfig) (ctrl.Result, error) {
7067
res := ctrl.Result{}
7168
if micObj.GetDeletionTimestamp() != nil {

internal/controllers/module_reconciler.go

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,23 @@ import (
3232
"sigs.k8s.io/controller-runtime/pkg/reconcile"
3333
)
3434

35-
//+kubebuilder:rbac:groups="core",resources=namespaces,verbs=get;list;patch;watch
36-
//+kubebuilder:rbac:groups="core",resources=nodes,verbs=get;watch
35+
//+kubebuilder:rbac:groups=apps,resources=daemonsets,verbs=create;delete;get;list;patch;watch
36+
//+kubebuilder:rbac:groups=cluster.open-cluster-management.io,resources=clusterclaims,resourceNames=kernel-versions.kmm.node.kubernetes.io,verbs=delete;patch;update
37+
//+kubebuilder:rbac:groups=cluster.open-cluster-management.io,resources=clusterclaims,verbs=create;get;list;watch
38+
//+kubebuilder:rbac:groups=core,resources=configmaps,verbs=get;list;watch
39+
//+kubebuilder:rbac:groups=core,resources=namespaces,verbs=get;list;patch;watch
40+
//+kubebuilder:rbac:groups=core,resources=nodes,verbs=get;list;watch;patch
41+
//+kubebuilder:rbac:groups=core,resources=pods,verbs=create;delete;get;list;patch;watch
42+
//+kubebuilder:rbac:groups=core,resources=secrets,verbs=get;list;watch
43+
//+kubebuilder:rbac:groups=core,resources=serviceaccounts,verbs=get;list;watch
44+
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=modulebuildsignconfigs,verbs=get;list;watch;update;patch;create
45+
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=modulebuildsignconfigs/status,verbs=get;update;patch
46+
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=moduleimagesconfigs,verbs=get;list;watch;patch;create;delete
47+
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=moduleimagesconfigs/status,verbs=get;update;patch
48+
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=modules,verbs=get;list;watch;update;patch
49+
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=modules/status,verbs=get;update;patch
3750
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=nodemodulesconfigs,verbs=get;list;watch;patch;create;delete
51+
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=nodemodulesconfigs/status,verbs=patch
3852

3953
const (
4054
ModuleReconcilerName = "ModuleReconciler"

internal/controllers/nmc_reconciler.go

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -37,13 +37,6 @@ const (
3737
NodeModulesConfigReconcilerName = "NodeModulesConfig"
3838
)
3939

40-
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=nodemodulesconfigs,verbs=get;list;watch
41-
//+kubebuilder:rbac:groups=kmm.sigs.x-k8s.io,resources=nodemodulesconfigs/status,verbs=patch
42-
//+kubebuilder:rbac:groups="core",resources=pods,verbs=create;delete;get;list;watch
43-
//+kubebuilder:rbac:groups="core",resources=nodes,verbs=get;list;watch
44-
//+kubebuilder:rbac:groups="core",resources=secrets,verbs=get;list;watch
45-
//+kubebuilder:rbac:groups="core",resources=serviceaccounts,verbs=get;list;watch
46-
4740
type NMCReconciler struct {
4841
client client.Client
4942
helper nmcReconcilerHelper

internal/controllers/node_kernel_clusterclaim.go

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,6 @@ import (
2121
"sigs.k8s.io/controller-runtime/pkg/reconcile"
2222
)
2323

24-
//+kubebuilder:rbac:groups="core",resources=nodes,verbs=get;patch;list;watch
25-
//+kubebuilder:rbac:groups=cluster.open-cluster-management.io,resources=clusterclaims,verbs=create;get;list;watch
26-
//+kubebuilder:rbac:groups=cluster.open-cluster-management.io,resources=clusterclaims,resourceNames=kernel-versions.kmm.node.kubernetes.io,verbs=delete;patch;update
27-
2824
const (
2925
NodeKernelClusterClaimReconcilerName = "NodeKernelClusterClaim"
3026
)

internal/controllers/node_label_module_version_reconciler.go

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,6 @@ import (
1616
"sigs.k8s.io/controller-runtime/pkg/reconcile"
1717
)
1818

19-
//+kubebuilder:rbac:groups="core",resources=nodes,verbs=get;watch;patch
20-
2119
// this struct contains all the version labels related to a specific Module
2220
type modulesVersionLabels struct {
2321
name string

0 commit comments

Comments
 (0)