Centralize shared CI logic in one workflow file.

Section: Matrix, reuse, and services

Call a reusable workflow

yaml
yaml
jobs:
  ci:
    uses: my-org/my-repo/.github/workflows/reusable-ci.yml@main
    with:
      node-version: 20
    secrets: inherit
Explanation

Reusable workflows reduce duplication across repos and teams.

Learn the surrounding workflow

Compare similar commands or jump into common fixes when this command is part of a bigger troubleshooting path.

Related commands

Same sheet · prioritizing Matrix, reuse, and services
Test across multiple Node versions
Use a strategy matrix for version coverage.
OpenIn sheetyamlsame section
Run on multiple operating systems
Validate portability across Linux, macOS, and Windows.
OpenIn sheetyamlsame section
Start a PostgreSQL service container
Run integration tests against a database service.
OpenIn sheetyamlsame section
Composite action metadata
Bundle repeated shell steps into a reusable local action.
OpenIn sheetyamlsame section
Check out repository code
Fetch the repo in a workflow job.
Set up Node.js
Install a specific Node.js version for the job.