computer-playbook/group_vars/all

159 lines
7.7 KiB
Plaintext
Raw Normal View History

2023-12-22 15:49:55 +01:00
# General
verbose: false # Prints well formated debug information
top_domain: "localhost"
2023-12-14 12:34:30 +01:00
# Server Tact Variables
2023-12-14 19:06:57 +01:00
## Ours in which the server is 100% working. Rest of the time is reserved for maintanance
2023-12-17 17:34:34 +01:00
hours_server_awake: "0..1,9..23"
2023-12-14 19:06:57 +01:00
2023-12-14 12:34:30 +01:00
## Random delay for systemd timers to avoid peak loads.
2023-12-14 19:06:57 +01:00
randomized_delay_sec: "5min"
2023-04-15 17:06:10 +02:00
2023-12-14 12:34:30 +01:00
## Schedule for Health Checks
on_calendar_health_btrfs: "*-*-* 00:00:00" # Check once per day the btrfs for errors
on_calendar_health_journalctl: "*-*-* 00:00:00" # Check once per day the journalctl for errors
on_calendar_health_disc_space: "*-*-* 06,12,18,00:00:00" # Check four times per day if there is sufficient disc space
on_calendar_health_docker_container: "*-*-* {{ hours_server_awake }}:00:00" # Check once per hour if the docker containers are healthy
on_calendar_health_docker_volumes: "*-*-* {{ hours_server_awake }}:15:00" # Check once per hour if the docker volumes are healthy
2023-12-17 17:34:34 +01:00
on_calendar_health_nginx: "*-*-* {{ hours_server_awake }}:45:00" # Check once per hour if all webservices are available
2023-12-14 12:34:30 +01:00
## Schedule for Cleanup Tasks
on_calendar_cleanup_backups: "*-*-* 00,06,12,18:30:00" # Cleanup backups every 6 hours, MUST be called before disc space cleanup
on_calendar_cleanup_disc_space: "*-*-* 07,13,19,01:30:00" # Cleanup disc space every 6 hours
2023-12-14 12:34:30 +01:00
## Schedule for Backup Tasks
2023-11-17 12:35:39 +01:00
on_calendar_backup_docker_to_local: "*-*-* 03:30:00"
on_calendar_backup_remote_to_local: "*-*-* 21:30:00"
2023-12-14 12:34:30 +01:00
## Schedule for Maintenance Tasks
on_calendar_heal_docker: "*-*-* {{ hours_server_awake }}:30:00" # Heal unhealthy docker instances once per hour
on_calendar_renew_lets_encrypt_certificates: "*-*-* 12,00:30:00" # Renew Mailu certificates twice per day
on_calendar_deploy_mailu_certificates: "*-*-* 13,01:30:00" # Deploy Mailu certificates twice per day
on_calendar_msi_keyboard_color: "*-*-* *:*:00" # Change the keyboard color every minute
on_calendar_cleanup_failed_docker: "*-*-* 12:00:00" # Clean up failed docker backups every noon
2023-04-16 09:59:54 +02:00
2023-04-26 11:52:11 +02:00
2023-12-14 12:34:30 +01:00
# Storage Space-Related Configurations
size_percent_maximum_backup: 75 # Maximum storage space in percent for backups
size_percent_disc_space_warning: 85 # Warning threshold in percent for free disk space
size_percent_cleanup_disc_space: 90 # Threshold for triggering cleanup actions
# Path Variables for Key Directories and Scripts
path_administrator_home: "/home/administrator/"
path_administrator_scripts: "{{path_administrator_home}}scripts/"
path_docker_volumes: "{{path_administrator_home}}volumes/docker/"
path_docker_compose_instances: "{{path_administrator_home}}docker-compose/"
path_system_lock_script: "{{path_administrator_scripts}}system-maintenance-lock.py"
2023-12-14 12:34:30 +01:00
# Runtime Variables for Process Control
activate_all_timers: false # Activates all timers, independend if the handlers had been triggered
nginx_matomo_tracking: false # Activates matomo tracking on all html pages
execute_updates: true # Executes updates
force_backup_before_update: true # Activates the backup before the update procedure
2023-12-12 01:44:37 +01:00
2023-12-14 16:29:11 +01:00
# System maintenance Services
2023-12-12 01:44:37 +01:00
2023-12-14 16:29:11 +01:00
## Timeouts to wait for other services to stop
sytem_maintenance_lock_timeoutcleanup_services: "15min"
sytem_maintenance_lock_timeoutbackup_services: "1h"
sytem_maintenance_lock_timeoutheal_docker: "30min"
sytem_maintenance_lock_timeoutupdate_docker: "2min"
2023-12-14 16:29:11 +01:00
## Services
### Defined Services for Backup Tasks
system_maintenance_backup_services:
- "backup-docker-to-local"
- "backup-remote-to-local"
- "backup-data-to-usb"
- "backup-docker-to-local-everything"
2023-12-14 12:34:30 +01:00
2023-12-14 16:29:11 +01:00
### Defined Services for System Cleanup
system_maintenance_cleanup_services:
- "cleanup-backups"
- "cleanup-disc-space"
- "cleanup-failed-docker-backups"
2023-12-14 12:34:30 +01:00
2023-12-14 16:29:11 +01:00
### Services that Manipulate the System
system_maintenance_manipulation_services:
- "heal-docker"
- "update-docker"
2023-12-14 12:34:30 +01:00
## Total System Maintenance Services
2023-12-14 16:29:11 +01:00
system_maintenance_services: "{{ system_maintenance_backup_services + system_maintenance_cleanup_services + system_maintenance_manipulation_services }}"
2023-12-14 12:34:30 +01:00
# Webserver Configuration
## Nginx-Specific Path Configurations
nginx_configuration_directory: "/etc/nginx/conf.d/" # General configuration dir
nginx_servers_directory: "{{nginx_configuration_directory}}servers/" # Contains server blogs
nginx_maps_directory: "{{nginx_configuration_directory}}maps/" # Contains mappins
nginx_upstreams_directory: "{{nginx_configuration_directory}}upstreams/" # Contains upstream configurations
## Docker Applications
### Domain Names for Various Services
domain_akaunting: "akaunting.{{top_domain}}"
domain_baserow: "baserow.{{top_domain}}"
domain_bigbluebutton: "meet.{{top_domain}}"
domain_elk: "elk.{{top_domain}}"
domain_discourse: "forum.{{top_domain}}"
domain_funkwhale: "music.{{top_domain}}"
domain_gitea: "git.{{top_domain}}"
domain_listmonk: "newsletter.{{top_domain}}"
domain_mailu: "mail.{{top_domain}}"
domain_mastodon: "microblog.{{top_domain}}"
domains_mastodon_alternates: []
domain_matomo: "matomo.{{top_domain}}"
2023-12-19 14:07:05 +01:00
domain_matrix_synapse: "matrix.{{top_domain}}"
domain_matrix_element: "element.{{top_domain}}"
2023-12-14 12:34:30 +01:00
domain_mediawiki: "wiki.{{top_domain}}"
domain_nextcloud: "cloud.{{top_domain}}"
domain_pixelfed: "picture.{{top_domain}}"
domain_peertube: "video.{{top_domain}}"
2023-12-14 12:34:30 +01:00
domains_peertube: []
domain_roulette: "roulette.{{top_domain}}"
domain_attendize: "tickets.{{top_domain}}"
domain_yourls: "s.{{top_domain}}"
2023-12-22 15:49:55 +01:00
domain_openproject: "project.{{top_domain}}"
2023-12-14 12:34:30 +01:00
2023-12-22 15:49:55 +01:00
### Docker Role Specific Parameters
2023-12-22 15:49:55 +01:00
#### Pixelfed
pixelfed_app_name: "Pictures"
2023-12-19 14:07:05 +01:00
2023-12-22 15:49:55 +01:00
#### Matrix
matrix_playbook_tags: "setup-all,start" # For the initial update use: install-all,ensure-matrix-users-created,start
2023-12-26 22:45:24 +01:00
matrix_role: "compose" # Role to setup Matrix. Valid values: ansible, compose
2023-12-22 15:49:55 +01:00
#### Mastodon
version_mastodon: "latest"
2023-12-21 19:50:19 +01:00
2023-12-22 15:49:55 +01:00
#### Akaunting
version_akaunting: "latest"
#### Mailu
version_mailu: "2.0"
#### Nextcloud
version_nextcloud: "production" # Danger: Nextcloud can't skipp major version updates.
# Routing Configurations for Domain Redirections
redirect_domain_mappings:
- { source: "bbb.{{top_domain}}", target: "{{domain_bigbluebutton}}" }
- { source: "discourse.{{top_domain}}", target: "{{domain_discourse}}" }
- { source: "funkwhale.{{top_domain}}", target: "{{domain_funkwhale}}" }
- { source: "gitea.{{top_domain}}", target: "{{domain_gitea}}" }
- { source: "listmonk.{{top_domain}}", target: "{{domain_listmonk}}" }
- { source: "mastodon.{{top_domain}}", target: "{{domain_mastodon}}" }
- { source: "nextcloud.{{top_domain}}", target: "{{domain_nextcloud}}" }
- { source: "openproject.{{top_domain}}", target: "{{domain_openproject}}" }
- { source: "peertube.{{top_domain}}", target: "{{domain_peertube}}" }
- { source: "pictures.{{top_domain}}", target: "{{domain_pixelfed}}" }
- { source: "pixelfed.{{top_domain}}", target: "{{domain_pixelfed}}" }
- { source: "short.{{top_domain}}", target: "{{domain_yourls}}" }
- { source: "videos.{{top_domain}}", target: "{{domain_peertube}}" }