>_ IzzyLab

Практическое задание

Матрица сборки

сложно

В /root/ci.yml (GitHub Actions) опиши job test со strategy.matrix, перебирающей версии в переменной node (например [18, 20, 22]).

Что потренируешь:
  • github actions
  • strategy.matrix
  • матрица сборки
  • matrix-контекст
  • yaml

Разбор темы

strategy.matrix разворачивает один job в несколько параллельных экземпляров под каждое значение параметра — способ прогнать одно и то же для набора версий без копипасты. Матрица задаётся ключом strategy: рядом с runs-on/steps, внутри которого matrix: — объект, где ключ это имя переменной, а значение — список вариантов; внутри steps к текущему значению обращаются через контекст ${{ matrix.<имя> }}. Добавление второй оси даёт декартово произведение всех комбинаций, а по умолчанию fail-fast: true отменяет остальные варианты при первом падении.

Что проверяется

  1. YAML валиден
  2. Матрица задана

Как это выглядит