CI Workflow Patterns (DRY Reference)
All dashboard workflows follow this structure. Keep patterns consistent:
--- Python Backend Tests ---
Checkout → Setup Python → Cache Python → Install deps → Run tests
--- Frontend Tests ---
Checkout → Setup Node → Cache Node → Install deps → Run tests
--- Build Image ---
Checkout → Build & push to registry → Stream to NAS
--- Deploy ---
Checkout → Sync compose → Deploy → Health check → Smoke tests
Cache key prefixes:
deploy.yml (main): python, node
deploy-dev.yml (dev): python-dev, node-dev
Image names:
deploy.yml (main): nas-dashboard:${GITEA_SHA}
deploy-dev.yml (dev): nas-dashboard-dev:${GITEA_SHA}