2023-08-09 04:38:34 -04:00
|
|
|
---
|
|
|
|
|
|
|
|
- name: Clear systemd-networkd config directory
|
|
|
|
ansible.builtin.file:
|
|
|
|
path: "/etc/systemd/network/"
|
|
|
|
state: "{{ item }}"
|
|
|
|
owner: root
|
|
|
|
group: root
|
|
|
|
mode: '0755'
|
|
|
|
with_items:
|
|
|
|
- absent
|
|
|
|
- directory
|
|
|
|
|
|
|
|
- name: Create systemd-networkd config files
|
|
|
|
ansible.builtin.template:
|
|
|
|
src: "{{ item.src }}"
|
|
|
|
dest: /etc/systemd/network/"{{ item.name }}"
|
|
|
|
owner: root
|
|
|
|
group: root
|
|
|
|
mode: '0644'
|
|
|
|
loop: "{{ systemd_networkd_configs }}"
|
|
|
|
|
|
|
|
- name: Disable non-systemd networking services
|
|
|
|
ansible.builtin.service:
|
|
|
|
name: "{{ item }}"
|
|
|
|
state: stopped
|
|
|
|
enabled: false
|
|
|
|
loop: "{{ default_network_services[ansible_os_family] }}"
|
|
|
|
|
|
|
|
- name: Enable systemd networking
|
|
|
|
ansible.builtin.service:
|
|
|
|
name: "{{ item }}"
|
|
|
|
state: started
|
|
|
|
enabled: true
|
|
|
|
loop:
|
|
|
|
- systemd-networkd
|
|
|
|
- systemd-resolved
|
|
|
|
|
|
|
|
- name: Install libvirt packages (Arch)
|
|
|
|
when: ansible_os_distribution == 'Archlinux'
|
|
|
|
community.general.pacman:
|
|
|
|
name: "{{ libvirt_packages['Arch'] }}"
|
|
|
|
state: present
|
|
|
|
update_cache: true
|
|
|
|
|
|
|
|
- name: Add user to libvirt group
|
|
|
|
ansible.builtin.user:
|
|
|
|
name: "{{ ansible_user }}"
|
|
|
|
groups: libvirt
|
|
|
|
append: true
|
|
|
|
|
|
|
|
- name: Add bridge(s) to qemu_bridge_helper
|
|
|
|
when: qemu_bridges is defined
|
|
|
|
ansible.builtin.lineinfile:
|
|
|
|
path: /etc/qemu/bridge.conf
|
|
|
|
line: "{{ item }}"
|
|
|
|
state: present
|
|
|
|
backup: false
|
|
|
|
insertafter: EOF
|
|
|
|
loop: "{{ qemu_bridges | default(['virbr0']) }}"
|
|
|
|
|
|
|
|
- name: Start and enable libvirt service
|
|
|
|
ansible.builtin.service:
|
|
|
|
name: libvirtd.service
|
|
|
|
state: started
|
|
|
|
enabled: true
|
|
|
|
|
|
|
|
- name: Stop the default libvirt network
|
|
|
|
community.libvirt.virt_net:
|
|
|
|
name: default
|
|
|
|
state: inactive
|
|
|
|
|
|
|
|
- name: Remove default libvirt network
|
|
|
|
community.libvirt.virt_net:
|
|
|
|
name: default
|
|
|
|
state: absent
|