C
CI/CD (Continuous Integration/Continuous Delivery)
CI/CD is a DevOps practice that automates the building, testing, and deployment of applications through pipelines.
What is CI/CD?
Continuous Integration (CI) and Continuous Delivery/Deployment (CD) are DevOps practices that automate the software development lifecycle. CI automates building and testing code changes, while CD automates deployment to various environments.
CI/CD Pipeline Stages
- Source: Code commit triggers pipeline
- Build: Compile and package application
- Test: Run automated tests
- Security Scan: SAST, DAST, dependency scanning
- Deploy to Staging: Test in production-like environment
- Deploy to Production: Release to end users
CI/CD Tools
Jenkins, GitHub Actions, GitLab CI, Azure DevOps, CircleCI, and ArgoCD for GitOps.
Common Misconceptions
- "CI/CD is just automation" - Cultural shift required
- "One pipeline fits all" - Different apps need different pipelines
- "CI/CD eliminates testing" - Enables more testing