--- # tasks file for network-manager - name: "apt install NetworkManager {{ nm_version }} " become: true apt: name: "network-manager{{ nm_version }}" default_release: "{{ ansible_distribution_release }}-backports" autoremove: true update_cache: true - name: config globally managed devices become: true template: src: "conf.d/10-globally-managed-devices.j2" dest: "{{ globally_managed_devices_path }}" owner: root group: root mode: 0644 when: globally_managed_devices is true notify: network-manager configuration changed - name: cleanup globally managed devices become: true file: path: "{{ globally_managed_devices_path }}" state: absent when: not globally_managed_devices - name: Configure NetworkManager become: true community.general.nmcli: conn_name: "{{ net_item.con_name }}" ifname: "{{ net_item.ifname }}" type: "{{ net_item.type }}" ip4: "{{ net_item.ip4 }}" gw4: "{{ net_item.gw4 | default('') }}" dns4: "{{ net_item.dns4 | default([]) }}" method6: "{{ net_item.method6 | default('auto') }}" state: present with_items: "{{ network }}" loop_control: loop_var: net_item notify: network-manager configuration changed