Building CI/CD Pipelines
Current State
!ls .github/workflows/*.yml .gitlab-ci.yml Jenkinsfile .circleci/config.yml 2>/dev/null || echo 'No CI/CD config found'
Overview
Generate CI/CD pipeline configurations for GitHub Actions, GitLab CI, Jenkins, CircleCI, and Azure DevOps. Produce multi-stage workflows covering linting, testing, building container images, security scanning, and deploying to staging/production with proper gating and rollback mechanisms.
Prerequisites
- Git repository hosted on a supported platform (GitHub, GitLab, Bitbucket, Azure DevOps)
- Container runtime (Docker) if building images
- Target deployment environment credentials configured as pipeline secrets
- Test suite that can run headlessly (
npm test, pytest, go test, etc.)
- Understanding of branching strategy (trunk-based, GitFlow, or environment branches)
Instructions
- Scan the project for existing CI/CD configuration files (
.github/workflows/, .gitlab-ci.yml, Jenkinsfile, .circleci/config.yml)
- Identify the application stack: language, framework, test runner, package manager, and deployment target
- Define pipeline stages:
lint -> test -> build -> security-scan -> deploy-staging -> integration-test -> deploy-production
- Generate the pipeline configuration file with appropriate triggers (push to main, PR events, tags)
- Add caching for dependencies (
node_modules, .pip-cache, Go modules) to reduce build times
- Configure matrix builds for multiple language versions or OS targets where appropriate
- Add secret references for deployment credentials, container registry tokens, and API keys (never hardcode)
- Implement deployment gates: manual approval for production, automated rollback on health check failure
- Add status badges and notifications (Slack, email) for build results
- Validate the pipeline syntax using platform-specific tools (
actionlint, gitlab-ci-lint)
Output
- Pipeline configuration files (
.github/workflows/*.yml, .gitlab-ci.yml, Jenkinsfile)
- Dockerfile for container builds (multi-stage, minimal base image)
- Deployment scripts or Kubernetes manifests referenced by the pipeline
- Environment-specific variable files for staging vs. production
Error Handling
| Error |
Cause |
Solution |
Pipeline triggered but no jobs run |
Trigger conditions (paths, branches) do not match |
Review on: / only: / rules: filte
Ready to use ci-cd-pipeline-builder?
|