35 lines
1.1 KiB
YAML
35 lines
1.1 KiB
YAML
---
|
|
- name: Check if the interface ipv4 address is defined
|
|
ansible.builtin.debug:
|
|
msg: "Warning: iface {{ interface.name }} has no defined ipv4 address, skipping configuration"
|
|
when: interface.ipv4.address is not defined
|
|
|
|
- name: Process interface configuration
|
|
when: interface.ipv4.address is defined
|
|
block:
|
|
- name: Create systemd-netdev file for virtual interface
|
|
when:
|
|
- interface.type is defined
|
|
- interface.type != 'ethernet'
|
|
ansible.builtin.template:
|
|
src: systemd.netdev.j2
|
|
dest: /etc/systemd/network/10-{{ interface.name }}.netdev
|
|
owner: root
|
|
group: root
|
|
mode: "0644"
|
|
register: netdev_result
|
|
|
|
- name: Create systemd-network configuration file
|
|
ansible.builtin.template:
|
|
src: systemd.network.j2
|
|
dest: /etc/systemd/network/20-{{ interface.name }}.network
|
|
owner: root
|
|
group: root
|
|
mode: "0644"
|
|
register: network_result
|
|
|
|
- name: Notify a reload is required
|
|
ansible.builtin.set_fact:
|
|
network_reload_required: true
|
|
when: netdev_result is changed or network_result is changed
|