computer-playbook/playbook.yml

295 lines
6.1 KiB
YAML

---
- name: general setup
hosts: all
become: true
roles:
- independent_system-update
- name: servers host setup
hosts: servers
become: true
roles:
- server_system-security
- server_native-journalctl
- server_native-disc-space-check
- server_native-free-disc-space
- server_native-btrfs-health-check
- name: setup standard wireguard hosts
hosts: wireguard_hosts
become: true
roles:
- server_native-wireguard
- name: setup wireguard hosts behind firewall\nat
hosts: wireguard_behind_firewall_hosts
become: true
roles:
- server_native-wireguard-behind-firewall
# Native Webserver Roles
- name: setup homepages
hosts: homepage_hosts
become: true
roles:
- role: server_native-homepage
vars:
domain: "{{top_domain}}"
- name: setup redirect hosts
hosts: redirect_hosts
become: true
roles:
- role: server_native-https-redirect
vars:
domain_mappings: "{{redirect_domain_mappings}}"
# Docker Roles
- name: setup nextcloud hosts
hosts: nextcloud_hosts
become: true
roles:
- role: server_docker-nextcloud
vars:
domain: cloud.{{top_domain}}
http_port: 8001
- name: setup gitea hosts
hosts: gitea_hosts
become: true
roles:
- role: server_docker-gitea
vars:
domain: git.{{top_domain}}
http_port: 8002
ssh_port: 2201
run_mode: prod
- name: setup wordpress hosts
hosts: wordpress_hosts
become: true
roles:
- role: server_docker-wordpress
vars:
domains: "{{wordpress_domains}}"
http_port: 8003
- name: setup mediawiki hosts
hosts: mediawiki_hosts
become: true
roles:
- role: server_docker-mediawiki
vars:
domain: wiki.{{top_domain}}
http_port: 8004
- name: setup mybb hosts
hosts: mybb_hosts
become: true
roles:
- role: server_docker-mybb
vars:
domain: forum.{{top_domain}}
http_port: 8005
- name: setup turn server
hosts: turn_server_hosts
become: true
roles:
- role: server_docker-turn-server
- name: setup yourls hosts
hosts: yourls_hosts
become: true
roles:
- role: server_docker-yourls
vars:
domain: s.{{top_domain}}
http_port: 8006
- name: setup mailu hosts
hosts: mailu_hosts
become: true
roles:
- role: server_docker-mailu
vars:
domain: "mail.{{top_domain}}"
http_port: 8007
- name: setup elk hosts
hosts: elk_hosts
become: true
roles:
- role: server_docker-elk
vars:
domain: "elk.{{top_domain}}"
http_port: 8008
- name: setup mastodon hosts
hosts: mastodon_hosts
become: true
roles:
- role: server_docker-mastodon
vars:
domain: "mastodon.{{top_domain}}"
http_port: 8009
stream_port: 4001
- name: setup pixelfed hosts
hosts: pixelfed_hosts
become: true
roles:
- role: server_docker-pixelfed
vars:
domain: pixelfed.{{top_domain}}
http_port: 8010
- name: setup peertube hosts
hosts: peertube_hosts
become: true
roles:
- role: server_docker-peertube
vars:
domain: peertube.{{top_domain}}
http_port: 8011
- name: setup bigbluebutton hosts
hosts: bigbluebutton_hosts
become: true
roles:
- role: server_docker-bigbluebutton
vars:
domain: bbb.{{top_domain}}
- name: setup funkwhale hosts
hosts: funkwhale_hosts
become: true
roles:
- role: server_docker-funkwhale
vars:
domain: funkwhale.{{top_domain}}
http_port: 8012
- name: setup roulette-wheel hosts
hosts: roulette_wheel_hosts
become: true
roles:
- role: server_docker-roulette-wheel
vars:
domain: roulette.{{top_domain}}
http_port: 8013
- name: setup akaunting hosts
hosts: akaunting_hosts
become: true
roles:
- role: server_docker-akaunting
vars:
domain: akaunting.{{top_domain}}
http_port: 8080
# Backup Roles
- name: setup replica backup hosts
hosts: replica_backup_hosts
become: true
roles:
- role: server_native-pull-primary-backups
## PC services
- name: general host setup
hosts: personal_computers
become: true
roles:
- pc_collection-administrator-base
- pc_driver-non-free
- name: pc_application-wireguard
hosts: application_wireguard_hosts
become: true
roles:
- pc_application-wireguard
- name: pc_collection-office
hosts: collection_officetools_hosts
become: true
roles:
- pc_collection-office
- name: pc_collection-designer
hosts: collection_designer_hosts
become: true
roles:
- pc_collection-designer
- name: pc_collection-torrent
hosts: collection_torrent_hosts
become: true
roles:
- pc_collection-torrent
- name: pc_collection-streamer
hosts: collection_streamer_hosts
become: true
roles:
- pc_collection-streamer
- name: pc_collection-bluray-player
hosts: collection_bluray_player_hosts
become: true
roles:
- pc_collection-bluray-player
- name: pc_driver-intel
hosts: intel_hosts
become: true
roles:
- pc_driver-intel
- name: pc_application-latex
hosts: latex_hosts
become: true
roles:
- pc_application-latex
- name: GNOME setup
hosts: gnome_hosts
become: true
roles:
- pc_system-gnome
- name: setup msi rgb keyboard
hosts: msi_perkeyrgb_hosts
become: true
roles:
- pc_driver-msi-perkeyrgb
- name: setup ssh hosts
hosts: ssh_hosts
become: false
roles:
- pc_application-ssh
- name: setup swapfile hosts
hosts: swapfile_hosts
become: false
roles:
- system-swapfile
- name: setup gaming hosts
hosts: gaming_hosts
become: true
roles:
- pc_collection-games
- name: setup entertainment hosts
hosts: entertainment_hosts
become: true
roles:
- pc_collection-entertainment
- name: setup multiprinter hosts
hosts: epson_multiprinter_hosts
become: true
roles:
- pc_driver-epson-multiprinter
- name: setup torbrowser hosts
hosts: torbrowser_hosts
become: true
roles:
- pc_application-torbrowser
- name: setup nextcloud
hosts: nextcloud_hosts
become: true
roles:
- pc_application-nextcloud
- name: setup docker
hosts: docker_hosts
become: true
roles:
- pc_application-docker