Continuous integration and delivery
Integrating and delivering continuously: a build and tests on every push, fast feedback, a main branch that is always releasable, pipeline stages, the artifact, and the difference between continuous delivery and continuous deployment.
- 27 cards
- 5 topics
- Free
The outline, topic by topic
Each topic is weighted the way the exam weighs it.
- Concepts
- Questions
- Sort and link
- Scenarios
- Understand
A few cards from the deck
Continuous integration: what is it?
Show the answer
The practice of merging one's work into the main branch very often, each push automatically triggering the build and the tests.
Conflicts and regressions are found minutes after the change, while the author still remembers what they did.
A developer pushes a commit to the main branch. What does continuous integration trigger?
- The build and the tests, with no human action
- A mandatory code review by another member of the team
- A release to production after the project manager has approved
- A full backup copy of the repository on another remote server
Show the answer
The build and the tests, with no human action
Continuous integration automates feedback: on every push, a server builds and tests. Review and release are other practices.
If the main branch turns red, the team's priority is to … it before merging anything else.
Show the answer
If the main branch turns red, the team's priority is to fix it before merging anything else.
Merging onto red piles changes on a broken base: nobody knows which change caused which failure.
Continuous delivery: what is it?
Show the answer
The practice of keeping the main branch always ready to go to production, the release itself remaining a human decision, one click away.
The team picks the moment, but releasing is neither risky nor long: the pipeline has already prepared and checked everything.
The main branch has been red for two days and everyone keeps pushing to it. What is the cause of the drift?
- The integration server is too slow to run all the tests
- The team pushes to the main branch far too often
- Nobody sees a failure as urgent: red has become normal
- The unit tests should be removed to free up the whole pipeline
Show the answer
Nobody sees a failure as urgent: red has become normal
A red pipeline that no longer worries anyone loses its purpose: a new failure goes unnoticed among the old ones. Push frequency is the principle of the practice, not its flaw.