Триггеры рабочих процессовNew
Триггер рабочего процесса — это событие, которые вызывает выполнение рабочего процесса раннером.
Вы можете настроить рабочие процессы так, чтобы они запускались при выполнении определенных действий на GitVerse, в запланированное время или при наступлении события за пределами GitVerse.
Некоторые события имеют несколько типов активности. Для таких событий можно указать, какие типы активности будут вызывать запуск рабочего процесса.
pull_request
Пример запуска для события pull_request
в .yaml-файл:
name: Демонстрация защиты ветки
on:
pull_request: # job'ы будет запущены при создании и обновлении запроса
jobs:
build-test:
name: CICD branch protection
runs-on: ubuntu-latest
steps:
- name: Display pull request title
schedule
New
Условия выполнения:
- Событие срабатывает, только если файл рабочего процесса находится в ветке по умолчанию.
- Запланированные процессы выполняются только в ветке по умолчанию.
- В публичных репозиториях такие процессы отключаются автоматически, если не было активности в течение 60 дней.
- Некоторые действия в репозитории могут сменить пользователя-инициатора (
actor
) процесса. - Если у отключённого процесса пользователь с правами
write
изменит расписание (cron
), то процесс будет повторно активирован, а этот пользователь станет новымactor
.
Пример запуска по расписанию (используется cron-синтаксис стандарта POSIX):
on:
schedule:
- cron: "15 4,5 * * *" # <=== Измените это значение
Cron-синтаксис использует пять полей, разделенных пробелами. Каждое поле — единица времени:
┌───────────── минута (0 - 59)
│ ┌───────────── час (0 - 23)
│ │ ┌───────────── день месяца (1 - 31)
│ │ │ ┌───────────── месяц (1 - 12 или JAN-DEC)
│ │ │ │ ┌───────────── день недели (0 - 6 или SUN-SAT)
│ │ │ │ │
* * * * *
Допустимые операторы
Оператор | Описание | Пример |
---|---|---|
* | любое значение | 15 * * * * — 15-я минута каждого часа |
, | список значений | 2,10 4,5 * * * — 2 и 10 мин. 4 и 5 часов |
- | диапазон значений | 30 4-6 * * * — 30 мин. 4–6 часов |
/ | шаг значений | 20/15 * * * * — каждые 15 мин. начиная с 20-й |
Поддерживается специфичный синтаксис вида: @yearly
, @monthly
, @weekly
, @daily
, @hourly
.
Для генерации cron можно использовать crontab guru (opens in a new tab) или примеры cron (opens in a new tab).
Перечень терминов и определений
- Термин хеш коммита.
- Термин SHA, Secure Hash Algorithm.