kubeclaw/config/deploy/rbac.yaml
Marcus (agent-cos) ece81f651c feat: full kubeclaw operator — CRDs, controllers, deploy manifests, Helm chart
- 7 CRDs (Agent, AgentConfig, AgentGroup, Channel, Provider, WorkflowTemplate, CompliancePolicy)
- 3 controllers (Agent, WorkflowTemplate, CompliancePolicy)
- Generated deepcopy methods (controller-gen v0.16.5)
- Dockerfile (multi-stage Go build)
- Nix build-image.nix (dockerTools.streamLayeredImage)
- Helm chart with RBAC, deployment, service account
- Deploy manifests (RBAC + controller deployment)
- Sample manifests for all 7 CRDs
- Quickstart script
- Successfully deployed to k3s on n97-mini:
  - Controller running and reconciling
  - All 7 CRDs registered
  - Agent CR creates Pod (ErrImagePull expected — no agent image yet)
  - Controller logs show reconciliation working
2026-05-12 17:08:31 -07:00

46 lines
No EOL
1.5 KiB
YAML

---
apiVersion: v1
kind: ServiceAccount
metadata:
name: kubeclaw-controller
namespace: scobleclaw
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: kubeclaw-controller
rules:
- apiGroups: ["kubeclaw.scoble.me"]
resources: ["agents", "agentconfigs", "agentgroups", "channels", "providers",
"workflowtemplates", "compliancepolicies"]
verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]
- apiGroups: ["kubeclaw.scoble.me"]
resources: ["agents/status", "agentconfigs/status", "agentgroups/status",
"channels/status", "providers/status",
"workflowtemplates/status", "compliancepolicies/status"]
verbs: ["get", "update", "patch"]
- apiGroups: ["kubeclaw.scoble.me"]
resources: ["agents/finalizers"]
verbs: ["update"]
- apiGroups: [""]
resources: ["pods", "configmaps", "serviceaccounts"]
verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]
- apiGroups: [""]
resources: ["secrets"]
verbs: ["get", "list", "watch"]
- apiGroups: ["apps"]
resources: ["deployments"]
verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: kubeclaw-controller
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: kubeclaw-controller
subjects:
- kind: ServiceAccount
name: kubeclaw-controller
namespace: scobleclaw