GitHub Actions paths: запускать workflow для выбранных файлов

Категория: Backend · Язык: YAML · Обновлено:

Фильтр paths ограничивает запуск workflow перечнем изменённых файлов. В монорепозитории это сокращает лишние сборки, когда изменение не касается конкретного приложения. ????? ??????????? ?????????? ???????? ?????? ??????? ? ????????? ?????? ? ??????? ?????.

Рабочий пример

YAML
on:
  pull_request:
    paths:
      - 'frontend/**'
      - 'package-lock.json'
      - '.github/workflows/frontend.yml'
  push:
    paths-ignore:
      - 'docs/**'
      - '*.md'

Шаблоны задаются относительно корня репозитория. paths запускает workflow при совпадении хотя бы с одним шаблоном; paths-ignore пропускает запуск для исключённых файлов.

Частый вопрос

Как отреагировать на изменения двух приложений?

Добавьте оба пути в paths. Изменение, совпавшее с несколькими шаблонами, запускает workflow один раз.