CI/CD for Infrastructure

Continuous Integration

In software engineering, continuous integration (CI) is the practice of merging all developer working copies to a shared mainline several times a day. -

Continuous Delivery

Continuous delivery (CD) is a software engineering approach in which teams produce software in short cycles -

Continous Deployment

Continuous deployment (CD) is a software engineering approach in which software functionalities are delivered frequently through automated deployments. -

Positive Feedback Loop

Branching Strategies

  1. Trunk-based, commit to trunk
  2. Trunk-based with short-lived feature branches
  3. Trunk-based with versioned release branches


Immutable Artifacts


  • Static analysis
  • Dry run
  • System tests



  • Continuous Isolation
  • Testing features by drifting environments
  • Delaying the pain of deploying to production
  • Relying on manual gating to avoid automated testing