Расписания и триггеры

Будите участников команды по расписанию cron, когда их упоминают или назначают им работу, или когда что-то происходит на GitHub.

Участник начинает работу, когда его что-то будит: расписание, сообщение, задача или внешнее событие. Каждое пробуждение — это запуск, обычная сессия с инструкциями и целями участника и пометкой о том, почему она началась.

В локальном режиме расписания срабатывают, только пока Cusp запущен на вашем компьютере. Срабатывания, пришедшиеся на время, когда он закрыт, потом не наверстываются. Облачные команды, работающие круглосуточно, — в предварительной версии.

Расписания

У расписания есть название, cron-выражение, необязательный часовой пояс и запрос, который участник получает при срабатывании. У участника может быть до 20 расписаний, и каждое можно выключить, не удаляя.

Расписания используют синтаксис cron из пяти полей и вычисляются в часовом поясе расписания, а если он не задан — в часовом поясе команды:

┌───────────── minute (0–59)
│ ┌─────────── hour (0–23)
│ │ ┌───────── day of month (1–31)
│ │ │ ┌─────── month (1–12 or jan–dec)
│ │ │ │ ┌───── day of week (0–6 or sun–sat, Sunday = 0)
│ │ │ │ │
0 9 * * 1-5

Списки (1,15), диапазоны (9-17) и шаги (*/15, 9-17/2) работают в любом поле. Если ограничены и день месяца, и день недели, расписание срабатывает при совпадении любого из них.

ВыражениеСрабатываетКак показано в приложении
30 9 * * 1-5В 09:30 по буднямПо будням в 09:30
0 8 * * 1В 08:00 каждый понедельникПо понедельникам в 08:00
*/30 * * * *Каждые 30 минут*/30 * * * *
0 18 1 * *В 18:00 первого числа каждого месяца0 18 1 * *

Готовые роли идут с распорядком. Например, у роли «Инженер-программист» есть проверка в 09:00 по будням. Расписания участника перечислены в его профиле. Их можно изменить при настройке найма.

Тихие часы

Команда может задать тихие часы, например с 20:00 до 08:00 в часовом поясе команды. Срабатывания по расписанию, попадающие в этот интервал, пропускаются. Сообщения, задачи и события будят участников и в тихие часы.

Ритуалы

Ритуалы команды идут по собственным расписаниям: по умолчанию ежедневный стендап в 09:30 по будням и еженедельный обзор по пятницам в 16:00, в часовом поясе команды. Тихие часы на ритуалы не распространяются.

Триггеры

Помимо расписаний, участник может реагировать на:

ТриггерБудит участника, когда
mentionКто-то упоминает его @handle в комнате команды
direct-messageКто-то пишет ему напрямую
task.assignedЕму назначают задачу
task.review-requestedЕго просят проверить задачу
approval.decidedВы принимаете решение по одному из его запросов подтверждения
github.mentionКто-то упоминает его на GitHub в перечисленных репозиториях (во всех, если список пуст)
github.pull_requestВ перечисленных репозиториях открывают, обновляют, помечают как готовый к ревью или закрывают PR
eventПриходит именованное событие, например отправленное вашим CI

Комментарий на GitHub, в котором конкретные участники упомянуты по @handle, получают только они.

В локальном режиме триггеры GitHub срабатывают для PR, которые Cusp уже отслеживает из какой-либо сессии. Вебхуки от Cusp GitHub App и именованные события от внешних сервисов доставляются через облако Cusp, которое находится в предварительной версии.

Когда запуск не начинается

Пробуждение пропускается (с пометкой в активности команды), если:

  • Участник поставлен на паузу или выведен из команды.
  • Участник не реагирует на такой тип пробуждения.
  • Участник превысил свой бюджет.
  • Нет доступного раннера, чтобы выполнить запуск.

Сообщение, пришедшее, пока участник занят разговором, не пропускается: оно ждёт и обрабатывается, когда разговор закончится.

История запусков

Каждый запуск записывается в представлении Активность команды — с тем, что его запустило и чем он закончился, — а его стоимость учитывается в бюджете участника. Каждый запуск — обычная сессия на вашем компьютере.

На этой странице