nicer loop labels
[noc.git] / ansible / roles / vm / network / tasks / main.yml
1 ---
2 - block:
3     - name: remove legacy systemd.link units
4       with_items:
5         - 50-virtio-kernel-names.link
6         - 99-default.link
7       file:
8         name: "/etc/systemd/network/{{ item }}"
9         state: absent
10
11     - name: install systemd network link units
12       with_items: "{{ network.systemd_link.interfaces }}"
13       loop_control:
14         label: "{{ item.name }}"
15         index_var: interface_index
16       template:
17         src: systemd.link.j2
18         dest: "/etc/systemd/network/{{ '%02d' | format(interface_index + 11) }}-{{ item.name }}.link"
19       notify: rebuild initramfs
20
21   when: network.systemd_link is defined
22
23 - name: install basic interface config
24   template:
25     src: interfaces.j2
26     dest: /etc/network/interfaces
27     mode: 0644
28   when: ansible_distribution == "Debian" or (ansible_distribution == "Ubuntu" and (ansible_distribution_major_version | int) < 18)
29
30 - block:
31     - name: remove default netplan config
32       file:
33         path: /etc/netplan/01-netcfg.yaml
34         state: absent
35
36     - name: install basic netplan config
37       template:
38         src: netplan.yaml.j2
39         dest: "/etc/netplan/01-{{ network.primary.interface }}.yaml"
40         mode: 0644
41
42   when:  ansible_distribution == "Ubuntu" and (ansible_distribution_major_version | int) >= 18
43
44 - name: remove resolvconf package
45   apt:
46     name: resolvconf
47     state: absent
48     force_apt_get: yes
49     purge: yes
50
51 - name: generate resolv.conf
52   template:
53     src: resolv.conf.j2
54     dest: /etc/resolv.conf