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

  1. Source: Code commit triggers pipeline
  2. Build: Compile and package application
  3. Test: Run automated tests
  4. Security Scan: SAST, DAST, dependency scanning
  5. Deploy to Staging: Test in production-like environment
  6. 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