Skip to content

Commit 28e1e93

Browse files
committed
fixup: make RBAC the same as on main branch
Signed-off-by: Angel Misevski <[email protected]>
1 parent e14be8f commit 28e1e93

File tree

3 files changed

+76
-99
lines changed

3 files changed

+76
-99
lines changed

config/components/rbac/role.yaml

Lines changed: 57 additions & 84 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,25 @@ rules:
1515
- secrets
1616
- serviceaccounts
1717
verbs:
18-
- create
19-
- delete
18+
- '*'
19+
- apiGroups:
20+
- ""
21+
resources:
22+
- namespaces
23+
verbs:
2024
- get
21-
- list
22-
- patch
23-
- update
24-
- watch
25+
- apiGroups:
26+
- ""
27+
resources:
28+
- pods/exec
29+
verbs:
30+
- create
31+
- apiGroups:
32+
- ""
33+
resources:
34+
- services
35+
verbs:
36+
- '*'
2537
- apiGroups:
2638
- admissionregistration.k8s.io
2739
resources:
@@ -37,62 +49,58 @@ rules:
3749
- watch
3850
- apiGroups:
3951
- apps
52+
resourceNames:
53+
- devworkspace-controller
54+
resources:
55+
- deployments/finalizers
56+
verbs:
57+
- update
58+
- apiGroups:
59+
- apps
60+
- extensions
4061
resources:
4162
- deployments
4263
verbs:
43-
- create
44-
- delete
4564
- get
4665
- list
47-
- patch
48-
- update
4966
- watch
5067
- apiGroups:
51-
- batch
68+
- apps
69+
- extensions
5270
resources:
53-
- jobs
71+
- deployments
72+
- replicasets
5473
verbs:
55-
- create
56-
- delete
57-
- get
58-
- update
59-
- watch
74+
- '*'
6075
- apiGroups:
61-
- controller.devfile.io
76+
- apps
77+
- extensions
6278
resources:
63-
- components
79+
- replicasets
6480
verbs:
65-
- create
66-
- delete
6781
- get
6882
- list
69-
- patch
70-
- update
7183
- watch
7284
- apiGroups:
73-
- controller.devfile.io
85+
- batch
7486
resources:
75-
- components/finalizers
87+
- jobs
7688
verbs:
7789
- create
7890
- delete
7991
- get
80-
- list
81-
- patch
8292
- update
8393
- watch
8494
- apiGroups:
8595
- controller.devfile.io
8696
resources:
87-
- components/status
97+
- '*'
8898
verbs:
89-
- get
90-
- patch
91-
- update
99+
- '*'
92100
- apiGroups:
93101
- controller.devfile.io
94102
resources:
95-
- workspaceroutings
103+
- components
96104
verbs:
97105
- create
98106
- delete
@@ -104,39 +112,29 @@ rules:
104112
- apiGroups:
105113
- controller.devfile.io
106114
resources:
107-
- workspaceroutings/finalizers
115+
- components/status
108116
verbs:
109-
- create
110-
- delete
111117
- get
112-
- list
113118
- patch
114119
- update
115-
- watch
116120
- apiGroups:
117121
- controller.devfile.io
118122
resources:
119-
- workspaceroutings/status
123+
- workspaceroutings
120124
verbs:
121-
- get
122-
- patch
123-
- update
125+
- '*'
124126
- apiGroups:
125-
- ""
127+
- controller.devfile.io
126128
resources:
127-
- configmap
129+
- workspaceroutings/status
128130
verbs:
129-
- create
130-
- delete
131131
- get
132-
- list
133132
- patch
134133
- update
135-
- watch
136134
- apiGroups:
137135
- ""
138136
resources:
139-
- services
137+
- configmap
140138
verbs:
141139
- create
142140
- delete
@@ -150,13 +148,14 @@ rules:
150148
resources:
151149
- ingresses
152150
verbs:
151+
- '*'
152+
- apiGroups:
153+
- monitoring.coreos.com
154+
resources:
155+
- servicemonitors
156+
verbs:
153157
- create
154-
- delete
155158
- get
156-
- list
157-
- patch
158-
- update
159-
- watch
160159
- apiGroups:
161160
- oauth.openshift.io
162161
resources:
@@ -188,42 +187,16 @@ rules:
188187
resources:
189188
- routes
190189
verbs:
191-
- create
192-
- delete
193-
- get
194-
- list
195-
- patch
196-
- update
197-
- watch
190+
- '*'
198191
- apiGroups:
199-
- workspace.devfile.io
200-
resources:
201-
- devworkspaces
202-
verbs:
203-
- create
204-
- delete
205-
- get
206-
- list
207-
- patch
208-
- update
209-
- watch
210-
- apiGroups:
211-
- workspace.devfile.io
192+
- route.openshift.io
212193
resources:
213-
- devworkspaces/finalizers
194+
- routes/custom-host
214195
verbs:
215196
- create
216-
- delete
217-
- get
218-
- list
219-
- patch
220-
- update
221-
- watch
222197
- apiGroups:
223198
- workspace.devfile.io
224199
resources:
225-
- devworkspaces/status
200+
- '*'
226201
verbs:
227-
- get
228-
- patch
229-
- update
202+
- '*'

controllers/controller/workspacerouting/workspacerouting_controller.go

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,11 +43,13 @@ type WorkspaceRoutingReconciler struct {
4343
Scheme *runtime.Scheme
4444
}
4545

46-
// +kubebuilder:rbac:groups=controller.devfile.io,resources=workspaceroutings,verbs=get;list;watch;create;update;patch;delete
46+
// +kubebuilder:rbac:groups=controller.devfile.io,resources=workspaceroutings,verbs=*
4747
// +kubebuilder:rbac:groups=controller.devfile.io,resources=workspaceroutings/status,verbs=get;update;patch
48-
// +kubebuilder:rbac:groups=core,resources=services,verbs=get;list;watch;create;update;patch;delete
49-
// +kubebuilder:rbac:groups=extensions,resources=ingresses,verbs=get;list;watch;create;update;patch;delete
50-
// +kubebuilder:rbac:groups=route.openshift.io,resources=routes,verbs=get;list;watch;create;update;patch;delete
48+
// +kubebuilder:rbac:groups="",resources=services,verbs=*
49+
// +kubebuilder:rbac:groups=extensions,resources=ingresses,verbs=*
50+
// +kubebuilder:rbac:groups=route.openshift.io,resources=routes,verbs=*
51+
// +kubebuidler:rbac:groups=route.openshift.io,resources=routes/status,verbs=get,list,watch
52+
// +kubebuilder:rbac:groups=route.openshift.io,resources=routes/custom-host,verbs=create
5153

5254
func (r *WorkspaceRoutingReconciler) Reconcile(req ctrl.Request) (ctrl.Result, error) {
5355
ctx := context.Background()

controllers/workspace/devworkspace_controller.go

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -56,21 +56,23 @@ type DevWorkspaceReconciler struct {
5656
Scheme *runtime.Scheme
5757
}
5858

59-
// +kubebuilder:rbac:groups=workspace.devfile.io,resources=devworkspaces,verbs=get;list;watch;create;update;patch;delete
60-
// +kubebuilder:rbac:groups=workspace.devfile.io,resources=devworkspaces/finalizers,verbs=get;list;watch;create;update;patch;delete
61-
// +kubebuilder:rbac:groups=workspace.devfile.io,resources=devworkspaces/status,verbs=get;update;patch
62-
// +kubebuilder:rbac:groups=controller.devfile.io,resources=components,verbs=get;list;watch;create;update;patch;delete
63-
// +kubebuilder:rbac:groups=controller.devfile.io,resources=components/finalizers,verbs=get;list;watch;create;update;patch;delete
64-
// +kubebuilder:rbac:groups=controller.devfile.io,resources=components/status,verbs=get;update;patch
65-
// +kubebuilder:rbac:groups=controller.devfile.io,resources=workspaceroutings,verbs=get;list;watch;create;update;patch;delete
66-
// +kubebuilder:rbac:groups=controller.devfile.io,resources=workspaceroutings/finalizers,verbs=get;list;watch;create;update;patch;delete
67-
// +kubebuilder:rbac:groups=controller.devfile.io,resources=workspaceroutings/status,verbs=get;update;patch
68-
// +kubebuilder:rbac:groups=apps,resources=deployments,verbs=get;list;watch;create;update;patch;delete
69-
// +kubebuilder:rbac:groups="",resources=pods;serviceaccounts;secrets;configmaps;persistentvolumeclaims,verbs=get;list;watch;create;update;patch;delete
59+
/////// CRD-related RBAC roles
60+
// +kubebuilder:rbac:groups=workspace.devfile.io,resources=*,verbs=*
61+
// +kubebuilder:rbac:groups=controller.devfile.io,resources=*,verbs=*
62+
/////// Required permissions for controller
63+
// +kubebuilder:rbac:groups=apps;extensions,resources=deployments;replicasets,verbs=*
64+
// +kubebuilder:rbac:groups="",resources=pods;serviceaccounts;secrets;configmaps;persistentvolumeclaims,verbs=*
65+
// +kubebuilder:rbac:groups="",resources=namespaces,verbs=get
7066
// +kubebuilder:rbac:groups="batch",resources=jobs,verbs=get;create;watch;update;delete
7167
// +kubebuilder:rbac:groups=admissionregistration.k8s.io,resources=mutatingwebhookconfigurations;validatingwebhookconfigurations,verbs=get;list;watch;create;update;patch;delete
7268
// +kubebuilder:rbac:groups=rbac.authorization.k8s.io,resources=roles;rolebindings;clusterroles;clusterrolebindings,verbs=get;list;watch;create;update
7369
// +kubebuilder:rbac:groups=oauth.openshift.io,resources=oauthclients,verbs=get;list;watch;create;update;patch;delete;deletecollection
70+
// +kubebuilder:rbac:groups=monitoring.coreos.com,resources=servicemonitors,verbs=get;create
71+
// +kubebuilder:rbac:groups=apps,resourceNames=devworkspace-controller,resources=deployments/finalizers,verbs=update
72+
/////// Required permissions for workspace ServiceAccount
73+
// +kubebuilder:rbac:groups="",resources=pods/exec,verbs=create
74+
// +kubebuilder:rbac:groups=apps;extensions,resources=replicasets,verbs=get;list;watch
75+
// +kubebuilder:rbac:groups=apps;extensions,resources=deployments,verbs=get;list;watch
7476

7577
func (r *DevWorkspaceReconciler) Reconcile(req ctrl.Request) (reconcileResult ctrl.Result, err error) {
7678
ctx := context.Background()

0 commit comments

Comments
 (0)