1. Courses
  2. DevOps: CI/CD, Containers and Infrastructure as Code
  3. Capstone

Capstone project for DevOps: CI/CD, Containers and Infrastructure as Code

Automate delivery for the order service

Mangrove Market's order service (a NestJS API with PostgreSQL and Redis) is deployed by hand twice a month, a release takes an afternoon, and about one release in three breaks checkout and is fixed by another manual deploy. Ken, the engineering manager, wants the team to be able to deploy any commit on main safely, several times a day, before the festival season. Build the delivery system for it: use a small open-source NestJS or Node API of your own as a stand-in for the order service, a local Kubernetes cluster (kind or minikube) and Terraform or OpenTofu against a local or free-tier target, and measure the result.

What you hand in

  1. A CI/CD pipeline as code (GitHub Actions) that lints, tests with a database service, scans, builds and pushes an image on every change
  2. A Dockerfile and Kubernetes manifests with probes, resource requests and limits, a non-root user and a rollout strategy
  3. Infrastructure as code for one environment with remote state and a plan posted to pull requests
  4. A release plan with a canary or blue-green step, metric gates and automatic rollback, plus a feature flag for one risky change
  5. A one-page delivery report: the DORA metrics before and after (real or simulated), and the next improvement

Check your work

Tick each item when your project meets it. Be strict: this is the rubric the reviewer uses.

  • Every change is built, tested and scanned before it can be deployed, and the pipeline gives feedback in about 10 minutes or less
  • No long-lived cloud keys or registry passwords live in the pipeline: it uses OIDC or short-lived tokens, least-privilege permissions and pinned third-party actions
  • The image is small, runs as non-root and is referenced by digest or an immutable tag; the manifests have readiness probes and resource limits
  • Infrastructure changes go through a reviewed plan, state is remote and locked, and drift is detected
  • A bad release is detected by metrics and rolled back automatically, without a human deciding first
  • Lead time, deployment frequency and change fail rate are measured from data, with a baseline and a target

0 of 6 checked

Model answer

The model answer opens once your capstone passes the review, so you can compare your work with an outline of a strong submission.

Hand in your capstone

Your links are checked automatically, then the work is scored against the rubric above, item by item, with comments. A pass counts toward the course certificate and shows on your profile.

Loading…