何らかのテンプレートを使用して Ansible タスクの定型文を削減しますか?

何らかのテンプレートを使用して Ansible タスクの定型文を削減しますか?

いくつかの Ansible タスクに入力する必要がある定型設定の量を減らす方法を探しています。

たとえば、docker_containerモジュールを使用するタスクが多数あり、各タスクには約 10 個の同一のオプション セットがあります。これらの標準オプションを中央のどこかで定義し、各タスクでは必要な固有のオプションのみを定義するようにしたいと考えています。

(これを調査する際の問題は、この主題に関する検索結果の 99.9% がコピー/テンプレート モジュール自体に関するものであることです)。

docker_container モジュールを拡張するカスタム モジュールを Python で記述することもできると思いますが、それはやりすぎのように思えます。

定型的な設定を減らすためのアイデアはありますか?

答え1

使用できますmodule defaults

- hosts: localhost
  module_defaults:
    ansible.builtin.file:
      owner: root
      group: root
      mode: 0755
  tasks:
    - name: Create file1
      ansible.builtin.file:
        state: touch
        path: /tmp/file1

    - name: Create file2
      ansible.builtin.file:
        state: touch
        path: /tmp/file2

    - name: Create file3
      ansible.builtin.file:
        state: touch
        path: /tmp/file3

関連情報