72 lines
1.9 KiB
YAML
72 lines
1.9 KiB
YAML
- name: Arch Linux provisioning
|
|
hosts: localhost
|
|
pre_tasks:
|
|
- name: Install shared packages
|
|
become: true
|
|
community.general.pacman:
|
|
name: '{{ packages }}'
|
|
|
|
- name: Detect platform
|
|
ansible.builtin.import_tasks: 'tasks/platform.yml'
|
|
tags: platform_vars
|
|
|
|
- name: Install platform specific packages
|
|
become: true
|
|
community.general.pacman:
|
|
name: '{{ platform_packages }}'
|
|
when: platform_packages | length > 0
|
|
roles:
|
|
- common
|
|
tasks:
|
|
- name: Generic provisioning
|
|
ansible.builtin.import_tasks: 'tasks/setup.yml'
|
|
tags: setup
|
|
|
|
- name: Desktop provisioning
|
|
ansible.builtin.import_tasks: 'tasks/setup-desktop.yml'
|
|
when: platform == 'desktop'
|
|
tags: laptop
|
|
|
|
- name: Laptop provisioning
|
|
ansible.builtin.import_tasks: 'tasks/setup-laptop.yml'
|
|
when: platform == 'laptop'
|
|
tags: laptop
|
|
|
|
- name: Network provisioning
|
|
ansible.builtin.import_tasks: 'tasks/network.yml'
|
|
tags: network
|
|
|
|
- name: Systemd provisioning
|
|
ansible.builtin.import_tasks: 'tasks/systemd.yml'
|
|
tags: systemd
|
|
|
|
- name: Git provisioning
|
|
ansible.builtin.import_tasks: 'tasks/git.yml'
|
|
tags: git
|
|
|
|
- name: MPV provisioning
|
|
ansible.builtin.import_tasks: 'tasks/mpv.yml'
|
|
tags: mpv
|
|
|
|
- name: MPD provisioning
|
|
ansible.builtin.import_tasks: 'tasks/mpd.yml'
|
|
tags: mpd
|
|
|
|
- name: Syncthing provisioning
|
|
ansible.builtin.import_tasks: 'tasks/syncthing.yml'
|
|
tags: syncthing
|
|
|
|
- name: Systemd timer provisioning
|
|
ansible.builtin.import_tasks: 'tasks/timer.yml'
|
|
tags: timers
|
|
|
|
handlers:
|
|
- name: Import default handlers
|
|
ansible.builtin.import_tasks: 'handlers.yml'
|
|
|
|
- name: Import common role handlers
|
|
ansible.builtin.import_tasks: 'roles/common/handlers/user.yml'
|
|
vars_files:
|
|
- 'vars/main.yml'
|
|
- 'vars/gpg.yml'
|
|
- 'vars/mpd.yml'
|