Commit Graph

2 Commits

Author SHA1 Message Date
jasonwitty
f89e312b05 Fail fast with a clear error when KUBECONFIG secret is missing
All checks were successful
Validate and Deploy to K3s / validate (push) Successful in 18s
Validate and Deploy to K3s / deploy (push) Successful in 31s
An unset secret expands to empty, base64 -d writes a zero-byte kubeconfig,
and kubectl falls back to localhost:8080 with a misleading connection
error. Guard both jobs and echo the current context after configuring.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-26 03:28:46 -07:00
jasonwitty
96e1825629 Add Gitea Actions deploy pipeline + deployer RBAC
- .gitea/workflows/deploy.yaml: PRs run a server-side dry-run; pushes to
  main apply the kustomization and wait for all rollouts. Modeled on
  socktop-webterm's pipeline; uses the same KUBECONFIG secret convention
  and gitea-deployer ServiceAccount.
- rbac/gitea-deployer.yaml: ClusterRole/Binding (admin bootstrap, outside
  the root kustomization) — repo resource kinds only, no secrets access,
  no delete verbs, no RBAC escalation. Applied to the cluster 2026-07-26.
- One-time env->secretKeyRef migration executed against the cluster;
  README updated.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-26 02:37:49 -07:00