cicd

CI/CD pipeline patterns and deployment strategies for automated, reliable software delivery. Use when the user asks to design a build pipeline, choose a deployment model (blue-green, canary, rolling), configure environment promotion, manage build artifacts, implement zero-downtime deployments, set up quality gates, or improve delivery workflow speed and reliability. Covers pipeline stage ordering, test parallelization, caching, secrets in CI, and rollback strategies.

krzysztofsurdy/code-virtuoso36 installsMITSynced Aug 27

Works with

Claude CodeCursorCodex CLIGitHub CopilotGemini CLI
---
name: cicd
description: CI/CD pipeline patterns and deployment strategies for automated, reliable software delivery. Use when the user asks to design a build pipeline, choose a deployment model (blue-green, canary, rolling), configure environment promotion, manage build artifacts, implement zero-downtime deployments, set up quality gates, or improve delivery workflow speed and reliability. Covers pipeline stage ordering, test parallelization, caching, secrets in CI, and rollback strategies.
license: MIT
---

# CI/CD Pipeline Patterns and Deployment Strategies

Continuous Integration, Continuous Delivery, and Continuous Deployment form a spectrum of automation practices. Each builds on the previous one, progressively reducing manual intervention between a code change and its availability to users.

## CI vs CD vs CD

| Practice | What It Automates | Gate to Next Stage |
|---|---|---|
| **Continuous Integration** | Merging, building, and testing code on every commit | Automated tests must pass before merge |
| **Continuous Delivery** | Packaging and promoting artifacts through environments | Manual approval before production deployment |
| **Continuous Deployment** | Full path from commit to production without manual steps | Automated quality gates replace human approval |

Continuous Integration is the foundation. Without reliable, fast integration, neither delivery nor deployment is sustainable. Start here and expand outward.

---

## Pipeline Design Principles

A well-designed pipeline gives developers fast, trustworthy feedback while preventing broken code from reaching users.

| Principle | Meaning |
|---|---|
| **Fast feedback** | Run the cheapest, fastest checks first - lint and unit tests before integration tests and builds |
| **Fail early** | Stop the pipeline at the first failure - do not waste time on downstream stages when upstream checks fail |
| **Reproducibility** | Every pipeline run with the same inputs must produce the same outputs - pin dependencies, use immutable base images |
| **Idempotency** | Re-running a pipeline stage should be safe and produce the same result |
| **Isolation** | Each pipeline run operates in a clean environment - no shared state between runs |
| **Security by default** | Secrets are injected at runtime, never stored in source - scan for vulnerabilities early |

---

## Deployment Strategies Overview

| Strategy | Downtime | Rollback Speed | Infrastructure Cost | Complexity | Best For |
|---|---|---|---|---|---|
| **Blue-Green** | Zero | Instant (traffic switch) | 2x production | Low | Major releases, risk-averse teams |
| **Canary** | Zero | Fast (route traffic back) | 1x + small canary slice | Medium | Data-driven teams, high-traffic services |
| **Rolling** | Zero (if surge configured) | Slow (reverse rollout) | 1x (reuses existing) | Low | Stateless services, frequent small changes |
| **Recreate** | Yes (brief) | Slow (full redeploy) | 1x | Minimal | Dev/staging environments, stateful apps that cannot run two versions |
| **Feature Flags** | Zero | Instant (toggle off) | 1x | Medium | Progressive rollout, A/B testing, trunk-based development |

No single strategy fits every situation. Many teams combine approaches - for example, canary releases with feature flags for granular control over who sees new functionality.

---

## Environment Management Overview

A typical promotion path moves artifacts through increasingly production-like environments:

```
dev -> staging -> production
```

Key principles:
- **Artifact immutability** - Build once, deploy the same artifact everywhere. Never rebuild for each environment.
- **Configuration separation** - Environment-specific values (database URLs, API keys, feature toggles) live outside the artifact.
- **Parity** - Staging should mirror production as closely as possible in infrastructure, data shape, and scale.
- **Ephemeral environments** - Spin up isolated environments per pull request for testing and review, then tear them down automatically.

---

## Quick Reference: Pipeline Anti-Patterns

| Anti-Pattern | Problem | Fix |
|---|---|---|
| Rebuilding artifacts per environment | Different binary in staging vs production | Build once, promote the same artifact |
| Long-running monolithic pipeline | Slow feedback, developers context-switch | Parallelize stages, split into focused pipelines |
| Secrets in source control | Credential leaks, compliance violations | Use a secrets manager, inject at runtime |
| Manual environment setup | Configuration drift, "works on my machine" | Infrastructure as code, containerized builds |
| No rollback plan | Extended outages when deployments fail | Automate rollback, test it regularly |
| Skipping staging | Production-only bugs discovered too late | Always promote through at least one pre-production environment |

---

## Reference Files

| Reference | Contents |
|---|---|
| [Pipeline Design](references/pipeline-design.md) | Pipeline stages, parallelization, caching, monorepo patterns, secrets management with multi-format examples |
| [Deployment Strategies](references/deployment-strategies.md) | Blue-green, canary, rolling deployments, feature flags, zero-downtime migrations, rollback strategies |
| [Environment Management](references/environment-management.md) | Environment promotion, infrastructure as code, ephemeral environments, artifact versioning, health checks |

---

## Integration with Other Skills

| Situation | Recommended Skill |
|---|---|
| Monitoring and observability for deployments | Install `knowledge-virtuoso` from `krzysztofsurdy/code-virtuoso` for microservices patterns (circuit breakers, health checks) |
| Security scanning in pipelines | Install `knowledge-virtuoso` from `krzysztofsurdy/code-virtuoso` for security practices (OWASP, secure coding) |
| Testing strategy for CI pipelines | Install `knowledge-virtuoso` from `krzysztofsurdy/code-virtuoso` for testing pyramid and test design |
| API versioning during deployments | Install `knowledge-virtuoso` from `krzysztofsurdy/code-virtuoso` for API design and evolution strategies |

More Performance skills

seo-audit

coreyhaines31/marketingskills

When the user wants to audit, review, or diagnose SEO issues on their site. Also use when the user mentions "SEO audit," "technical SEO," "why am I not ranking," "SEO issues," "on-page SEO," "meta tags review," "SEO health check," "my traffic dropped," "lost rankings," "not showing up in Google," "site isn't ranking," "Google update hit me," "page speed," "core web vitals," "crawl errors," or "indexing issues." Use this even if the user just says something vague like "my SEO is bad" or "help with SEO" — start with an audit. For building pages at scale to target keywords, see programmatic-seo. For adding structured data, see schema. For AI search optimization, see ai-seo.

195.1k

competitor-profiling

coreyhaines31/marketingskills

When the user wants to research, profile, or analyze competitors from their URLs. Also use when the user mentions 'competitor profile,' 'competitor research,' 'competitor analysis,' 'profile this competitor,' 'analyze competitor,' 'competitive intelligence,' 'competitor deep dive,' 'who are my competitors,' 'competitor landscape,' 'competitor dossier,' 'competitive audit,' or 'research these competitors.' Input is a list of competitor URLs. Output is structured competitor profile markdown files. For creating comparison/alternative pages from profiles, see competitors. For sales-specific battle cards, see sales-enablement.

65.8k

vercel-optimize

vercel-labs/agent-skills

Use for Vercel cost and performance optimization on deployed projects, especially Next.js, SvelteKit, Nuxt, and limited Astro apps. Collect Vercel metrics, usage, project config, and code scan results first; investigate only metric-backed candidates; produce ranked recommendations grounded in verified files and version-aware Vercel/framework docs. Trigger for Vercel bill reduction, slow or expensive routes, caching opportunities, Function Invocations, Build Minutes, Fast Data Transfer, Core Web Vitals, Bot Management, Fluid compute, or cost breakdown requests.

59.3k

← All Performance skills

Check your AI visibility

One URL in, a 0–100 score and the exact fixes out.

RUN THE CHECK

Browse all the tools

15 tools across six categories
13 of them never send your data anywhere

Free · No signup · No trial clock

SEE THE DIRECTORY