Level 6 · Cloud Computing, DevOps and Cybersecurity · Course 6.3 DevOps and Operations
Module 71: CI/CD
Goal: make every change to your CRM build, test and deploy itself the same careful way every time, using GitHub Actions, with quality gates that stop bad changes and a quick way back when something slips through.
You'll need: your CRM on GitHub, its tests (Modules 29, 46 and 59), the containerised set-up and deploy script from Modules 69 and 70, and a staging server.
Lessons
- 1Principles of CI/CD15–25 minutes✓
- 2Automated builds15–25 minutes✓
- 3GitHub Actions15–25 minutes✓
- 4Tests and quality gates15–25 minutes✓
- 5Pipelines and rollback15–25 minutes✓
🛠️Module practice: Project C, part 1, an automated pipeline
- A CI workflow on every pull request: install, typecheck, lint, migrate, test with a real database, build, audit.
- Branch protection on
mainrequiring the CI check. - A deploy workflow: build and push a commit-tagged image, deploy to staging, smoke-test.
- A production job that needs your approval, with secrets in a GitHub environment.
- A tested rollback workflow and a note in your operations guide on how to use it.
✅Module check
Explain in a few sentences, in your own words:
What is CI/CD, and how does it make releases safer?
Show a good answer
A good answer mentions: small changes integrated often and automatically built and tested on clean machines (exact dependencies, type checks, lint, real-database tests); quality gates (tests, audits, secret scanning, review) made compulsory with branch protection, kept fast and free of flaky tests; images built once and tagged by commit; deployment to staging with smoke tests before an approved production release; secrets stored in GitHub environments with least privilege; and a practised rollback workflow, with every deploy recorded.
📝Module quiz
10 questions · 10 marks each · 100 marks in all · pass mark 70% · retry as often as you like ·
