Skip to content

Commit 964fc09

Browse files
author
tazhate
committed
fix(rbac): add RBAC markers for ChainVersionCatalog controller
The controller manager was crashing immediately after acquiring the leader lease because the service account had no permissions to list or watch ChainVersionCatalog resources. This caused the informer cache to never sync, and mgr.Start() exited with "timed out waiting for cache to be synced for Kind *v1alpha1.ChainVersionCatalog". Added kubebuilder:rbac markers to chainversioncatalog_controller.go and ran make manifests to regenerate config/rbac/role.yaml. Diagnosed via --previous pod logs added in prior commit.
1 parent d01ffd2 commit 964fc09

2 files changed

Lines changed: 7 additions & 79 deletions

File tree

config/rbac/role.yaml

Lines changed: 3 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ rules:
77
- apiGroups:
88
- nodes.chainplane.io
99
resources:
10-
- blockchainnodes
10+
- chainversioncatalogs
1111
verbs:
1212
- create
1313
- delete
@@ -19,90 +19,14 @@ rules:
1919
- apiGroups:
2020
- nodes.chainplane.io
2121
resources:
22-
- blockchainnodes/finalizers
22+
- chainversioncatalogs/finalizers
2323
verbs:
2424
- update
2525
- apiGroups:
2626
- nodes.chainplane.io
2727
resources:
28-
- blockchainnodes/status
28+
- chainversioncatalogs/status
2929
verbs:
3030
- get
3131
- patch
3232
- update
33-
- apiGroups:
34-
- apps
35-
resources:
36-
- statefulsets
37-
verbs:
38-
- create
39-
- delete
40-
- get
41-
- list
42-
- patch
43-
- update
44-
- watch
45-
- apiGroups:
46-
- ""
47-
resources:
48-
- services
49-
- configmaps
50-
- persistentvolumeclaims
51-
verbs:
52-
- create
53-
- delete
54-
- get
55-
- list
56-
- patch
57-
- update
58-
- watch
59-
- apiGroups:
60-
- ""
61-
resources:
62-
- pods
63-
verbs:
64-
- create
65-
- delete
66-
- get
67-
- list
68-
- watch
69-
- patch
70-
- apiGroups:
71-
- ""
72-
resources:
73-
- pods/log
74-
verbs:
75-
- get
76-
- apiGroups:
77-
- ""
78-
resources:
79-
- endpoints
80-
verbs:
81-
- get
82-
- list
83-
- watch
84-
- apiGroups:
85-
- ""
86-
resources:
87-
- secrets
88-
verbs:
89-
- get
90-
- apiGroups:
91-
- ""
92-
resources:
93-
- events
94-
verbs:
95-
- create
96-
- patch
97-
- apiGroups:
98-
- monitoring.coreos.com
99-
resources:
100-
- podmonitors
101-
verbs:
102-
- create
103-
- delete
104-
- get
105-
- list
106-
- patch
107-
- update
108-
- watch

internal/controller/chainversioncatalog_controller.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,10 @@ type ChainVersionCatalogReconciler struct {
2828
Scheme *runtime.Scheme
2929
}
3030

31+
// +kubebuilder:rbac:groups=nodes.chainplane.io,resources=chainversioncatalogs,verbs=get;list;watch;create;update;patch;delete
32+
// +kubebuilder:rbac:groups=nodes.chainplane.io,resources=chainversioncatalogs/status,verbs=get;update;patch
33+
// +kubebuilder:rbac:groups=nodes.chainplane.io,resources=chainversioncatalogs/finalizers,verbs=update
34+
3135
func (r *ChainVersionCatalogReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error) {
3236
logger := log.FromContext(ctx)
3337

0 commit comments

Comments
 (0)