GitHub Actions matrix: проверить несколько версий Node.js
strategy.matrix запускает job для нескольких версий Node.js без копирования шагов. Это проверяет совместимость с поддерживаемыми runtime на каждом push или pull request. ????? ??????????? ?????????? ???????? ?????? ??????? ? ????????? ?????? ? ??????? ?????.
Рабочий пример
jobs:
test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
node-version: [20, 22]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- run: npm ci
- run: npm testGitHub создаёт отдельный job для каждой версии. fail-fast: false позволяет увидеть результаты остальных комбинаций даже после ошибки одной версии.
Частый вопрос
Как добавить Windows в матрицу?
Добавьте список os и задайте runs-on через matrix.os. Число jobs станет произведением количества версий Node и операционных систем.