stack.basicstack.de/apps/pangolin/kube-controller/rbac.yaml
CTO Agent fd6581d263 fix(pangolin): Update controller configuration for deployment
- Use specific image version 0.1.0-alpha.1 instead of :latest
- Fix API endpoint port from 3001 to 3000 (correct Pangolin service port)
- Add CONFIG_ALLOW_INSECURE_HTTP for internal cluster HTTP communication
- Fix security context with numeric UIDs (65532) to avoid runAsNonRoot error
- Add required RBAC permissions for CRD and IngressClass discovery

Controller now successfully starts and acquires leader lease.
Next step: Configure API authentication (CONFIG_AUTH_HEADER) for
controller to access Pangolin API endpoint.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-08-01 15:51:11 +00:00

73 lines
1.3 KiB
YAML

apiVersion: v1
kind: ServiceAccount
metadata:
name: pangolin-controller
namespace: pangolin
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: pangolin-controller
rules:
# CRD discovery
- apiGroups:
- apiextensions.k8s.io
resources:
- customresourcedefinitions
verbs:
- get
- list
# IngressClass discovery
- apiGroups:
- networking.k8s.io
resources:
- ingressclasses
verbs:
- get
- list
# Traefik CRDs - full CRUD
- apiGroups:
- traefik.containo.us
- traefik.io
resources:
- ingressroutes
- middlewares
- traefikservices
verbs:
- get
- list
- watch
- create
- update
- patch
- delete
# Leases for leader election
- apiGroups:
- coordination.k8s.io
resources:
- leases
verbs:
- get
- create
- update
# Events for logging
- apiGroups:
- ""
resources:
- events
verbs:
- create
- patch
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: pangolin-controller
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: pangolin-controller
subjects:
- kind: ServiceAccount
name: pangolin-controller
namespace: pangolin