
我正在尋找方法來減少我必須放入一些 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