From a0b7236dc00e1f6908c40dc2d4108b552cd1f831 Mon Sep 17 00:00:00 2001 From: Lars Beckers <lars.beckers@rwth-aachen.de> Date: Wed, 8 Nov 2017 17:56:15 +0100 Subject: [PATCH] client: use networkd instead of legacy method --- client/handlers/main.yml | 7 ++++ client/tasks/network.yml | 53 ++++++++++++++++++++++++++++ client/templates/20-wired.network.j2 | 5 +++ 3 files changed, 65 insertions(+) create mode 100644 client/tasks/network.yml create mode 100644 client/templates/20-wired.network.j2 diff --git a/client/handlers/main.yml b/client/handlers/main.yml index 021071d..68bca17 100644 --- a/client/handlers/main.yml +++ b/client/handlers/main.yml @@ -6,3 +6,10 @@ - name: restart sddm service: name=sddm state=restarted + +- name: reload systemd service files + systemd: daemon_reload=yes + +- name: restart networkd + service: name=systemd-networkd state=restarted + diff --git a/client/tasks/network.yml b/client/tasks/network.yml new file mode 100644 index 0000000..55ba1f9 --- /dev/null +++ b/client/tasks/network.yml @@ -0,0 +1,53 @@ +--- + +- name: ensure networkd has a valid configuration + template: + src: 20-wired.network.j2 + dest: /etc/systemd/network/20-wired.network + owner: root + group: root + mode: 0644 + notify: + - reload systemd service files + - restart networkd + +- meta: flush_handlers + +- name: ensure networkd is enabled and running + service: + name: systemd-networkd + state: started + enabled: yes + +- name: ensure legacy methods are disabled + service: + name: "{{ item }}" + state: stopped + enabled: no + with_items: + - "ifup@" + - "networking" + +- name: ensure we wait for network to be online + service: + name: systemd-networkd-wait-online + enabled: yes + +- name: ensure ansible's copy module does not bullshit us + file: + path: /etc/systemd/system/sddm.service.d + state: directory + owner: root + group: root + mode: 0644 + +- name: ensure sddm waits for network to be online + copy: + src: sddm-override.conf + dest: /etc/systemd/system/sddm.service.d/network.conf + owner: root + group: root + mode: 0644 + notify: + - reload systemd service files + diff --git a/client/templates/20-wired.network.j2 b/client/templates/20-wired.network.j2 new file mode 100644 index 0000000..020f881 --- /dev/null +++ b/client/templates/20-wired.network.j2 @@ -0,0 +1,5 @@ +[Match] +Name={{ ansible_default_ipv4.interface }} + +[Network] +DHCP=ipv4 -- GitLab