IntermediateTopic 53 of 104Software & Computing
CI/CD
Automated building, testing and deployment pipelines.
In depth
Continuous integration builds and tests every commit automatically; continuous delivery/deployment releases validated builds to staging or production with minimal manual steps. Pipelines (GitHub Actions, Jenkins, GitLab CI) include linting, tests, security scans, packaging and rollout strategies (blue-green, canary).
Key points
- Fast feedback
- Infrastructure as code
- Feature flags
ExampleA merge to main triggers tests and an automatic deploy to staging.
Continuous integration and delivery automate building, testing and release, which reduces manual errors and speeds up delivery.
What is CI/CD?
Automated building, testing and deployment pipelines.
Why is it important to understand CI/CD?
Continuous integration and delivery automate building, testing and release, which reduces manual errors and speeds up delivery.
What is continuous integration?
Developers merge code often, and an automated build and test run checks each change.
What is continuous delivery?
Every change that passes the pipeline can be released to production quickly, often with a manual approval step before release.
How is CI/CD used in practice?
Typical applications include running tests automatically on every commit to a shared repository, building and deploying a web app to a test environment after approval and checking code style and security scans in the pipeline before merge.
What should I learn before CI/CD?
Study "Code review and refactoring" first (topic 52 of 104 in Software & Computing). It covers the groundwork this topic builds on.
What are the key points of CI/CD?
Fast feedback. Infrastructure as code. Feature flags.
Can you give an example of CI/CD?
A merge to main triggers tests and an automatic deploy to staging.
What comes after CI/CD?
The next topic is "Software architecture patterns", which builds directly on this one.
How difficult is CI/CD?
It is classed as Intermediate in Software & Computing (topic 53 of 104). It is an intermediate topic. Work through the beginner topics in Software & Computing first.