kazzle.config.ts. Один компонент може мати стільки тригерів, скільки вам потрібно.
Структура
processModeвизначає життєвий цикл — довгоживучий сервер або одноразовий запуск на тригер.triggers[]перелічує події, які мають запустити цей компонент.
processMode
Тригери
Кожен тригер маєname (унікальне в межах компонента), kind та — залежно від режиму — schedule та/або path.
Режим Persistent — HTTP у сервер
Коли тригер спрацьовує для постійного компонента, Kazzle надсилає POST на ваш сервер за оголошенимpath. Запит містить:
Для вебхук-тригерів тіло оригінального запиту пересилається як тіло POST. Для тригерів розкладу тіло порожнє.
Режим Triggered — одноразово на тригер
Коли тригер спрацьовує для компонентаtriggered, Kazzle запускає скрипт входу заново та чекає його завершення. Немає path; скрипт дізнається, який тригер спрацював, з змінних середовища.
URL вебхуків
triggerName має збігатися з записом kind: 'webhook' у triggers[] цього компонента. Невідомі імена тригерів повертають 404.
Роздільна здатність розкладу
Крон-вирази мають 5 полів (хвилина, година, день місяця, місяць, день тижня) і мінутна роздільна здатність — мінімум. Розклади з роздільною здатністю менше хвилини відхиляються під час перевірки маніфесту.Як записуються запуски
Кожне спрацювання тригера записує рядокprocess_runs з trigger_name, triggered_by, run_id та статусом завершення запуску. Ви можете запитати їх з вашого коду або переглянути їх у представленні запусків додатку.
Вичерпання кредитів
Невдалий запуск записується та логується, але розклад продовжує працювати за звичайним графіком — ненадійний запуск ніколи не вимикає тригер. Єдине, що зупиняє запуск — це кредити: кожне спрацювання тригера перевіряється проти балансу простору, і поки простір без кредитів (або не має налаштованого біллінгу), запуски пропускаються з402. Це самовідновлюється — розклад залишається активним і наступне спрацювання після поповнення запускається нормально, без ручного відновлення.
Додавання автоматизації пізніше
Простий додаток може почати без тригерів і отримати їх пізніше — додайте щоденне резюме, підключіть Stripe, запустіть очистку. Життєвий цикл компонента (processMode) та тригери (triggers[]) незалежні, тому ви можете змінити їх без переписування решти додатку.