diff --git a/roles/systemd-networkd/handlers/main.yml b/roles/systemd-networkd/handlers/main.yml index 8d3068c..eaf56fa 100644 --- a/roles/systemd-networkd/handlers/main.yml +++ b/roles/systemd-networkd/handlers/main.yml @@ -2,12 +2,14 @@ systemd: name: systemd-networkd enabled: yes + state: restarted daemon_reload: yes - listen: "enable systemd-networkd" + listen: "start and enable systemd-networkd" -- name: enable systemd-resolved - systemd: - name: systemd-resolved - enabled: yes - daemon_reload: yes - listen: "enable systemd-resolved" +- name: use systemd-resolved + file: + src: /run/systemd/resolve/stub-resolv.conf + dest: /etc/resolv.conf + state: link + force: Yes + listen: "use systemd-resolved" diff --git a/roles/systemd-networkd/tasks/main.yml b/roles/systemd-networkd/tasks/main.yml index 28426e6..f863fa0 100644 --- a/roles/systemd-networkd/tasks/main.yml +++ b/roles/systemd-networkd/tasks/main.yml @@ -1,8 +1,16 @@ +- name: check if /etc/network/interfaces is still there + stat: path=/etc/network/interfaces + register: interfaces + +- name: move /etc/network/interfaces away + command: mv /etc/network/interfaces /etc/network/interfaces_disabled + when: interfaces.stat.exists + - name: install dynamic configuration for networkd copy: src: 10-dhcp.network dest: /etc/systemd/network/10-dhcp.network - notify: "enable systemd-networkd" + notify: "start and enable systemd-networkd" #- name: install static configuration for networkd # template: @@ -10,10 +18,11 @@ # dest: /etc/systemd/network/20-static.network # notify: "enable systemd-networkd" -- name: prepare systemd-resolved - file: - src: /run/systemd/resolve/resolv.conf - dest: /etc/resolv.conf - state: link - force: yes - notify: "enable systemd-resolved" +- name: enable systemd-resolved + systemd: + name: systemd-resolved + enabled: yes + state: started + notify: "use systemd-resolved" + +- meta: flush_handlers