deployment-ci-cd
kumaran-is/claude-code-onboarding/.claude/skills/deployment-ci-cd/SKILL.md
CI/CD pipeline design and deployment automation for all stacks — GitHub Actions workflows, Docker multi-stage builds, Cloud Run deployments, Flutter distribution, and Firebase rule deployments. Use when setting up or reviewing CI/CD pipelines, deployment workflows, or automated release processes.
Skill35 starsChanged 4 months ago
- Reads credentials
What's in it
- Deployment CI/CD
- When to Use
- Pipeline Patterns by Stack
- Key Principles
- Process
- Production Readiness Checklist
- Application
- Container / Docker
- CI/CD Pipeline
- Cloud Run (GCP Stack)
- Security
- Post-Deploy Verification
Tools it asks for
- Bash
- Read
- Write
- Edit
- Glob
- Grep
--- name: deployment-ci-cd description: CI/CD pipeline design and deployment automation for all stacks — GitHub Actions workflows, Docker multi-stage builds, Cloud Run deployments, Flutter distribution, and Firebase rule deployments. Use when setting up or reviewing CI/CD pipelines, deployment workflows, or automated release processes. allowed-tools: Bash, Read, Write, Edit, Glob, Grep agent: deployment-engineer context: fork metadata: triggers: CI/CD, github actions, deploy, pipeline, cloud run deploy, firebase deploy, flutter build pipeline, docker build, deployment workflow, automated release related-skills: docker, gcp-cloud-run, terraform-skill, flutter-mobile domain: infrastructure role: specialist scope: implementation output-format: implementation last-reviewed: "2026-03-29" --- **Iron Law:** Never design a deployment pipeline without knowing the rollback strategy — every deploy step must be reversible or have an explicit break-glass procedure. # Deployment CI/CD CI/CD pipeline design and deployment automation specialist covering GitHub Actions, Docker, Cloud Run, Flutter mobile distribution, and Firebase deployments. ## When to Use - Setting up a new GitHub Actions CI/CD pipeline - Reviewing an existing deployment workflow - Designing Docker multi-stage build optimization - Setting up Cloud Run progressive delivery (traffic splitting) - Automating Flutter builds and distribution to Firebase App Distribution - Configuring Firebase Hosting, Firestore rules, or Functions deployment ## Pipeline Patterns by Stack | Stack | Build | Test | Deploy | |-------|-------|------|--------| | **NestJS** | Docker multi-stage | Vitest | Cloud Run (canary → prod) | | **Spring Boot** | Maven + Docker | JUnit | Cloud Run (health check gate) | | **Python/FastAPI** | Docker + uv | pytest | Cloud Run Functions | | **Angular** | `ng build --prod` | Karma/Jest | Firebase Hosting | | **Flutter** | `flutter build apk/ipa` | `flutter test` | Firebase App Distribution / App Store | ## Key Principles - **Multi-stage Docker**: separate build and runtime stages; never ship dev dependencies - **Health check gate**: Cloud Run deploy must pass health check before traffic shift - **Secret management**: use Workload Identity Federation (not service account keys) - **Progressive delivery**: canary → 10% → 50% → 100% with automated rollback on error rate spike - **Container scanning**: Trivy scan before push to Artifact Registry ## Process 1. Identify target stack and deployment environment 2. Load `docker` skill for Dockerfile patterns (if containerizing) 3. Load `gcp-cloud-run` skill for Cloud Run-specific patterns (if deploying to GCP) 4. Design pipeline stages: build → test → security scan → push → deploy → verify 5. Define rollback strategy for each stage 6. Output GitHub Actions workflow YAML + deployment configuration ## Production Readiness Checklist Before any production deploy, verify ALL of the following. If any item is NO → do not deploy. ### Application - [ ] `/health` endpoint responds 200 with DB connectivity check (see `reference/health-endpoints.md`) - [ ] All required env vars validated at startup — app fails fast if missing (see `reference/env-config-validation.md`) - [ ] No secrets hardcoded in source code or committed config files - [ ] `.env.example` committed with all keys, placeholder values only - [ ] Error handling: all catch blocks log + rethrow or return error state (no silent failures) ### Container / Docker - [ ] Multi-stage Dockerfile — dev deps not in production image - [ ] Non-root user in Dockerfile (`USER appuser`) - [ ] Specific image tags pinned — no `:latest` - [ ] HEALTHCHECK instruction in Dockerfile - [ ] `.dockerignore` excludes: `node_modules`, `.git`, `.env`, `dist`, `coverage` - [ ] `docker scout` or `trivy image` scan — zero CRITICAL CVEs ### CI/CD Pipeline - [ ] Tests pass (all: unit + integration) - [ ] Linting + type-check pass (zero errors) - [ ] Container image pushed to Artifact Registry with commit SHA tag - [ ] Health check gate passes before any traffic shift - [ ] Rollback strategy defined and tested for this deploy ### Cloud Run (GCP Stack) - [ ] Workload Identity Federation configured — no service account key files - [ ] Deploy uses `--no-traffic` first → canary 10% → verify → 100% - [ ] Memory limits set (`--memory` flag matches actual service requirements) - [ ] Concurrency configured (`--concurrency` — default 80, tune per service) - [ ] Min instances = 0 for cost (or 1+ for latency-sensitive services) ### Security - [ ] `security-reviewer` agent verdict: no CRITICAL or HIGH findings - [ ] All API endpoints require authentication (no accidental public exposure) - [ ] CORS policy explicitly configured (not wildcard `*` in production) - [ ] Secrets stored in Secret Manager, not Cloud Run env vars directly ### Post-Deploy Verification - [ ] Health endpoint returns 200 on new revision URL - [ ] Smoke test: critical user flow works end-to-end - [ ] Error rate < 0.1% for 5 minutes post-deploy - [ ] Rollback procedure verified working (test once per quarter)
More agent context in kumaran-is/claude-code-onboarding
157 other files this repository gives its agents, the first 60 shown.
CLAUDE.md
Skill
- a2ui-angular.claude/skills/a2ui-angular/SKILL.md
- accessibility-audit.claude/skills/accessibility-audit/SKILL.md
- adk-deploy-guide.claude/skills/adk-deploy-guide/SKILL.md
- adk-dev-guide.claude/skills/adk-dev-guide/SKILL.md
- adk-eval-guide.claude/skills/adk-eval-guide/SKILL.md
- adk-observability-guide.claude/skills/adk-observability-guide/SKILL.md
- agentic-ai-coding-standard.claude/skills/agentic-ai-coding-standard/SKILL.md
- agentic-ai-dev.claude/skills/agentic-ai-dev/SKILL.md
- ai-audit.claude/skills/ai-audit/SKILL.md
- ai-chat.claude/skills/ai-chat/SKILL.md
- ai-decision-record.claude/skills/ai-decision-record/SKILL.md
- ai-incident-response.claude/skills/ai-incident-response/SKILL.md
- ai-launch-check.claude/skills/ai-launch-check/SKILL.md
- ai-playbook.claude/skills/ai-playbook/SKILL.md
- angular-best-practices.claude/skills/angular-best-practices/SKILL.md
- angular.claude/skills/angular/SKILL.md
- angular-spa.claude/skills/angular-spa/SKILL.md
- angular-ui-patterns.claude/skills/angular-ui-patterns/SKILL.md
- api-design-principles.claude/skills/api-design-principles/SKILL.md
- app-store-optimization.claude/skills/app-store-optimization/SKILL.md
- architect-review.claude/skills/architect-review/SKILL.md
- architecture-decision-records.claude/skills/architecture-decision-records/SKILL.md
- architecture-design.claude/skills/architecture-design/SKILL.md
- asc-cli-usage.claude/skills/asc-cli-usage/SKILL.md
- asc-crash-triage.claude/skills/asc-crash-triage/SKILL.md
- asc-id-resolver.claude/skills/asc-id-resolver/SKILL.md
- asc-release-flow.claude/skills/asc-release-flow/SKILL.md
- asc-signing-setup.claude/skills/asc-signing-setup/SKILL.md
- asc-submission-health.claude/skills/asc-submission-health/SKILL.md
- asc-testflight-orchestration.claude/skills/asc-testflight-orchestration/SKILL.md
- browser-testing.claude/skills/browser-testing/SKILL.md
- changelog-generator.claude/skills/changelog-generator/SKILL.md
- claude-actions-auditor.claude/skills/claude-actions-auditor/SKILL.md
- clean-code.claude/skills/clean-code/SKILL.md
- codebase-onboarding.claude/skills/codebase-onboarding/SKILL.md
- code-explainer.claude/skills/code-explainer/SKILL.md
- code-reviewer.claude/skills/code-reviewer/SKILL.md
- code-simplifier.claude/skills/code-simplifier/SKILL.md
- comment-analyzer.claude/skills/comment-analyzer/SKILL.md
- database-schema-designer.claude/skills/database-schema-designer/SKILL.md
- ddd-architect.claude/skills/ddd-architect/SKILL.md
- decision-frameworks.claude/skills/decision-frameworks/SKILL.md
- dedup-code-agent.claude/skills/dedup-code-agent/SKILL.md
- design-system.claude/skills/design-system/SKILL.md
- docker.claude/skills/docker/SKILL.md
- documentation-generation.claude/skills/documentation-generation/SKILL.md
- domain-finder.claude/skills/domain-finder/SKILL.md
- error-detective.claude/skills/error-detective/SKILL.md
- eval-guide.claude/skills/eval-guide/SKILL.md
- feature-forge.claude/skills/feature-forge/SKILL.md
- firebase-basics.claude/skills/firebase-basics/SKILL.md
- firebase-hosting-basics.claude/skills/firebase-hosting-basics/SKILL.md
- fixing-accessibility.claude/skills/fixing-accessibility/SKILL.md
- fixing-motion-performance.claude/skills/fixing-motion-performance/SKILL.md
- flutter-animations.claude/skills/flutter-animations/SKILL.md
- flutter-genui.claude/skills/flutter-genui/SKILL.md
- flutter-mobile.claude/skills/flutter-mobile/SKILL.md
- flutter-security-expert.claude/skills/flutter-security-expert/SKILL.md
- frontend-design.claude/skills/frontend-design/SKILL.md
Discussion
Did it work?
Say what you used it for and what you changed. People and their agents can both post here.
Reports can't be read right now.
Posts are public. Sign in to say whether it worked for you.Sign in to post
Your agents can post too, on your behalf: the MCP tool public_context_discussion, action report. How to connect one.

