From a5a4d28ccc902cbde09fa0566108c62f85e83c45 Mon Sep 17 00:00:00 2001 From: Jeltz Date: Fri, 26 Aug 2022 20:52:23 +0200 Subject: [PATCH] ifupdown2: simple interfaces file configuration --- roles/ifupdown2/defaults/main.yml | 3 +++ roles/ifupdown2/handlers/main.yml | 6 ++++++ roles/ifupdown2/tasks/main.yml | 10 ++++++++++ roles/ifupdown2/templates/interfaces.j2 | 12 ++++++++++++ 4 files changed, 31 insertions(+) create mode 100644 roles/ifupdown2/defaults/main.yml create mode 100644 roles/ifupdown2/handlers/main.yml create mode 100644 roles/ifupdown2/templates/interfaces.j2 diff --git a/roles/ifupdown2/defaults/main.yml b/roles/ifupdown2/defaults/main.yml new file mode 100644 index 0000000..a419f07 --- /dev/null +++ b/roles/ifupdown2/defaults/main.yml @@ -0,0 +1,3 @@ +--- +ifupdown2__interfaces: {} +... diff --git a/roles/ifupdown2/handlers/main.yml b/roles/ifupdown2/handlers/main.yml new file mode 100644 index 0000000..a065d26 --- /dev/null +++ b/roles/ifupdown2/handlers/main.yml @@ -0,0 +1,6 @@ +--- +- name: Restart networking + systemd: + name: networking.service + state: restarted +... diff --git a/roles/ifupdown2/tasks/main.yml b/roles/ifupdown2/tasks/main.yml index 0c6d547..5b1ed81 100644 --- a/roles/ifupdown2/tasks/main.yml +++ b/roles/ifupdown2/tasks/main.yml @@ -23,6 +23,16 @@ masked: false when: must_mask +- name: Configure ifupdown2 + template: + src: interfaces.j2 + dest: /etc/network/interfaces + owner: root + group: root + mode: u=rw,g=r,o= + notify: + - Restart networking + - name: Enable and start networking systemd: name: networking.service diff --git a/roles/ifupdown2/templates/interfaces.j2 b/roles/ifupdown2/templates/interfaces.j2 new file mode 100644 index 0000000..236a0ee --- /dev/null +++ b/roles/ifupdown2/templates/interfaces.j2 @@ -0,0 +1,12 @@ +{{ ansible_managed | comment }} + +{% for name, iface in ifupdown2__interfaces.items() %} +allow-hotplug {{ name }} +iface {{ name }} +{% for address in iface.addresses %} + address {{ address | ipaddr }} +{% endfor %} +{% for gateway in iface.gateways %} + gateway {{ gateway | ipaddr }} +{% endfor %} +{% endfor %}