debian-setup/playbook.yml

67 lines
1.7 KiB
YAML

- name: Provision debian server
hosts: localhost
pre_tasks:
- name: Install shared packages
become: true
ansible.builtin.apt:
name: '{{ packages }}'
roles:
- common
tasks:
- name: Generic provisioning
ansible.builtin.import_tasks: 'tasks/setup.yml'
tags: setup
- name: Network provisioning
ansible.builtin.import_tasks: 'tasks/network.yml'
tags: network
- name: Wireguard provisioning
ansible.builtin.import_tasks: 'tasks/wireguard.yml'
tags: wireguard
- name: Wireguard media provisioning
ansible.builtin.import_tasks: 'tasks/wireguard_media.yml'
tags: wireguard-media
- name: Docker provisioning
ansible.builtin.import_tasks: 'tasks/docker.yml'
tags: docker
- name: Radicale provisioning
ansible.builtin.import_tasks: 'tasks/radicale.yml'
tags: radicale
- name: Syncthing provisioning
ansible.builtin.import_tasks: 'tasks/syncthing.yml'
tags: syncthing
- name: Transmission provisioning
ansible.builtin.import_tasks: 'tasks/transmission.yml'
tags: transmission
- name: MPD provisioning
ansible.builtin.import_tasks: 'tasks/mpd.yml'
tags: mpd
- name: NGINX provisioning
ansible.builtin.import_tasks: 'tasks/nginx.yml'
tags: nginx
- name: Jellyfin provisioning
ansible.builtin.import_tasks: 'tasks/jellyfin.yml'
tags: jellyfin
handlers:
- name: Import handlers
ansible.builtin.import_tasks: 'handlers.yml'
vars_files:
- 'vars/main.yml'
- 'vars/vpn.yml'
- 'vars/vpn_media.yml'
- 'vars/network.yml'
- 'vars/transmission.yml'
- 'vars/syncthing.yml'
- 'vars/mpd.yml'
- 'vars/radicale.yml'
- 'vars/jellyfin.yml'