CI/CD
CI/CD or CICD is the combined practices of continuous integration (CI) and (more often) continuous delivery or (less often) continuous deployment (CD)
- CI/CD is a method to frequently deliver apps to customers by introducing automation into the stages of app development
The Ideal CI/CD Pipeline
Source:
- Require X reviewers
Build:
- Compile source and dependencies
- Run unit tests
- Check and enforce code coverage % (90+)
Test Environment:
- Run Integration tests
Staging Environment:
Prod Environment (1box) (10% traffic):
- Alarms on Errors, Latency, Key Business Metrics
- Bake Period: 24 hours
- Anomaly Detection
- Error counts + Latency Breaches
- Canary
Prod Environment:
- Alarms on Errors, Latency, Key Business Metrics
- Bake Period: 24 hours
- Anomaly Detection
- Error counts + Latency Breaches
- Canary