26 lines
1.1 KiB
YAML
26 lines
1.1 KiB
YAML
---
|
|
# This has been adapted from code in OpenStack Ansible's systemd_networkd role.
|
|
# https://github.com/openstack/ansible-role-systemd_networkd/blob/master/tasks/main.yml
|
|
|
|
- name: Find unexpected systemd-networkd configuration files
|
|
become: true
|
|
ansible.builtin.find:
|
|
paths: /etc/systemd/network
|
|
patterns: "{{ systemd_networkd_cleanup_patterns }}"
|
|
use_regex: "{{ systemd_networkd_cleanup_patterns_use_regex | bool }}"
|
|
register: networkd_files
|
|
|
|
- name: Remove unexpected systemd-networkd configuration files
|
|
become: true
|
|
vars:
|
|
expected_files:
|
|
- "{{ systemd_networkd_link.keys() | map('regex_replace', '^(.*)$', '\\1.link') | list }}"
|
|
- "{{ systemd_networkd_netdev.keys() | map('regex_replace', '^(.*)$', '\\1.netdev') | list }}"
|
|
- "{{ systemd_networkd_network.keys() | map('regex_replace', '^(.*)$', '\\1.network') | list }}"
|
|
ansible.builtin.file:
|
|
path: /etc/systemd/network/{{ item }}
|
|
state: absent
|
|
loop: "{{ networkd_files.files | map(attribute='path') | map('basename') | difference(expected_files | flatten) | list }}"
|
|
notify:
|
|
- Restart systemd-networkd
|