Skip to content

[18-stable] Remove unnecessary pods RBAC permissions - #2005

Merged
openshift-merge-bot[bot] merged 1 commit into
openstack-k8s-operators:18-stablefrom
openshift-cherrypick-robot:cherry-pick-2003-to-18-stable
Jul 29, 2026
Merged

[18-stable] Remove unnecessary pods RBAC permissions#2005
openshift-merge-bot[bot] merged 1 commit into
openstack-k8s-operators:18-stablefrom
openshift-cherrypick-robot:cherry-pick-2003-to-18-stable

Conversation

@openshift-cherrypick-robot

Copy link
Copy Markdown

This is an automated cherry-pick of #2003

/assign stuggi

OpenStackClient's workload rbacRules granted full CRUD on core Pods to the
ServiceAccount mounted into the OpenStackClient pod itself. That pod's
entrypoint is a bare `sleep infinity` - any capability comes from what an
admin runs interactively via exec, not from Kubernetes API access, so this
grant is unnecessary and is removed entirely. The operator's own
kubebuilder marker for pods on this same controller is untouched: it's
independently justified by OpenStackClientReconciler directly
creating/patching/deleting and watching (Owns(&corev1.Pod{})) that pod.

Also narrow two dataplane controllers to their real usage:
- OpenStackDataPlaneNodeSetReconciler only lists Pods (raw clientset,
  diagnostic listing of failed-deployment pods). Narrow its marker from
  full CRUD to list.
- OpenStackDataPlaneDeploymentReconciler had no pods marker of its own at
  all, despite GetAnsibleExecutionSummary listing Pods via the cached
  client (needs list;watch for the informer) to build the ansible
  execution summary. It only worked by relying on the nodeset
  controller's now-narrowed marker via the ClusterRole merge - add its own
  list;watch marker so a future change to the nodeset controller can't
  silently break it.

config/rbac/role.yaml is unchanged: OpenStackClient's own marker already
grants full CRUD on pods for a real, direct need, so the merged ClusterRole
doesn't shrink. The change is scoped to what gets delegated to workload
ServiceAccounts and to per-controller marker correctness.

Signed-off-by: Martin Schuppert <mschuppert@redhat.com>

@stuggi stuggi left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

@openshift-ci openshift-ci Bot added the lgtm label Jul 29, 2026
@openshift-ci

openshift-ci Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: openshift-cherrypick-robot, stuggi

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-merge-bot
openshift-merge-bot Bot merged commit d3bba9e into openstack-k8s-operators:18-stable Jul 29, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants