ジョブ・テンプレートのコールバックでエフェメラル・ホストによる新しいジョブの起動を許可。
get
/api/v2/job_templates/{id}/callback/
このリソースにPOSTするホストを構成し、host_config_key
パラメータを渡して、リクエスト元のホストのみに制限された新しいジョブを開始するようにします。 次の各例では、N
パラメータをジョブ・テンプレートのid
に置き換え、HOST_CONFIG_KEY
をジョブ・テンプレートに関連付けられたhost_config_key
に置き換えてください。
たとえば、curlを使用する場合は次のようになります。
curl -H "Content-Type: application/json" -d '{"host_config_key": "HOST_CONFIG_KEY"}' http://server/api/v2/job_templates/N/callback/
または、wgetを使用する場合は次のようになります。
wget -O /dev/null --post-data='{"host_config_key": "HOST_CONFIG_KEY"}' --header=Content-Type:application/json http://server/api/v2/job_templates/N/callback/
extra_vars
をコールバックに渡すこともできます。
curl -H "Content-Type: application/json" -d '{"host_config_key": "HOST_CONFIG_KEY", "extra_vars": {"key": "value"}}' http://server/api/v2/job_templates/N/callback/
レスポンスは、リクエストが有効な場合はステータス202を返し、ホスト構成キーが無効な場合は403を返し、リクエストを行っているアドレスからホストを特定できない場合は400を返します。
(Ansible Tower 2.0.0の新機能)関連付けられたインベントリにupdate_on_launch
フラグが設定されている場合、かつ、update_cache_timeout
の期限が切れた場合、コールバックはインベントリ同期を実行して、一致するホストを探します。
GETリクエストを使用して、正しいホストが選択されることを確認できます。 このリクエストは、ジョブ・テンプレートを編集する権限を持つ有効なユーザーとして認証される必要があります。 たとえば:
curl http://user:password@server/api/v2/job_templates/N/callback/
レスポンスには、ホスト構成キーと、リクエストと一致するホスト名が含まれます。
{
"host_config_key": "HOST_CONFIG_KEY",
"matching_hosts": ["hostname"]
}
リクエスト
サポートされているメディア・タイプ
- application/json
パス・パラメータ
問合せパラメータ
- page(オプション): 整数
ページ区切りが設定された結果セット内のページ番号。
- page_size(オプション): 整数
ページごとに返す結果の数。
- search(オプション): 文字列
検索条件。
レスポンス
サポートされているメディア・タイプ
- application/json
200レスポンス
レスポンスの例(application/json)
{
"host_config_key":"foo",
"matching_hosts":[
]
}