Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
64 changes: 44 additions & 20 deletions chart/templates/02-rbac.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,60 +10,67 @@ metadata:
name: k8s-overcommit-clusterrole
rules:
- apiGroups:
- '*'
- ""
resources:
- '*'
- events
verbs:
- create
- patch
- update
- apiGroups:
- ""
resources:
- pods
verbs:
- get
- list
- watch
- apiGroups:
- ""
resources:
- events
- namespaces
verbs:
- create
- patch
- update
- get
- list
- watch
- apiGroups:
- ""
resources:
- services
- namespaces
verbs:
- create
- delete
- get
- list
- watch
- delete
- update
- patch
- update
- watch
- apiGroups:
- admissionregistration.k8s.io
resources:
- mutatingwebhookconfigurations
- validatingwebhookconfigurations
verbs:
- create
- delete
- get
- list
- watch
- delete
- update
- patch
- update
- watch
- apiGroups:
- apps
resources:
- deployments
- replicasets
verbs:
- create
- delete
- get
- list
- delete
- patch
- update
- watch
- update
- apiGroups:
- cert-manager.io
resources:
Expand All @@ -77,9 +84,9 @@ rules:
- update
- watch
- apiGroups:
- overcommit.inditex.dev
- coordination.k8s.io
resources:
- "*"
- leases
verbs:
- create
- delete
Expand All @@ -89,9 +96,10 @@ rules:
- update
- watch
- apiGroups:
- "coordination.k8s.io"
- overcommit.inditex.dev
resources:
- leases
- overcommitclasses
- overcommits
verbs:
- create
- delete
Expand All @@ -100,6 +108,22 @@ rules:
- patch
- update
- watch
- apiGroups:
- overcommit.inditex.dev
resources:
- overcommitclasses/finalizers
- overcommits/finalizers
verbs:
- update
- apiGroups:
- overcommit.inditex.dev
resources:
- overcommitclasses/status
- overcommits/status
verbs:
- get
- patch
- update
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
Expand All @@ -125,4 +149,4 @@ roleRef:
subjects:
- kind: ServiceAccount
name: {{ $.Values.serviceAccount.name }}
namespace: {{ $.Values.namespace }}
namespace: {{ $.Values.namespace }}
16 changes: 1 addition & 15 deletions docs/architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -274,21 +274,7 @@ func CalculateResources(limits corev1.ResourceList, class OvercommitClass) corev

### RBAC Permissions

The operator requires minimal permissions:

```yaml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: manager-role
rules:
- apiGroups: [""]
resources: ["pods"]
verbs: ["get", "list", "watch"]
- apiGroups: ["overcommit.inditex.dev"]
resources: ["overcommits", "overcommitclasses"]
verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]
```
The controller ClusterRole is defined in `config/rbac/role.yaml` (generated from kubebuilder markers). The Helm chart uses the same explicit rules, plus `namespaces` get/list/watch for label lookups, and keeps the binding to the built-in `view` ClusterRole for owner resolution.

### Certificate Management

Expand Down
Loading