Files
infra/ansible/site.yml
2026-07-19 14:50:46 +02:00

151 lines
3.2 KiB
YAML

---
- name: Configure common user environment
hosts: all
become: true
pre_tasks:
- name: Load local vault variables when available
tags: [always]
ansible.builtin.include_vars:
file: "{{ playbook_dir }}/../secrets/vault.yml"
when: >-
lookup('ansible.builtin.fileglob', playbook_dir + '/../secrets/vault.yml',
errors='ignore', wantlist=True) | length > 0
- name: Load machine-local vault variables when available
tags: [always]
ansible.builtin.include_vars:
file: "{{ playbook_dir }}/../secrets/vault.local.yml"
when: >-
lookup('ansible.builtin.fileglob', playbook_dir + '/../secrets/vault.local.yml',
errors='ignore', wantlist=True) | length > 0
roles:
- dotfiles_common
- name: Configure Void platform
hosts: platform_void
become: true
roles:
- packages_void
- services_runit
- name: Configure Void graphical desktop
hosts: platform_void:&graphical_desktop
become: true
roles:
- profile_desktop_common
- profile_desktop_sway
- profile_desktop_hyprland
- profile_desktop_niri
- profile_desktop_kde
- profile_desktop_xfce
- profile_desktop_host
- name: Configure lab role on Void
hosts: platform_void:&role_lab
become: true
roles:
- profile_lab
- name: Configure Linux Mint platform
hosts: platform_mint
become: true
roles:
- packages_mint
- services_systemd
- name: Configure personal workstation role on Linux Mint
hosts: platform_mint:&role_personal_workstation
become: true
roles:
- profile_personal_workstation
- name: Configure Cinnamon desktop on Linux Mint
hosts: platform_mint:&desktop_cinnamon
become: true
roles:
- profile_desktop_cinnamon
- name: Configure FreeBSD platform
hosts: platform_freebsd
become: true
roles:
- packages_freebsd
- services_freebsd
- name: Configure lab role on FreeBSD
hosts: platform_freebsd:&role_lab
become: true
roles:
- profile_lab
- name: Configure Niri desktop on FreeBSD
hosts: platform_freebsd:&desktop_niri
become: true
roles:
- profile_desktop_niri_freebsd
- name: Configure Fedora platform
hosts: platform_fedora
become: true
roles:
- packages_fedora
- services_systemd
- name: Configure personal workstation role on Fedora
hosts: platform_fedora:&role_personal_workstation
become: true
roles:
- profile_personal_workstation
- name: Configure Fedora GNOME desktop
hosts: platform_fedora:&desktop_gnome
become: true
roles:
- profile_desktop_gnome
- name: Configure Fedora workstation development layer
hosts: workstation_dev_fedora
become: true
roles:
- profile_workstation_dev_common
- name: Configure native Linux workstation host layer
hosts: workstation_host_linux
become: true
roles:
- profile_workstation_gnome
- name: Configure WSL workstation development layer
hosts: workstation_dev_wsl
become: true
roles:
- packages_ubuntu
- services_systemd
- profile_workstation_dev_common
- profile_workstation_dev_wsl
- name: Configure Ubuntu server
hosts: ubuntu_server
become: true
roles:
- packages_ubuntu
- services_systemd
- profile_server