18.3. Webhook テンプレートの作成
Webhook テンプレートは、Webhook のトリガー時に、設定されたターゲットに対して HTTP リクエストの本文を生成するために使用されます。次の手順を使用して、Satellite web UI で Webhook テンプレートを作成します。
手順
- Satellite Web UI で、Administer > Webhook > Webhook Templates に移動します。
- Clone an existing template または Create Template をクリックします。
- テンプレートの名前を入力します。
エディターを使用して、テンプレートペイロードに変更を加えます。
Webhook HTTP ペイロードは、Satellite テンプレート構文を使用して作成する必要があります。Webhook テンプレートは、イベントのメインオブジェクトを表すことができる
@object
と呼ばれる特別な変数を使用できます。特定のイベントの場合、@object
が欠落する可能性があります。@payload
変数を使用して、実際にどのデータが利用可能であるかを判断できます。詳細については、ホストの管理 の テンプレートの 記述リファレンス を参照してください。使用可能なテンプレートマクロとメソッドについては、Satellite Server の
/templates_doc
にアクセスしてください。- オプション: 説明と監査コメントを入力します。
- 組織とロケーションを割り当てます。
- Submit をクリックします。
例
Webhook テンプレートを作成するときは、テンプレートの対象となるターゲットアプリケーションの形式に従う必要があります。たとえば、アプリケーションでは、Webhook メッセージを含む テキスト
フィールドが想定できます。Webhook テンプレートの形式の詳細は、対象アプリケーションのドキュメントを参照してください。
- リモート実行ジョブの実行
この Webhook テンプレートは、リモート実行ジョブの ID と結果を含むメッセージを定義します。このテンプレートを使用する Webhook は、
Actions Remote Execution Run Host Job Succeeded
またはActions Remote Execution Run Host Job Failed
などのイベントにサブスクライブできます。{ "text": "job invocation <%= @object.job_invocation_id %> finished with result <%= @object.task.result %>" }
- ユーザーの作成
この Webhook テンプレートは、作成されたユーザーのログインとメールを含むメッセージを定義します。このテンプレートを使用する Webhook は、
User Created
イベントにサブスクライブする必要があります。{ "text": "user with login <%= @object.login %> and email <%= @object.mail %> created" }