могу подобрать нужную форму записи
yml
- name: Create interface within Netbox with only required information
netbox_interface:
netbox_url:
netbox_token:
data:
enabled: "{{ item.enabled }}"
device: "{{ inventory_hostname }}"
name: "{{ item.name }}"
mac_address: "{{ item.mac_address }}"
form_factor: 1000Base-T (1GE)
mtu: "{{ item.mtu }}"
#description: "{{ item.module }}"
state: present
delegate_to: 127.0.0.1
with_items:
- { enabled: "{{ ansible_eno1.active }}", name: "{{ ansible_eno1.device }}", mac_address: "{{ ansible_eno1.macaddress }}", mtu: "{{ ansible_eno1.mtu }}", module: "{{ ansible_eno1.module }}" }
- { enabled: "{{ ansible_enp2s0.active }}", name: "{{ ansible_enp2s0.device }}", mac_address: "{{ ansible_enp2s0.macaddress }}", mtu: "{{ ansible_enp2s0.mtu }}", module: "{{ ansible_enp2s0.module }}" }в данной записи название интефейсов прописаны вручную как и вложенность (ansible_eno1.active), я бы хотел получить список интерфейсов и подставить его в цикле ansible_СЮДА.active. Вы не можете подсказать как это можно реализовать?
откуда взялись ansible_eno1 (и другие) ? ты их руками объявил либо из факта?
не пробовали изменить код? loop: '{{ ansible_interfaces }}' loop_control: loop_var: 'interface' И в таске использовать: '{{ hostvars[ansible_host]["ansible_"~interface]["mtu"] }}' итд
Обсуждают сегодня