2025-07-01 20:28:03 +00:00

68 lines
2.2 KiB
YAML

---
- name: Create route table if necessary
become: true
ansible.builtin.blockinfile:
path: "{{ systemd_networkd_rttables_conf_file }}"
block: "{{ lookup('template', 'rt_tables.j2') }}"
marker: "# {mark} ANSIBLE MANAGED BLOCK"
loop: "{{ systemd_networkd_rt_tables }}"
- name: Create systemd conf folder
become: true
ansible.builtin.file:
path: "{{ systemd_networkd_conf_directory }}"
state: directory
mode: "0755"
owner: root
group: root
- name: Ensure systemd-networkd configuration files exist
become: true
vars:
# Profiles to iterate over. Using a single looped task is more performant
# than multiple tasks.
all_files:
- type: link
files: "{{ systemd_networkd_link | dict2items }}"
dest_folder: "{{ systemd_networkd_directory }}"
- type: netdev
files: "{{ systemd_networkd_netdev | dict2items }}"
dest_folder: "{{ systemd_networkd_directory }}"
- type: network
files: "{{ systemd_networkd_network | dict2items }}"
dest_folder: "{{ systemd_networkd_directory }}"
- type: conf
files: "{{ systemd_networkd_conf | dict2items }}"
dest_folder: "{{ systemd_networkd_conf_directory }}"
ansible.builtin.template:
src: systemd_networkd_config.j2
dest: "{{ item.0.dest_folder }}/{{ item.1.key }}.{{ item.0.type }}"
owner: root
group: systemd-network
mode: "0640"
loop: "{{ query('subelements', all_files, 'files') }}"
loop_control:
label: "type: {{ item.0.type }}, name: {{ item.1.key }}"
notify: Restart systemd-networkd
register: systemd_networkd_status
- name: Set systemd_network_status task
ansible.builtin.set_fact:
systemd_networkd_status: "{{ systemd_networkd_status }}"
- name: Manage nsswitch configuration
become: true
ansible.builtin.template:
src: nsswitch.conf.j2
dest: /etc/nsswitch.conf
owner: root
group: root
mode: "0644"
when: systemd_networkd_manage_nsswitch_config
register: systemd_networkd_nssswitch_changed
- name: Set systemd_networkd_nssswitch_changed task
ansible.builtin.set_fact:
systemd_networkd_nssswitch_changed: "{{ systemd_networkd_nssswitch_changed }}"
# vim: set ts=2 sw=2: