コンポーネント
コンポーネントはアプリの実行可能な部分です。各コンポーネントには、実行方法を決定するtype があります。
UI コンポーネント
UI コンポーネントは Web フロントエンド — React、Vue、Svelte、プレーン HTML、またはポートで提供される任意のフレームワークです。- アプリあたり最大 1 つ — Kazzle はアプリごとに 1 つのプレビュー URL を割り当てます
runtime.dev.command— dev サーバーのコマンド(「プレビューを開始」で使用)runtime.prod.build— 本番イメージをビルドするコマンドruntime.prod.command— 本番プロセスコンポーネントを開始するコマンド
runtime.dev.command が設定されていない場合、プレビューシステムは package.json から bun run dev を実行します。
プロセスコンポーネント
プロセスコンポーネントはバックエンドサービス、ワーカー、またはスケジュール済みタスクです。ライフサイクル: processMode
プロセスコンポーネントには 2 つのライフサイクルのいずれかがあります:
processMode: 'persistent'(デフォルト)— 長時間実行される HTTP サーバー。トリガーは実行中のサーバーの宣言されたpathに POST されます。processMode: 'triggered'— エントリスクリプトはトリガーごとにスポーンされて終了します。本番環境でアイドル状態のマシンはありません。
トリガー
スケジュールと Webhook トリガーはコンポーネント上で宣言されます。1 つのコンポーネントは多くのトリガーを持つことができます。各トリガーにはname(コンポーネント内で一意)と kind があります。
path は processMode: 'persistent' に必須です。processMode: 'triggered' の場合は省略され、スクリプトは環境から TRIGGER_NAME を読み取ります。
トリガーモデル、環境変数契約、HTTP 認証ヘッダーの詳細については、オートメーションを参照してください。
ランタイムコマンド
ドラフトプレビューパッケージスクリプトは
kazzle run -- <command> を使用できるため、Kazzle はローカルポートと兄弟コンポーネント URL を注入できます。本番プロセスコンポーネントは、デプロイが本番イメージでそのコマンドを実行するため、runtime.prod.command に実際のコマンドを宣言する必要があります。