68 lines
2.2 KiB
YAML
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:
|