kazzle.config.ts. Jeden komponent może mieć tyle wyzwalaczy, ile potrzebujesz.
Struktura
processModeokreśla cykl życia — długotrwały serwer lub jednorazowe uruchomienie na wyzwalacz.triggers[]wymienia zdarzenia, które powinny uruchomić ten komponent.
processMode
Wyzwalacze
Każdy wyzwalacz maname (unikalną w obrębie komponentu), kind i — w zależności od trybu — schedule i/lub path.
Tryb persistent — HTTP do serwera
Gdy wyzwalacz uruchamia się dla komponentu persistent, Kazzle POSTuje do serwera na zadeklarowanejpath. Żądanie zawiera:
W przypadku wyzwalaczy webhook, oryginalna treść żądania jest przekazywana jako treść POST. W przypadku wyzwalaczy schedule treść jest pusta.
Tryb triggered — jednorazowo na wyzwalacz
Gdy wyzwalacz uruchamia się dla komponentutriggered, Kazzle uruchamia skrypt wejściowy od nowa i czeka na jego zakończenie. Nie ma path; skrypt dowiaduje się, który wyzwalacz się uruchomił, z zmiennych środowiskowych.
Adresy URL webhooków
triggerName musi odpowiadać wpisowi kind: 'webhook' w triggers[] tego komponentu. Nieznane nazwy wyzwalaczy zwracają 404.
Rozdzielczość harmonogramu
Wyrażenia cron mają 5 pól (minuta, godzina, dzień miesiąca, miesiąc, dzień tygodnia) i rozdzielczość minutowa to minimum. Harmonogramy poniżej minuty są odrzucane podczas walidacji manifestu.Jak są rejestrowane uruchomienia
Każde uruchomienie wyzwalacza zapisuje wierszprocess_runs z trigger_name, triggered_by, run_id i statusem wyjścia uruchomienia. Możesz je odpytać z własnego kodu lub sprawdzić w widoku uruchomień aplikacji.
Brak kredytów
Nieudane uruchomienie jest rejestrowane i logowane, ale harmonogram nadal działa w normalnym tempie — niestabilne uruchomienie nigdy nie wyłącza wyzwalacza. Jedyną rzeczą, która zatrzymuje uruchomienie, są kredyty: każde uruchomienie wyzwalacza jest sprawdzane względem salda Space’u, a gdy Space nie ma kredytów (lub nie ma skonfigurowanego rozliczenia), uruchomienia są pomijane z kodem402. To się samo naprawia — harmonogram pozostaje aktywny i następne uruchomienie po uzupełnieniu kredytów działa normalnie, bez ręcznego wznowienia.
Dodawanie automatyzacji później
Prosta aplikacja może zacząć bez wyzwalaczy i zyskać je później — dodaj codzienne podsumowanie, połącz Stripe, uruchom czyszczenie. Cykl życia komponentu (processMode) i wyzwalacze (triggers[]) są niezależne, więc możesz je zmienić bez przepisywania reszty aplikacji.