特定の順序でAnsibleタグを呼び出す

特定の順序でAnsibleタグを呼び出す

複数のシェルスクリプトを呼び出す必要があるAnsibleアクションがあり、各シェルスクリプトには独自のラベルがあります。

したがって、5つのタグを含む合計5つのスクリプトがあります。

私のタグ1とタグ2は削除する必要がある最初のタグで、次に3つのタグだけを実行することを意味します。誰かがタグ3を直接実行すると、パイプラインが失敗することを望みます。タグ1と2を最初に実行する必要があるタグ3、4、5の依存関係を追加するにはどうすればよいですか?

アドバイスしてください。

私の現在の.ymlファイルは次のとおりです。

- name: Task 1
      shell: "/tmp/1.sh -a {{ IN.1}} -b {{ IN.2 }}"
      register: Task1.sh
      tags: task1
- name: Task 2
      shell: "/tmp/2.sh -a {{ IN.2}} -b {{ IN.2 }}"
      register: Task2.sh
      tags: task2
.
.
.
.
- name: Task 5
      shell: "/tmp/5.sh -a {{ IN.1}} -b {{ IN.2 }}"
      register: Task5.sh
      tags: task5

ベストアンサー1

おおよそのですが、100%の解決策は、タスクとタグにバインドするのではなく、タスクの最初のスクリプトを実行するコマンドを追加することです。

- name: Task 5
      shell: |
        /tmp/1.sh -a {{ IN.1}} -b {{ IN.2 }}
        /tmp/2.sh -a {{ IN.2}} -b {{ IN.2 }}
        /tmp/5.sh -a {{ IN.1}} -b {{ IN.2 }}
      register: Task5.sh
      tags: task5

おすすめ記事