К каждой задаче можно привязать хуки — команды, выполняемые по событию. Хук наследует окружение задачи и получает служебные переменные.
Доступные события
| Событие | Когда |
|---|---|
on_start | перед запуском задачи |
on_success | код возврата 0 |
on_failure | код возврата != 0 или таймаут |
on_retry | перед повторной попыткой |
Переменные окружения
| Переменная | Значение |
|---|---|
KV_JOB | имя задачи |
KV_CODE | код возврата (для on_success/on_failure) |
KV_ATTEMPT | номер попытки, начиная с 1 |
KV_LOG | путь к журналу задачи |
Пример
jobs:
- name: nightly-report
schedule: "daily 02:30"
cmd: ./bin/report.sh
hooks:
on_failure: |
curl -s -X POST "$WEBHOOK" -d "упал nightly-report, попытка $KV_ATTEMPT"
Хук не ретраит саму задачу — повторами управляет
retries.