X-Git-Url: https://git.realraum.at/?a=blobdiff_plain;f=ansible%2Froles%2Fvm%2Fnetwork%2Ftasks%2Fmain.yml;h=baae45531d69b90a1f9a4643e3d3c68a6d273e48;hb=b04196adbd6d15535651fbcaa3baddd22179887d;hp=0171d11d327ba58ec3c55df8cc3f2484ebf1a3a6;hpb=9b15322254a2da865b0881f9d7cbb380fb2a9bf8;p=noc.git diff --git a/ansible/roles/vm/network/tasks/main.yml b/ansible/roles/vm/network/tasks/main.yml index 0171d11..baae455 100644 --- a/ansible/roles/vm/network/tasks/main.yml +++ b/ansible/roles/vm/network/tasks/main.yml @@ -1,16 +1,51 @@ --- -- name: install classic network config - import_tasks: classic.yml +- block: + - name: remove legacy systemd.link units + with_items: + - 50-virtio-kernel-names.link + - 99-default.link + file: + name: "/etc/systemd/network/{{ item }}" + state: absent + + - name: install systemd network link units + with_items: "{{ network.systemd_link.interfaces }}" + loop_control: + label: "{{ item.name }}" + index_var: interface_index + template: + src: systemd.link.j2 + dest: "/etc/systemd/network/{{ '%02d' | format(interface_index + 11) }}-{{ item.name }}.link" + notify: rebuild initramfs + + when: network.systemd_link is defined + +- name: install basic interface config + template: + src: interfaces.j2 + dest: /etc/network/interfaces + mode: 0644 when: ansible_distribution == "Debian" or (ansible_distribution == "Ubuntu" and (ansible_distribution_major_version | int) < 18) -- name: install basic netplan config - import_tasks: netplan.yml +- block: + - name: remove default netplan config + file: + path: /etc/netplan/01-netcfg.yaml + state: absent + + - name: install basic netplan config + template: + src: netplan.yaml.j2 + dest: "/etc/netplan/01-{{ network.primary.interface }}.yaml" + mode: 0644 + when: ansible_distribution == "Ubuntu" and (ansible_distribution_major_version | int) >= 18 - name: remove resolvconf package apt: name: resolvconf state: absent + force_apt_get: yes purge: yes - name: generate resolv.conf