From 597f35bfb61711b39869fa50add10813308090df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafael=20L=C3=A1szl=C3=B3?= <rlacko99@gmail.com> Date: Thu, 16 Sep 2021 10:45:38 +0200 Subject: [PATCH] Add netplan config and traceroute package --- defaults/main.yml | 16 +++++++++++++ tasks/main.yml | 4 ++++ tasks/netplan.yaml | 23 +++++++++++++++++++ tasks/packages.yml | 1 + .../99-disable-network-config.cfg.j2 | 7 ++++++ templates/etc/netplan/01-netcfg.yaml.j2 | 10 ++++++++ 6 files changed, 61 insertions(+) create mode 100644 tasks/netplan.yaml create mode 100644 templates/etc/cloud/cloud.cfg.d/99-disable-network-config.cfg.j2 create mode 100644 templates/etc/netplan/01-netcfg.yaml.j2 diff --git a/defaults/main.yml b/defaults/main.yml index ccbd58d..9708f5c 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -23,3 +23,19 @@ users: # passwordless_sudo: yes # # https://docs.ansible.com/ansible/latest/collections/ansible/posix/authorized_key_module.html#examples # keys_url: https://git.sch.bme.hu/xy.keys + +# netplan: +# network: +# ethernets: +# ens192: +# dhcp4: no +# addresses: +# - 152.66.208.666/24 +# nameservers: +# search: [sch.bme.hu] +# addresses: [152.66.208.1, 8.8.8.8] +# gateway4: 152.66.208.254 +# ens224: +# dhcp4: no +# addresses: +# - 192.168.1.254/24 diff --git a/tasks/main.yml b/tasks/main.yml index 051d931..99844df 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -34,3 +34,7 @@ - name: Fix multipath UUID VMWare errors include_tasks: multipath.yaml + +- name: Update netplan config + include_tasks: netplan.yaml + when: netplan is defined diff --git a/tasks/netplan.yaml b/tasks/netplan.yaml new file mode 100644 index 0000000..981aa98 --- /dev/null +++ b/tasks/netplan.yaml @@ -0,0 +1,23 @@ +--- +- name: Disable cloud init networking + template: + src: etc/cloud/cloud.cfg.d/99-disable-network-config.cfg.j2 + dest: /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg + mode: 0644 + +- name: Add netplan network config + template: + src: etc/netplan/01-netcfg.yaml.j2 + dest: /etc/netplan/01-netcfg.yaml + mode: 0644 + register: netplan_config + +- name: Remove old netplan config + ansible.builtin.file: + path: /etc/netplan/50-cloud-init.yaml + state: absent + when: netplan_config.changed + +- name: Apply Netplan Configuration + command: netplan apply + when: netplan_config.changed diff --git a/tasks/packages.yml b/tasks/packages.yml index 68ef1f9..653d510 100644 --- a/tasks/packages.yml +++ b/tasks/packages.yml @@ -19,6 +19,7 @@ - strace - tcpdump - xxd + - traceroute # Editors - nano diff --git a/templates/etc/cloud/cloud.cfg.d/99-disable-network-config.cfg.j2 b/templates/etc/cloud/cloud.cfg.d/99-disable-network-config.cfg.j2 new file mode 100644 index 0000000..c12ad78 --- /dev/null +++ b/templates/etc/cloud/cloud.cfg.d/99-disable-network-config.cfg.j2 @@ -0,0 +1,7 @@ +# +# !!! +# {{ ansible_managed }} +# !!! + +# Disable cloudinit network config +network: {config: disabled} diff --git a/templates/etc/netplan/01-netcfg.yaml.j2 b/templates/etc/netplan/01-netcfg.yaml.j2 new file mode 100644 index 0000000..8cd0c6f --- /dev/null +++ b/templates/etc/netplan/01-netcfg.yaml.j2 @@ -0,0 +1,10 @@ +# +# !!! +# {{ ansible_managed }} +# !!! + +network: + version: 2 + renderer: networkd + ethernets: +{{ netplan['network']['ethernets']|to_nice_yaml|indent(4, true) }} -- GitLab