major refactoring
This commit is contained in:
8
roles/services/tasks/chrony.yml
Normal file
8
roles/services/tasks/chrony.yml
Normal file
@@ -0,0 +1,8 @@
|
||||
---
|
||||
- name: "chrony: Enable NTS"
|
||||
ansible.builtin.template:
|
||||
src: chrony.conf.j2
|
||||
dest: /etc/chrony.conf
|
||||
loop: '{{ services_chrony_servers }}'
|
||||
become: yes
|
||||
notify: "chrony: Restart service"
|
||||
48
roles/services/tasks/flatpak.yml
Normal file
48
roles/services/tasks/flatpak.yml
Normal file
@@ -0,0 +1,48 @@
|
||||
---
|
||||
- name: "flatpak: Merge remotes with overrides"
|
||||
set_fact:
|
||||
services_flatpak_remotes: '{{ services_flatpak_remotes | combine(services_flatpak_remotes_overrides) }}'
|
||||
when:
|
||||
- services_flatpak_remotes_overrides | default()
|
||||
- services_flatpak_setRemotes | bool
|
||||
|
||||
- name: "flatpak: Merge packages with overrides"
|
||||
set_fact:
|
||||
services_flatpak_packages: '{{ services_flatpak_packages | combine(services_flatpak_packages_overrides) }}'
|
||||
when:
|
||||
- services_flatpak_packages_overrides | default()
|
||||
- services_flatpak_installFlatpaks | bool
|
||||
|
||||
- name: "flatpak: Add/remove remotes"
|
||||
community.general.flatpak_remote:
|
||||
name: "{{ item.key }}"
|
||||
state: "{{ item.value.state }}"
|
||||
flatpakrepo_url: "{{ item.value.url }}"
|
||||
become: true
|
||||
loop: "{{ lookup('dict', services_flatpak_remotes, wantlist=True) }}"
|
||||
when:
|
||||
- services_flatpak_setRemotes | bool
|
||||
|
||||
- name: "flatpak: Add/remove packages"
|
||||
community.general.flatpak:
|
||||
name: "{{ item.key }}"
|
||||
state: "{{ item.value.state }}"
|
||||
remote: "{{ item.value.remote }}"
|
||||
loop: "{{ lookup('dict', services_flatpak_packages, wantlist=True) }}"
|
||||
when:
|
||||
- services_flatpak_installFlatpaks | bool
|
||||
|
||||
# https://github.com/flatpak/flatpak/issues/3847#issuecomment-818532856
|
||||
- name: "flatpak: Enable autoUpdate"
|
||||
ansible.builtin.template:
|
||||
src: "{{ item }}"
|
||||
dest: "/etc/systemd/system/{{ item | regex_replace('.j2', '') }}"
|
||||
owner: root
|
||||
group: root
|
||||
mode: '0644'
|
||||
become: yes
|
||||
with_items:
|
||||
- flatpak-automatic.service.j2
|
||||
- flatpak-automatic.timer.j2
|
||||
when: services_flatpak_autoUpdate | bool
|
||||
notify: "flatpak: Enable timer"
|
||||
9
roles/services/tasks/libvirtd.yml
Normal file
9
roles/services/tasks/libvirtd.yml
Normal file
@@ -0,0 +1,9 @@
|
||||
---
|
||||
- name: "libvirtd: Install packages"
|
||||
community.general.rpm_ostree_pkg:
|
||||
name: "{{ services_libvirtd_packages }}"
|
||||
state: "present"
|
||||
become: yes
|
||||
notify:
|
||||
- "services: Apply rpm-ostree changes live"
|
||||
- "libvirtd: Enable service"
|
||||
16
roles/services/tasks/main.yml
Normal file
16
roles/services/tasks/main.yml
Normal file
@@ -0,0 +1,16 @@
|
||||
---
|
||||
- name: Include snapper
|
||||
ansible.builtin.include: snapper.yml
|
||||
when: services_snapper_enable | bool
|
||||
|
||||
- name: Include libvirtd
|
||||
ansible.builtin.include: libvirtd.yml
|
||||
when: services_libvirtd_enable | bool
|
||||
|
||||
- name: Include chrony
|
||||
ansible.builtin.include: chrony.yml
|
||||
when: services_chrony_enableNTS | bool
|
||||
|
||||
- name: Include flatpak
|
||||
ansible.builtin.include: flatpak.yml
|
||||
when: services_flatpak_enable | bool
|
||||
42
roles/services/tasks/snapper.yml
Normal file
42
roles/services/tasks/snapper.yml
Normal file
@@ -0,0 +1,42 @@
|
||||
---
|
||||
- name: "snapper: Install package"
|
||||
community.general.rpm_ostree_pkg:
|
||||
name: snapper
|
||||
state: "present"
|
||||
become: yes
|
||||
notify:
|
||||
- "services: Apply rpm-ostree changes live"
|
||||
- "snapper: Enable timers"
|
||||
|
||||
- name: "snapper: Create subvolumes"
|
||||
ansible.builtin.shell:
|
||||
cmd: "if [[ ! -d {{ item.value.subvolume }}/.snapshots ]]; then \
|
||||
btrfs subvol create {{ item.value.subvolume }}/.snapshots; fi"
|
||||
with_dict: "{{ services_snapper_configs }}"
|
||||
become: yes
|
||||
notify:
|
||||
- "services: Apply rpm-ostree changes live"
|
||||
- "snapper: Enable timers"
|
||||
|
||||
- name: "snapper: Create configuration folder"
|
||||
ansible.builtin.file:
|
||||
path: /etc/snapper/configs
|
||||
state: directory
|
||||
mode: '0755'
|
||||
become: yes
|
||||
notify:
|
||||
- "services: Apply rpm-ostree changes live"
|
||||
- "snapper: Enable timers"
|
||||
|
||||
- name: "snapper: Place configurations"
|
||||
ansible.builtin.template:
|
||||
src: snapper-config.j2
|
||||
dest: "/etc/snapper/configs/{{ item.key }}"
|
||||
owner: root
|
||||
group: root
|
||||
mode: '0644'
|
||||
with_dict: "{{ services_snapper_configs }}"
|
||||
become: yes
|
||||
notify:
|
||||
- "services: Apply rpm-ostree changes live"
|
||||
- "snapper: Enable timers"
|
||||
Reference in New Issue
Block a user