computer-playbook/playbook.yml

324 lines
6.2 KiB
YAML

---
- name: general setup
hosts: all
become: true
roles:
- system-update
- name: servers host setup
hosts: servers
become: true
roles:
- system-security
- journalctl
- health-disc-space
- free-disc-space
- health-btrfs
# Wireguard Rollen
- name: setup standard wireguard
hosts: wireguard_server
become: true
roles:
- application-wireguard
- name: setup wireguard client behind firewall\nat
hosts: wireguard_behind_firewall
become: true
roles:
- client_application-wireguard-behind-firewall
- name: setup wireguard client
hosts: wireguard_client
become: true
roles:
- client_application-wireguard
# Native Webserver Roles
- name: setup homepages
hosts: homepage
become: true
roles:
- role: homepage
vars:
domain: "{{top_domain}}"
- name: setup redirect hosts
hosts: redirect
become: true
roles:
- role: https-redirect
vars:
domain_mappings: "{{redirect_domain_mappings}}"
# Docker Roles
- name: setup nextcloud hosts
hosts: nextcloud_server
become: true
roles:
- role: docker-nextcloud
vars:
domain: cloud.{{top_domain}}
http_port: 8001
- name: setup gitea hosts
hosts: gitea
become: true
roles:
- role: docker-gitea
vars:
domain: git.{{top_domain}}
http_port: 8002
ssh_port: 2201
run_mode: prod
- name: setup wordpress hosts
hosts: wordpress
become: true
roles:
- role: docker-wordpress
vars:
domains: "{{wordpress_domains}}"
http_port: 8003
- name: setup mediawiki hosts
hosts: mediawiki
become: true
roles:
- role: docker-mediawiki
vars:
domain: wiki.{{top_domain}}
http_port: 8004
- name: setup mybb hosts
hosts: mybb
become: true
roles:
- role: docker-mybb
vars:
domain: forum.{{top_domain}}
http_port: 8005
- name: setup yourls hosts
hosts: yourls
become: true
roles:
- role: docker-yourls
vars:
domain: s.{{top_domain}}
http_port: 8006
- name: setup mailu hosts
hosts: mailu
become: true
roles:
- role: docker-mailu
vars:
domain: "mail.{{top_domain}}"
http_port: 8007
- name: setup elk hosts
hosts: elk
become: true
roles:
- role: docker-elk
vars:
domain: "elk.{{top_domain}}"
http_port: 8008
- name: setup mastodon hosts
hosts: mastodon
become: true
roles:
- role: docker-mastodon
vars:
domain: "mastodon.{{top_domain}}"
http_port: 8009
stream_port: 4001
- name: setup pixelfed hosts
hosts: pixelfed
become: true
roles:
- role: docker-pixelfed
vars:
domain: pixelfed.{{top_domain}}
http_port: 8010
- name: setup peertube hosts
hosts: peertube
become: true
roles:
- role: docker-peertube
vars:
domain: peertube.{{top_domain}}
http_port: 8011
- name: setup bigbluebutton hosts
hosts: bigbluebutton
become: true
roles:
- role: docker-bigbluebutton
vars:
domain: bbb.{{top_domain}}
- name: setup funkwhale hosts
hosts: funkwhale
become: true
roles:
- role: docker-funkwhale
vars:
domain: funkwhale.{{top_domain}}
http_port: 8012
- name: setup roulette-wheel hosts
hosts: roulette_wheel
become: true
roles:
- role: docker-roulette-wheel
vars:
domain: roulette.{{top_domain}}
http_port: 8013
- name: setup joomla hosts
hosts: joomla
become: true
roles:
- role: docker-joomla
vars:
domain: "joomla.{{top_domain}}"
http_port: 8014
- name: setup attendize
hosts: attendize
become: true
roles:
- role: docker-attendize
vars:
domain: "tickets.{{top_domain}}"
http_port: 8015
mail_interface_http_port: 8016
- name: setup baserow hosts
hosts: baserow
become: true
roles:
- role: docker-baserow
vars:
domain: baserow.{{top_domain}}
http_port: 8017
- name: setup akaunting hosts
hosts: akaunting
become: true
roles:
- role: docker-akaunting
vars:
domain: akaunting.{{top_domain}}
http_port: 8080
# Backup Roles
- name: setup replica backup hosts
hosts: replica_backup
become: true
roles:
- role: backups-consumer
## PC services
- name: general host setup
hosts: personal_computers
become: true
roles:
- collection-administrator-base
- driver-non-free
- name: collection-office
hosts: collection_officetools
become: true
roles:
- collection-office
- name: collection-designer
hosts: collection_designer
become: true
roles:
- collection-designer
- name: collection-torrent
hosts: collection_torrent
become: true
roles:
- collection-torrent
- name: collection-streamer
hosts: collection_streamer
become: true
roles:
- collection-streamer
- name: collection-bluray-player
hosts: collection_bluray_player
become: true
roles:
- collection-bluray-player
- name: driver-intel
hosts: intel
become: true
roles:
- driver-intel
- name: application-latex
hosts: latex
become: true
roles:
- application-latex
- name: GNOME setup
hosts: gnome
become: true
roles:
- system-gnome
- name: setup msi rgb keyboard
hosts: msi_perkeyrgb
become: true
roles:
- application-msi-keyboard-color
- name: setup ssh hosts
hosts: ssh
become: false
roles:
- application-ssh
- name: setup swapfile hosts
hosts: swapfile
become: false
roles:
- system-swapfile
- name: setup gaming hosts
hosts: gaming
become: true
roles:
- collection-games
- name: setup entertainment hosts
hosts: entertainment
become: true
roles:
- collection-entertainment
- name: setup multiprinter hosts
hosts: epson_multiprinter
become: true
roles:
- driver-epson-multiprinter
- name: setup torbrowser hosts
hosts: torbrowser
become: true
roles:
- application-torbrowser
- name: setup nextcloud
hosts: nextcloud_client
become: true
roles:
- application-nextcloud
- name: setup docker
hosts: docker
become: true
roles:
- application-docker
- name: setup backup to swappable
hosts: backup_to_usb
become: true
roles:
- backup-to-usb