Files
claude-code/dashboard/deploy/argocd-application.yaml
OpenCode Test 5646508adb feat: Implement Phase 2 dashboard for K8s agent system
Lightweight Go-based dashboard for Raspberry Pi cluster:

Backend:
- chi router with REST API
- Embedded static file serving
- JSON file-based state storage
- Health checks and CORS support

Frontend:
- Responsive dark theme UI
- Status view with nodes, alerts, ArgoCD apps
- Pending actions with approve/reject
- Action history and audit trail
- Workflow listing and manual triggers

Deployment:
- Multi-stage Dockerfile (small Alpine image)
- Kubernetes manifests with Pi 3 tolerations
- Resource limits: 32-64Mi memory, 10-100m CPU
- ArgoCD application manifest
- Kustomize configuration

API endpoints:
- GET /api/status - Cluster status
- GET/POST /api/pending - Action management
- GET /api/history - Action audit trail
- GET/POST /api/workflows - Workflow management

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-26 11:34:36 -08:00

46 lines
986 B
YAML

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: k8s-agent-dashboard
namespace: argocd
labels:
app.kubernetes.io/name: k8s-agent-dashboard
app.kubernetes.io/part-of: k8s-agent-system
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
project: default
source:
# Update this to your GitOps repo
repoURL: https://gitea.example.com/user/gitops-repo.git
targetRevision: HEAD
path: apps/k8s-agent-dashboard
destination:
server: https://kubernetes.default.svc
namespace: k8s-agent
syncPolicy:
automated:
prune: true
selfHeal: true
allowEmpty: false
syncOptions:
- CreateNamespace=true
- PrunePropagationPolicy=foreground
- PruneLast=true
retry:
limit: 5
backoff:
duration: 5s
factor: 2
maxDuration: 3m
# Health checks
ignoreDifferences:
- group: apps
kind: Deployment
jsonPointers:
- /spec/replicas