chore: Describe RBAC rules, remove unnecessary rules#820
Draft
NickLarsenNZ wants to merge 14 commits intomainfrom
Draft
chore: Describe RBAC rules, remove unnecessary rules#820NickLarsenNZ wants to merge 14 commits intomainfrom
NickLarsenNZ wants to merge 14 commits intomainfrom
Conversation
18 tasks
NickLarsenNZ
commented
Apr 2, 2026
Member
Author
NickLarsenNZ
left a comment
There was a problem hiding this comment.
Needs a changelog
…clusterrole Not needed for CRD maintenance nor startup condition
Not needed for clusterDomain detection
…duct clusterrole OPA doesn't interact with the Kubernetes API
Required for startup condition regardless of CRD maintenance
Neither OPA nor UIF interact with the Kubernetes API
…close to each other
…tor.yaml and clusterrole-product.yaml Also rename the opa-builder clusterrole file to be consistent
NickLarsenNZ
commented
Apr 9, 2026
| - get | ||
| # Required to maintain the CRD. The operator needs to do this, as it needs to enter e.g. it's | ||
| # generated certificate in the conversion webhook. | ||
| {{- if .Values.maintenance.customResourceDefinitions.maintain }} |
Member
Author
There was a problem hiding this comment.
Suggested change
| {{- if .Values.maintenance.customResourceDefinitions.maintain }} | |
| # Required to maintain the CRD. The operator needs to do this, as it needs to enter e.g. it's | |
| # generated certificate in the conversion webhook. | |
| {{- if .Values.maintenance.customResourceDefinitions.maintain }} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part of stackabletech/issues#798
Note
This was initially generated by a coding assistant to see how well it can inspect code and review the RBAC rules. the changes will be properly checked before reviews are requested.
Operator ClusterRole rule removals
nodeslist/watch- not needed; onlynodes/proxygetis required for cluster domain detectionpodscreate/delete/get/list/patch/update/watch- operator does not manage Pod resources directly (it manages DaemonSets)secretscreate/delete/get/list/patch/update/watch- operator does not manage Secret resourcesendpointscreate/delete/get/list/patch/update/watch- operator does not manage Endpoints resourcesconfigmaps/servicesupdate- not needed; the operator uses Server-Side Apply (create+patch), notupdateserviceaccountsupdate/watch- not needed; SSA and orphan cleanup do not requireupdateorwatchrolebindingsupdate/watch- not needed; same reason asserviceaccountsdaemonsetsupdate- not needed; same reason (SSA, notupdate)jobscreate/get/list/patch/update/watch- operator does not manage Job resourcescustomresourcedefinitionsget(outside maintenance guard) - not needed as a standalone verb;listandwatch(now always present) are sufficient for the startup conditionopaclusterspatch- not needed; the operator only patches the status subresource, not the resource itselfProduct ClusterRole rule removals
configmapsget- the workload pods access ConfigMaps via volume mounts (handled by the kubelet), not via the Kubernetes API.list/watchretained because the bundle-builder sidecar needs them (see TODO in clusterrole-product.yaml).secrets/serviceaccountsget/list/watch- the workload pods access these via volume mounts (handled by the kubelet), not via the Kubernetes APIevents.k8s.ioeventscreate/patch- neither OPA nor the user-info-fetcher sidecar emit Kubernetes eventsOPA bundle builder ClusterRole rule removals