Documentation

19. ワークフロージョブテンプレート

workflow job template (ワークフロージョブテンプレート) は、一連の各種ジョブテンプレートをリンクして、リリースプロセスに含まれていたジョブ全体を追跡するタスクを 1 つのユニットとして実行します。このようなリソースには以下が含まれます。

  • ジョブテンプレート
  • ワークフローテンプレート
  • プロジェクト同期
  • インベントリーソース同期

(templates-icon) メニューでは、現在利用可能なワークフローとジョブテンプレートのリストを表示します。デフォルトのビューは折りたたまれており(コンパクト)、テンプレート名、テンプレートタイプ、テンプレートを使用して実行したジョブのステータスが表示されていますが、展開 をクリックして更に情報を表示できます。このリストは、名前別にアルファベット順にソートされていますが、他の基準でソートしたり、さまざまなフィールドやテンプレートの属性別に検索できます。この画面から、ジョブテンプレートの起動 (launch)、コピー ( copy )、削除 ( delete ) が可能です。ジョブテンプレートを削除する前に、ワークフロージョブテンプレートで使用されていないことを確認してください。

ワークフローテンプレートにのみ、ワークフローエディターにアクセスするためのショートカットとしてワークフロービジュアライザーアイコン (wf-viz-icon) があります。

Wf templates - home with example wf template

注釈

ワークフローテンプレートは、ワークフローテンプレートのビルディングブロックとして使用できます。ワークフローテンプレートに含まれるパラメーターの多くで、Prompt on Launch (起動プロンプト) を有効にして、ワークフロージョブテンプレートレベルで変更でき、個別のワークフローテンプレートレベルで割り当てられた値に影響を与えることはありません。詳しくは、「 ワークフロービジュアライザー 」のセクションを参照してください。

19.1. ワークフローテンプレートの作成

新規ワークフロージョブテンプレートを作成するには、以下を実行します。

  1. オプションテンプレートの追加 add options template ボタンをクリックしてから、メニュー一覧より ワークフローテンプレート を選択します。

Wf templates - create new wf template

  1. 以下のフィールドに該当する詳細を入力します。
  • 名前: ワークフローテンプレートの名前を入力します。
  • 説明: 任意の説明を入力します (オプション)。
  • 組織: オプションでワークフローを関連付ける組織を入力するか、これを検索します。
  • インベントリー: オプションで現在ログインしている Tower ユーザーが利用できるインベントリーから、このワークフローテンプレートで使用するインベントリーを入力するか、検索します。
  • 起動プロジェクト: 選択されている場合は、このワークフローテンプレートの起動時または、ワークフローテンプレートが別のワークフローテンプレートで使用時に、インベントリーを提供できます。
  • ラベル: 「dev」または「test」などのこのワークフローテンプレートを説明するオプションのラベルを指定します。ラベルを使用して Tower ディスプレイにあるワークフローテンプレートおよび完了したジョブの分類およびフィルターを実行します。
    • ラベルは、ワークフローテンプレートに追加される際に作成されます。ラベルは、ワークフローテンプレートで提供されるプロジェクトを使用する単一の組織に割り当てられます。組織のメンバーは、(管理者ロールなどの) 編集パーミッションがある場合はワークフローテンプレートでラベルを作成できます。
    • ワークフローテンプレートが保存されると、ラベルはテンプレートの概要に表示されます。
    • ラベルの横にある「x」をクリックしてこれを削除します。ラベルが削除され、ワークフローまたはワークフローテンプレートの関連付けが解除されると、ラベルは組織ラベルの一覧から永久に削除されます。
    • ジョブは起動時にワークフローテンプレートからラベルを継承します。ラベルがワークフローテンプレートから削除される場合、ジョブからも削除されます。
_images/job-template-create-labels.png _images/job-template-saved-labels.png
  • オプション: 同時実行ジョブの有効化 をチェックしてこのワークフローの同時実行を可能にします。

  • 追加変数:

    • 追加のコマンドライン変数を Playbook に渡します。これは、ansible-playbook の -e または –extra-vars コマンドラインパラメーターで、これについては、Ansible Tower ドキュメント (Passing Variables on the Command Line ) に説明されています。

    • YAML または JSON のいずれかを使用してキー/値のペアを指定します。このような変数には、優先順位を示す最大値があり、他の場所で指定された他の変数よりも優先されます。値の例には、以下が含まれます。

      git_branch: production
      release_version: 1.5
      

    追加変数についての詳細は、追加変数 を参照してください。

    • 起動プロンプト: これが選択されている場合、デフォルト値が指定されている場合でも、起動時にコマンドライン変数を選択するようプロンプトが出されます。

注釈

スケジュールに extra_vars を指定可能にするには、ワークフローテンプレートの EXTRA VARIABLES起動プロンプト を選択するか、ワークフローテンプレートの Survey を有効にする必要があります。これにより、回答済みの Survey の質問が extra_vars に指定されます。

  1. ワークフローテンプレートの設定が完了したら、保存 をクリックします。

テンプレートを保存すると、ワークフローテンプレートのページが終了され、ワークフロービジュアライザーが開き、ワークフローをビルドできるようになります。詳しい情報は、「 ワークフロービジュアライザー」セクションを参照してください。ワークフローのビルドをしない場合には、ワークフロービジュアライザーを終了して、新たに保存したテンプレートの詳細タブに戻り、パーミッション、通知、スケジュールのレビュー、編集、追加を行うか、後ほど、完了したジョブの表示やワークフローテンプレートのビルドを実行します。

_images/wf-templates-wf-template-saved.png

新規に作成されたワークフローテンプレートが画面下部のテンプレートの一覧の表示される際に、テンプレートが保存されていることを確認できます。

Wf templates - newly added wf template

注釈

インベントリーがワークフローテンプレートに指定されている場合には、インベントリーがテンプレートリストビューに表示されます。

_images/wf-templates-list-default-inventory.png

19.2. パーミッションの使用

パーミッション をクリックすると、ユーザーおよびチームメンバーに関連付けられたパーミッションの確認、付与、編集および削除を実行できます。

_images/wf-template-completed-permissions-view.png

add ボタンをクリックし、このワークフローテンプレートの新規のパーミッションを作成します。

この例では、2 ユーザーと 1 チームが選択されており、それぞれにこのワークフローテンプレートのパーミッションが付与されています。

_images/wf-template-assign-permissions-view.png

チームとユーザー間を切り換える必要はなく、パーミッションを同時にどちらにも割り当てることができることに注意してください。

19.3. 通知の使用

通知 をクリックすると、設定した通知の統合を簡単に確認できます。

_images/wf-template-completed-notifications-view.png

通知が設定されていない場合には、グレーのボックスの上または、中から 通知 リンクをクリックして新規通知を追加または作成します。

_images/wf-template-no-notifications-blank.png

さまざまな通知タイプの設定に関する追加の情報は、「 通知 」を参照してください。

19.4. 完了したジョブの表示

完了したジョブ タブでは、実行したワークフローテンプレートの一覧が表示されます。展開 をクリックして、各ジョブのさまざまな情報を表示します。

_images/wf-template-completed-jobs-list.png

注釈

ワークフローレベルのインベントリーがランタイム時に指定された場合には、インベントリー名がジョブリストのワークフロージョブに表示されます。

_images/wf-template-completed-jobs-list-with-inventory.png

このビューから、ジョブID、ワークフロージョブの名前をクリックして、その内容が図で表示されます。以下の例では、141 - WF using JT のワークフロージョブのジョブ詳細が表示されます。

_images/wf-template-jobID-detail-example.png

ワークフローテンプレートが他のワークフローで使用されている場合には、ジョブ詳細では親のワークフローが表示されます。

_images/wf-template-job-detail-with-parent.png

上記の例では、親ワークフローテンプレート Overall をクリックすると、ジョブ詳細ページ、ノードのグラフィカルな情報、各ノードのステータスが表示されます。

_images/wf-template-jobs-detail-example.png

W のマークがついたノードは、ワークフローテンプレートで、このマークがないものはジョブテンプレートです。ノードごとに、ステータスと、完了までの時間が表示されます。

19.5. スケジュールの使用

スケジュール をクリックすると、このテンプレートに設定されているスケジュールを確認できます。

Workflow Template - schedule

19.5.1. ワークフローテンプレートのスケジュール

ジョブテンプレートの実行をスケジュールするには、スケジュール タブをクリックします。

  • スケジュールがすでに設定されている場合には、スケジュールの設定をレビュー、編集、または有効化/無効化します。
  • スケジュールが設定されていない場合には、詳細情報を「 スケジュール 」で参照してください。

ネスとかされたワークフローで使用するワークフローテンプレートに、インベントリーオプションとして survey や、Prompt on Launch が選択されている場合には、PROMPT ボタンが、スケジュールフォームの SAVE および CANCEL ボタンの横に表示されます。PROMPT ボタンをクリックすると、オプションで INVENTORY のステップが表示され、インベントリーを指定または削除するか、変更せずにこのステップをスキップすることができます。

19.6. Survey

「実行」または「チェック」のジョブタイプを含むワークフローにより、ワークフローテンプレートの作成または編集画面で Survey 設定できます。Survey は、「Prompt for Extra Variables (追加変数のプロンプト)」の場合と同様に Playbook の追加変数を設定しますが、ユーザーにとって使いやすい質問と回答を使って実行します。また Survey はユーザー入力の確認を可能にします。survey ボタンをクリックして Survey を作成します。

Survey のユースケースは多岐に及びます。一例として、開発者に「push to stage」ボタンを付与する操作が必要な場合、これは Ansible の高度な知識がなくても実行できます。起動時に、このタスクは「What tag should we release?」などといった質問への回答を求めるプロンプトを出す可能性があります。

多項選択式の質問など、多種の質問を尋ねることができます。

19.6.1. Survey の作成

Survey を作成するには、以下を実行します。

  1. survey ボタンをクリックして、Survey の追加 ウィンドウを起動します。
Workflow Job Template - create survey

画面上部にある ON/OFF の切り替えボタンを使用すると、この survey プロンプトをすぐに有効化または無効化できます。

  1. Survey には複数の質問を含めることができます。それぞれの質問について、以下の情報を入力します。
  • 名前: ユーザーに尋ねる質問
  • 説明: (オプション) ユーザーに尋ねられる内容の説明。
  • Answer Variable Name (回答の変数名): ユーザーの応答の保存に使用する Ansible 変数名。これは Playbook で使用される変数です。変数名にはスペースを含めることができません。
  • 回答タイプ: 以下の質問のタイプから選択します。
    • テキスト: 単一行のテキスト。この回答の最小および最大の長さ (文字数) を設定できます。
    • Textarea (テキスト領域): 複数行のテキストフィールド。この回答の最小および最大の長さ (文字数) を設定できます。
    • パスワード: 応答は、実際のパスワードが処理される場合と同様に機密情報として処理されます。この回答の最小および最大の長さ (文字数) を設定できます。
    • Multiple Choice (single select) (複数の選択 (単一選択)): 1 度に 1 つのみを選択できるオプションの一覧。複数の選択オプション ボックスに 1 行に 1 つのオプションを入力します。
    • Multiple Choice (multiple select)(複数の選択 (複数選択)): 1 度に任意の数のオプションを選択できるオプションの一覧。複数の選択オプション ボックスに 1 行に 1 つのオプションを入力します。
    • Integer (整数): 整数。この回答の最小および最大の長さ (文字数) を設定できます。
    • Float (浮動): 10 進数。この回答の最小および最大の長さ (文字数) を設定できます。
  • Default Answer (デフォルトの回答): 選択したタイプにより、質問に対するデフォルトの回答を指定できます。この値はインターフェースに事前投入されており、ユーザーにより回答が指定されない場合に使用します。
  • 必須: この質問に対する回答がユーザーから求められているかどうかを示します。
  1. 質問の情報を入力したら、add ボタンをクリックして質問を追加します。

定型化されたバージョンの Survey が「プレビュー」ペインに表示されます。いずれの質問についても、編集 ボタンをクリックして質問を編集できます。削除 ボタンをクリックすると質問を削除でき、グリッドアイコンをクリックおよびドラッグして質問の順序を変更できます。

  1. 左ペインに戻り、質問を追加します。
  2. 完了したら、保存 をクリックして Survey を保存します。

Workflow-template-completed-survey

19.6.2. オプションの Survey の質問

Survey の質問に対する 必須 の設定は、対話するユーザーにとって回答がオプションかどうかを決定します。

背後では、オプションの Survey 変数が入力されていない場合でも extra_vars の Playbook に渡すことができます。

  • テキスト以外の変数 (入力タイプ) がオプションとマークされ、入力されていない場合には、Survey の extra_var は Playbook に渡されません。
  • テキスト入力またはテキスト領域の入力がオプションとしてマークされていて、この内容が入力されておらず、最小の length > 0 が設定されている場合に、Survey の extra_var は Playbook に渡されません。
  • テキスト入力またはテキスト領域の入力がオプションとしてマークされていて、この内容が入力されておらず、最小の length === 0 が設定されている場合に、Survey の は、値が空のストリング ( “” ) に設定された状態で Playbook に渡されます。

19.7. ワークフロービジュアライザー

Ansible Tower 3.1 では、ワークフロービジュアライザー (以前の ワークフローエディター) が導入され、グラフィカルな形式で、ジョブテンプレート、ワークフローテンプレート、プロジェクト同期、インベントリー同期を統合し、ワークフローテンプレートをビルドできるようになりました。ワークフローテンプレートをビルドする前に、親、子、兄弟のノードに関するさまざまなシナリオでの留意事項について「 ワークフロー 」のセクションを確認してください。

19.7.1. ワークフローの構築

ワークフローを構築するために、ジョブ、プロジェクトの同期、またはインベントリーの同期のテンプレートの中の 2 つの組み合わせを使用します。各ノードは、長方形で表され、リレーションシップと関連のエッジタイプは、長方形の図をつなぐ線 (またはリンク) で表されます。

  1. ワークフローテンプレートの詳細/編集ビューで workflow editor ボタンをクリックするか、テンプレートリストビューから (wf-viz-icon) アイコンをクリックしてワークフロービジュアライザーを起動します。
_images/wf-editor-create-new.png
  1. start ボタンをクリックし、テンプレートの一覧を表示してワークフローに追加します。
_images/wf-editor-create-new-add-template-list.png
  1. 右側のペインで、テンプレートの一覧から追加するテンプレートを選択します。ジョブ、プロジェクトの同期およびインベントリーの同期の間で切り換えるには、上記の該当するボタンをクリックします。追加されるそれぞれのテンプレートはノードを表します。

注釈

ワークフローグラフの設定時には、デフォルトのインベントリーまたは認証情報を持たないジョブテンプレートを選択することができません。ジョブテンプレートには認証情報は必要ありませんが、パスワードを必要とする認証情報がある場合には、この認証情報がプロンプトを使用する認証情報に置き換えられない限り、使用中のワークフローに対してジョブテンプレートを選択することはできません。

  1. テンプレートを選択すると、ワークフローはビルドを開始するので、選択したテンプレートで行うアクションタイプを指定する必要があります。このアクションは、エッジタイプ とも呼ばれます。
_images/wf-editor-create-new-add-template-type.png
  1. ノードが root ノードの場合には、エッジタイプは Always (常時) にデフォルト設定され、編集はできません。それ以降のノードについては、以下のシナリオのいずれかを選択して、以下を適用します。
  • On Success (成功時): 正常に完了すると、次のテンプレートを実行します。
  • On Failure (失敗時): 失敗時に、別のテンプレートを実行します。
  • Always (常時): 成功または失敗にかかわらず、実行を継続します。
  1. ワークフローで使用するジョブテンプレートのパラメーターに Prompt on Launch (起動プロンプト) が選択されている場合には、Prompt ボタンが表示され、ノードレベルでこれらの値を変更できるようになります。ウィザードを使用して値を変更し、確定 をクリックします。
_images/wf-editor-prompt-button-wizard.png

同様に、ワークフローで使用するワークフローテンプレートで、インベントリーオプションとして Prompt on Launch (起動プロンプト) が選択されている場合には、ウィザードを使用して、プロンプト時にインベントリーを指定します。親のワークフローに独自のインベントリーがある場合には、ここで指定するインベントリーは上書きされます。

_images/wf-editor-prompt-button-inventory-wizard.png

注釈

プロンプト表示が可能な必須フィールドで、デフォルト設定のないジョブテンプレートの場合は、ノード作成時にこれらの値を指定してから、選択 ボタンを有効にする必要があります。プロンプト ボタンで値を指定するまで 選択 ボタンが無効となる例として、1) ジョブテンプレートで Prompt on Launch (起動プロンプト) チェックボックスを選択しているがデフォルトを指定していない場合、または 2) 必須の survey の質問を作成しているが、デフォルトの回答を指定していない場合が挙げられます。ただし、これは認証情報には該当 しません。ノードの作成時に、ノードの起動に必要な情報を指定する必要があるので、ワークフローノードの作成時には、起動時にパスワードを必要とする認証情報は、使用できません。そのため、ジョブテンプレートで認証情報の入力を求めるプロンプトが表示される場合には、Tower により、パスワードを必要とする認証情報を選択できないようになります。

また、対象のノードで変更を適用するには、プロンプトのウィザードの終了時に、選択 をクリックする必要があります。選択しないと、変更内容が、実際にジョブテンプレートで設定した値に戻ってしまいます。

_images/wf-editor-wizard-buttons.png

各ワークフローノードに関連付けられるテンプレートは、プロセスの進行時に選択した実行シナリオに基づいて実行されます。 コンパス (compass) アイコンをクリックして、各実行シナリオとそのジョブタイプの凡例を表示します。

_images/wf-editor-key-dropdown-list.png
  1. ノードの追加/編集が終了したら、選択 をクリックして、変更を保存し、グラフィカルビューに表示します。

ノード上にマウスをかざすと、別のノードの追加 ( add template )、別のノードへのリンク ( edit link )、選択したノードの削除 ( delete template ) が可能になります。

_images/wf-editor-create-new-add-template.png

親ノードの add template をクリックして兄弟ノードを追加できます。

_images/wf-editor-create-sibling-node.png

ノード間に別のノードを挿入するには、add template が表示されるまで2 つのノード間をつなぐ線の上にマウスをかざします。add template をクリックすると自動的に、2 つのノード間にノードが挿入されます。

_images/wf-editor-insert-node-template.png

root ノードを追加して分割のシナリオを表現するには、start ボタンをもう一度クリックします。

_images/wf-editor-create-new-add-template-split.png

分割シナリオを作成するノード上にマウスをかざし、そこから分割シナリオを開始して、add template をクリックします。これで実際に、同じ親ノードから複数のノードが追加されて、兄弟ノードが作成されます。

_images/wf-editor-create-siblings.png

注釈

新規ノードの追加時には、PROMPT ボタンでワークフローテンプレートも適用します。ワークフローテンプレートにより、インベントリーおよび survey のプロンプトが表示されます。

最後に挿入したノードを取り消すには、右のペーンから何も選択せずに別のノードをクリックするか、右のペーンから キャンセル をクリックします。

以下は、ジョブテンプレートで開始される 3 つのタイプのジョブがすべて含まれるワークフローの例です。これが実行に失敗する場合は、プロジェクト同期ジョブに進み、成否にかかわらず、インベントリーの同期ジョブに進みます。

_images/wf-editor-create-new-add-template-example.png

ウィンドウの先頭にあるキーを参照して、グラフィックな説明と関連付けられる記号および色の意味を特定するのを忘れないでください。

注釈

ワークフローで、兄弟ノードにさまざまなエッジタイプが指定されていて、後続のノードがアタッチされたノードを削除した場合には、アタッチされたノードが自動的に兄弟ノードセットと結合されて、そのエッジタイプを保持します。

_images/wf-node-delete-scenario.png

以下の方法で、ノードを変更できます。

  • ノードを編集する必要がある場合に、編集するノードをクリックすると右側のペインには現在の選択内容が表示されます。変更を加えたら 選択 をクリックして変更をグラフィカルビューに適用します。
  • 既存のリンクのエッジタイプを編集するには (success (成功)/failure (失敗)/always (常時))、リンクをクリックします。右側のペインに、現在の選択内容が表示されます。変更を加えたら 選択 をクリックして変更をグラフィカルビューに適用します。
_images/wf-editor-wizard-edit-link.png
  • 別のノードに新規リンクを追加するには、各ノード上に表示される、リンク edit link アイコンをクリックします。クリックすると、リンクを追加可能なノードがハイライトされます。実行可能なオプションは、点線で表示されます。無効なオプションは、ボックス (ノード) がグレーアウトされます。このようなボックスを選択できたとしても、無効なリンクが生成されます。以下の例では、矢印で示されているように、e2e-ec20de52-project のリンク先に対する選択可能なオプションとして Demo Project が表示されます。
_images/wf-node-link-scenario.png
  • リンクを削除するには対象のリンクをクリックして、リンク解除 をクリックします。
_images/wf-editor-wizard-unlink.png

ターゲットまたは子ノードに複数の親がある場合に、このボタンは、右側のパネルにのみ表示されます。すべてのノードが常に、少なくとも 1 つ以上の他のノードにリンクされている必要があるため、必要のなくなったリンクを削除する前に、新規リンクを作成する必要があります。

設定アイコン (settings) をクリックしてビューのズーム、パン、または再配置を行います。または、ワークフローの図をドラッグして画面上で再配置するか、マウスをスクロールしてズームします。

  1. ワークフローテンプレートのビルドが完了したら、保存 をクリックしてワークフローテンプレート全体を保存し、新しいワークフローテンプレートの詳細ページに戻ります。

重要

このペインで 閉じる をクリックしても、作業は保存されません。代わりにワークフロービジュアライザー全体を閉じて最初からやり直す必要があります。

19.8. ワークフローテンプレートの起動

以下のいずれかの方法でワークフローテンプレートを起動します。

  • ワークフロージョブテンプレートリストには、(templates-icon) ナビゲーションリンクからアクセスするか、ワークフロージョブテンプレートの詳細ビューで、下方にスクロールしてテンプレートの一覧から launch ボタンにアクセスします。
_images/wf-templates-wf-template-launch.png
  • 起動するジョブテンプレートのジョブテンプレートの詳細ビューで、起動 をクリックします。

ジョブテンプレートおよび Survey に設定される追加変数と共に、Tower は起動時にジョブテンプレートに追加される変数として同じ変数を自動的に追加します。さらに、Tower は web ブラウザーをこのジョブのジョブの詳細ページにリダイレクトし、進捗と結果が表示されます。

_images/wf-launch-details-page-example.png

19.9. ワークフローテンプレートのコピー

Ansible Tower では、ワークフローテンプレートのコピー機能を使用できます。ワークフローテンプレートをコピーすることを選択した場合には、関連付けられたスケジュール、通知、またはパーミッションは コピーされません。スケジュールおよび通知は、ワークフローテンプレートのコピーを作成するユーザーまたは管理者により作成しなおす必要があります。ジョブテンプレートをコピーするユーザーには管理者権限が付与されますが、パーミッションはワークフローテンプレートには割り当てられません (コピーされません)。

  1. コピーするワークフロージョブテンプレートには、テンプレート のナビゲーションリンク (templates-icon) からアクセスするか、ワークフロージョブテンプレートの詳細ビューで、下方にスクロールしてテンプレートの一覧からアクセスします。

Wf templates - newly added wf template

  1. copy ボタンをクリックします。

新規テンプレートが、コピーしたテンプレートの名前とタイムスタンプが設定された状態で開きます。

名前フィールドの内容を新規の名前に置き換え、他のフィールドのエントリーを指定または変更してこのページを完了します。

  1. 完了したら 保存 をクリックします。

注釈

プロジェクトが使用する認証情報で現在のユーザーに 読み取り アクセスしか割り当てられていない場合など、リソースに、適切なレベルのパーミッションが割り当てられていない関連リソースが含まれる場合に、このリソースはコピーできません。ただし、ワークフローテンプレートでは、このノードのいずれかで、権限のないジョブテンプレートを使用する場合に、ワークフローテンプレートのコピーは可能ですが、コピーしたワークフローテンプレートでは、ワークフローテンプレートノード内の適切なフィールドがなくなります。

19.10. 追加変数

注釈

厳密な extra_vars 検証が Ansible Tower 3.0.0 でさらに追加されました。ジョブ起動 API に渡される extra_vars は、以下が True の場合のみ受け入れられます。

  • これは、有効な survey の変数に対応するものである。
  • ask_variables_on_launch が True に設定されている。

Survey 変数を渡す際に、この変数は Tower 内の追加変数 (extra_vars) として渡されます。これは、(Survey で実行するように) 追加変数をワークフローテンプレートに渡すと、インベントリーおよびプロジェクトから渡される他の変数が上書きされる可能性があるために注意が必要です。

たとえば、インベントリーの定義された変数が debug = true であるとします。この変数 debug = true がワークフローテンプレート Survey で上書きされる可能性はあります。

渡す必要のある変数が上書きされないようにするには、この変数を Survey で再定義して組み込むことができます。追加変数はインベントリー、グループおよびホストのレベルで定義できることに注意してください。

以下の表では、Ansible の変数の順序との比較で、Ansible Tower の変数の順序の動作 (階層) を示しています。

Ansible Tower 変数の順序の階層 (最後に一覧表示された win)

_images/Architecture-Tower_Variable_Precedence_Hierarchy-Workflows.png