World map

 

BM: Baca dalam Bahasa Melayu

World C1: Pipeline Thinking

CI, delivery or deployment?

You will learn: the difference between CI, continuous delivery and continuous deployment.

Checked with GitHub Actions 2026-10 on 31 Oct 2026

The problem

Aina’s team says, “We do CD.” Ben’s team says it too. Aina presses a button to ship. Ben’s team never does. Who is right?

Pick one answer.

Try it

Run it. The tests pass, then the van waits. Approve it to ship.

Run it. When a job waits for you, check it and approve.

What happened on GitHub

Workflow file .github/workflows/ship.yml

name: Ship
on:
push:
branches: [main]
permissions:
contents: read
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- run: npm ci && npm test
deploy:
needs: test
runs-on: ubuntu-latest
environment: production
steps:
- uses: actions/checkout@v7
- run: npm ci && npm run build
- run: npm run deploy
env:
CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }}

The line

Push to main · main

Every passing change is packed and ready. A person says when it ships. That is continuous delivery: The van is packed and waiting. Every change that passes can ship, and a person says go..

Predict

Now remove the reviewer from production. The tests pass. What happens next?

Pick one answer.

Watch

Pick an event. Press Run and watch the line.

What happened on GitHub

Workflow file .github/workflows/ship.yml

name: Ship
on:
push:
branches: [main]
permissions:
contents: read
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- run: npm ci && npm test
deploy:
needs: test
runs-on: ubuntu-latest
environment: production
steps:
- uses: actions/checkout@v7
- run: npm ci && npm run build
- run: npm run deploy
env:
CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }}

The line

Push to main · main

No button, no waiting. Every change that passes goes live. That is continuous deployment: The van drives off by itself: every change that passes goes live, with no button.. Press Run to see it.

Try it

CI, delivery or deployment? Sort each sentence.

Drag a card into a box. Or tap the card, then tap the box.

        Check

        A clinic’s booking app must have a manager sign off each release. Which one fits?

        Pick one answer.

        You did it!

        You can now tell CI, continuous delivery and continuous deployment apart.

        Go deeper (optional)

        All three need CI first. Continuous deployment needs the most trust in tests. In GitHub, a required reviewer is the “person says go” step. Free plans allow it in public repos.

        Real rep (optional): in a public repo, open Settings, then Environments. Add production with you as reviewer. Then add environment: production to a deploy job.