name: Ночной полный прогон dev # Тонкий вызывающий файл (#623). Для этого события GitHub берёт workflow из # ветки по умолчанию (`main`), поэтому здесь только то, что обязано жить там: # триггеры, run-name, права и concurrency. Тело — `_nightly.yml` по ссылке # `@dev`: правка конвейера — один коммит в `dev`, зеркало в `main` не нужно. # Этот файл меняется, только когда меняются сами триггеры или потолок прав; # тогда он зеркалится в `main`, и preflight `workflow_sync` (validate.yml) # держит копии равными. on: # 02:17 UTC, не на круглой минуте: старты «ровно в час/полчаса» GitHub # откладывает на часы (факт — 07:42–08:05 при плане 02:30, #658). schedule: - cron: '17 2 * * *' workflow_dispatch: {} permissions: actions: write contents: read jobs: # Потолок прав тела: объединение job-level прав `_nightly.yml`. Вызываемый # workflow может права только сузить, поэтому каждая его job по-прежнему # получает свой прежний минимум (#556), а шире этого набора не получит никто. dev: permissions: actions: write contents: read uses: Matysh/houseplan-card/.github/workflows/_nightly.yml@dev # #623: тело конвейера из dev secrets: inherit