0Pricing
Node.js Backend Development Bootcamp · Lesson

CI/CD Pipelines with GitHub Actions

Automate testing and deployment of your Node.js app by building a continuous integration and delivery pipeline with GitHub Actions.

CI/CD Pipelines with GitHub Actions is a free Node.js Backend Development Bootcamp lesson on CoddyKit — lesson 4 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the Node.js Backend Development Bootcamp learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.

What is CI/CD?

Continuous Integration (CI) automatically builds and tests your code on every push. Continuous Delivery/Deployment (CD) automatically ships passing code to production.

Together they catch bugs early and remove manual, error-prone release steps.

Why GitHub Actions?

GitHub Actions runs workflows directly in your repository. There is no separate server to manage, it integrates with pull requests, and it has a generous free tier for public repos.

Workflow File Location

Workflows are YAML files inside .github/workflows/. Each file describes one workflow, and a repo can have many.

// .github/workflows/ci.yml

Triggers

The on key defines what starts a workflow. Common triggers are pushes and pull requests to specific branches.

name: CI
on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

Jobs and Runners

A workflow has one or more jobs. Each job runs on a fresh virtual machine (a runner) you select with runs-on.

jobs:
  test:
    runs-on: ubuntu-latest

Steps

A job is a sequence of steps. A step either runs a shell command (run) or uses a prebuilt action (uses).

    steps:
      - uses: actions/checkout@v4
      - run: echo 'Code checked out'

Setting Up Node.js

The official setup-node action installs the Node version you specify and can cache dependencies for faster runs.

      - uses: actions/setup-node@v4
        with:
          node-version: 20
          cache: npm

Installing and Testing

With Node ready, install dependencies and run your test suite. If tests fail the job fails, blocking the merge.

      - run: npm ci
      - run: npm test

A Complete CI Workflow

Here is a full, minimal pipeline that checks out code, sets up Node, installs, and tests on every push and pull request.

name: CI
on: [push, pull_request]
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with: { node-version: 20, cache: npm }
      - run: npm ci
      - run: npm test

Secrets

Never commit API keys. Store them in your repo's Settings > Secrets and reference them with the secrets context. They are masked in logs.

      - run: ./deploy.sh
        env:
          API_KEY: ${{ secrets.API_KEY }}

Adding a Deploy Step

For CD, add a job that runs only after tests pass and only on the main branch, then deploys. The needs and if keys control ordering and conditions.

  deploy:
    needs: test
    if: github.ref == 'refs/heads/main'
    runs-on: ubuntu-latest
    steps:
      - run: echo 'Deploying...'

Quick Check

Test your CI/CD knowledge.

Recap

You built an automated pipeline with GitHub Actions:

  • Workflows live in .github/workflows/ as YAML
  • on sets triggers; jobs run on runs-on runners
  • Steps use prebuilt actions or run shell commands
  • Install with npm ci and run npm test automatically
  • Store credentials in secrets and gate deploys with needs + if

Now every push is tested and safe code can ship automatically.

Frequently asked questions

Is the “CI/CD Pipelines with GitHub Actions” lesson free?

Yes — the full text of “CI/CD Pipelines with GitHub Actions” is free to read here on the web, and the Node.js Backend Development Bootcamp course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the Node.js Backend Development Bootcamp course, upgrade to CoddyKit PRO.

What will I learn in “CI/CD Pipelines with GitHub Actions”?

Automate testing and deployment of your Node.js app by building a continuous integration and delivery pipeline with GitHub Actions. You practise Node.js Backend Development Bootcamp with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.

Do I need any experience to start Node.js Backend Development Bootcamp?

No prior experience is required. Node.js Backend Development Bootcamp on CoddyKit is structured for beginners through advanced learners; this is — lesson 4 of 4, so you can start here or from the beginning and move at your own pace.

How long does the “CI/CD Pipelines with GitHub Actions” lesson take?

Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.

Can I write and run code in this Node.js Backend Development Bootcamp lesson?

Yes. Every Node.js Backend Development Bootcamp lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.

All lessons in this course

  1. Containerization with Docker
  2. Cloud Deployment (AWS/Heroku)
  3. Process Management with PM2
  4. CI/CD Pipelines with GitHub Actions
← Back to Node.js Backend Development Bootcamp