Я определил group_vars
для монтирования общих ресурсов nfs на множестве хостов в зависимости от их среды:
---
mounts:
- path: /home/user1
src: 10.0.0.1:/home/user1
fstype: nfs
state: present
- path: /home/user2
src: 10.0.0.1:/home/user2
fstype: nfs
state: present
В моем сборнике игр у меня есть следующая задача по добавлению этих средств передвижения:
---
- hosts: clients
tasks:
- name: mounts
mount:
path: "{{ item.path }}"
src: "{{ item.src }}"
fstype: "{{ item.fstype }}"
opts: "{{ item.opts }}"
state: "{{ item.state }}"
with_items: "{{ mounts }}"
Теперь мне было интересно, есть ли сокращение для достижения того же? Например.
---
- hosts: clients
tasks:
- name: mounts
mount: "{{ mounts }}"
Модуль не может выполнить несколько подключений за один вызов, поэтому вам все равно придется проходить каждое отдельное определение монтирования с циклом. Но вы можете установить все параметры за один раз из ваших индивидуальных диктовок.
Прежде чем я напишу (простое) решение, вас все же следует предупредить, что установка аргументов задачи, подобных этому, разочарован в недоступном документе потому что при некоторых обстоятельствах это может быть небезопасно. Вот почему вы получите предупреждение при использовании приведенного ниже кода:
- hosts: clients
tasks:
- name: mounts
mount: "{{ item }}"
with_items: "{{ mounts }}"