GitHub Actions

GitHub's built-in CI/CD automation, triggered by repository events.

CurrentintermediateGuide only -- no course yet

Overview

GitHub Actions runs automated workflows (tests, builds, deployments) directly from a GitHub repository, triggered by events like a push or pull request, defined in YAML files committed alongside the code. It's a common default choice specifically because it requires no separate CI service.

What it is
GitHub's built-in automation platform for running CI/CD workflows triggered by repository events.
Why it's used
It's built into GitHub with no separate service to configure, and the workflow definitions live in the same repo as the code.
Where it fits
A specific implementation of CI/CD, for teams already hosting code on GitHub -- this platform's own CI pipeline is built this way.

Core concepts

  • Workflow YAML files
  • Triggers (push, pull_request)
  • Jobs and steps
  • Actions from the marketplace

Example

This is close to what this platform's own .github/workflows/ci.yml actually does: check out the code, install dependencies, and run tests, on every push.

on: [push]
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: npm ci && npm test

Common use cases

  • Automated testing on GitHub-hosted repositories
  • Automated releases and deployments

Project ideas

  • Write a minimal GitHub Actions workflow that runs a project's test suite on every push

Official references