Уменьшить шаблон задачи ansible с помощью какого-либо шаблона?

Уменьшить шаблон задачи ansible с помощью какого-либо шаблона?

Я ищу способы сократить объем шаблонной конфигурации, которую мне приходится использовать в некоторых моих задачах Ansible.

Например, у меня есть много задач, использующих docker_containerмодуль, и каждая из них имеет одинаковый набор из ~10 идентичных опций. Я бы хотел, чтобы эти стандартные опции были определены где-то централизованно, и каждая задача просто определяла бы только уникальные опции, которые ей нужны.

(Проблема исследования этого вопроса заключается в том, что 99,9% результатов поиска по этой теме касаются самого модуля копирования/шаблона).

Думаю, я мог бы написать собственный модуль на Python, который расширяет модуль docker_container, но это кажется излишним.

Есть идеи по сокращению шаблонной конфигурации?

решение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

Связанный контент