mash-playbook/templates/setup.yml

365 lines
9.1 KiB
YAML
Raw Normal View History

2023-03-15 09:58:12 +01:00
- name: "Set up a self-hosted server"
hosts: "{{ target if target is defined else 'mash_servers' }}"
become: true
roles:
# role-specific:playbook_help
2023-03-15 09:58:12 +01:00
# This role has no tasks at all
- role: galaxy/playbook_help
# /role-specific:playbook_help
2023-03-15 09:58:12 +01:00
# role-specific:systemd_docker_base
2023-03-15 09:58:12 +01:00
# This role has no tasks at all
- role: galaxy/systemd_docker_base
# /role-specific:systemd_docker_base
2023-03-15 09:58:12 +01:00
# role-specific:docker
2023-03-15 09:58:12 +01:00
- when: mash_playbook_docker_installation_enabled | bool
role: galaxy/docker
2023-03-15 09:58:12 +01:00
vars:
docker_install_compose: false
docker_install_compose_plugin: false
2023-03-15 09:58:12 +01:00
tags:
- setup-docker
- setup-all
- install-docker
- install-all
# /role-specific:docker
2023-03-15 09:58:12 +01:00
# role-specific:docker_sdk_for_python
2023-03-15 09:58:12 +01:00
- when: devture_docker_sdk_for_python_installation_enabled | bool
role: galaxy/docker_sdk_for_python
2023-03-15 09:58:12 +01:00
tags:
- setup-docker
- setup-all
- install-docker
- install-all
# /role-specific:docker_sdk_for_python
2023-03-15 09:58:12 +01:00
# role-specific:timesync
2023-03-15 09:58:12 +01:00
- when: devture_timesync_installation_enabled | bool
role: galaxy/timesync
2023-03-15 09:58:12 +01:00
tags:
- setup-timesync
- setup-all
- install-timesync
- install-all
# /role-specific:timesync
2023-03-15 09:58:12 +01:00
# No role-specific checks here, as it's a local role that is always installed.
2023-03-15 09:58:12 +01:00
- role: mash/playbook_base
# role-specific:swap
2023-03-18 12:24:46 +01:00
- role: galaxy/swap
# /role-specific:swap
2023-03-18 12:24:46 +01:00
2023-12-09 17:58:15 +01:00
# role-specific:cleanup
- role: galaxy/cleanup
# /role-specific:cleanup
# role-specific:ssh
- when: system_security_ssh_enabled | bool
role: galaxy/ssh
# /role-specific:ssh
2023-03-18 20:50:27 +01:00
# role-specific:fail2ban
- when: system_security_fail2ban_enabled | bool
role: galaxy/fail2ban
# /role-specific:fail2ban
2023-03-18 21:04:44 +01:00
# role-specific:postgres
2023-03-15 09:58:12 +01:00
# This role exposes various tags (setup-postgres, setup-all, upgrade-postgres, import-postgres, etc.), so we don't tag it here.
- role: galaxy/postgres
# /role-specific:postgres
2023-03-15 09:58:12 +01:00
# role-specific:postgres_backup
- role: galaxy/postgres_backup
# /role-specific:postgres_backup
2023-03-17 15:40:08 +01:00
# role-specific:mongodb
2023-06-02 16:25:58 +02:00
- role: galaxy/mongodb
# /role-specific:mongodb
2023-06-02 16:25:58 +02:00
# role-specific:container_socket_proxy
- role: galaxy/container_socket_proxy
# /role-specific:container_socket_proxy
2023-03-15 09:58:12 +01:00
# role-specific:traefik
- role: galaxy/traefik
# /role-specific:traefik
2023-03-15 09:58:12 +01:00
# role-specific:adguard_home
2023-03-24 17:01:21 +01:00
- role: galaxy/adguard_home
# /role-specific:adguard_home
2023-03-24 17:01:21 +01:00
# role-specific:appsmith
2023-04-17 08:42:47 +02:00
- role: galaxy/appsmith
# /role-specific:appsmith
2023-04-17 08:42:47 +02:00
# role-specific:authelia
2023-09-12 12:26:38 +02:00
- role: galaxy/authelia
# /role-specific:authelia
2023-09-12 12:26:38 +02:00
# role-specific:authentik
2023-04-19 12:29:15 +02:00
- role: galaxy/authentik
# /role-specific:authentik
2023-04-19 12:29:15 +02:00
# role-specific:backup_borg
2023-05-01 09:12:29 +02:00
- role: galaxy/backup_borg
# /role-specific:backup_borg
2023-05-01 09:12:29 +02:00
# role-specific:changedetection
- role: galaxy/changedetection
# /role-specific:changedetection
# role-specific:clickhouse
2023-07-07 13:43:28 +02:00
- role: galaxy/clickhouse
# /role-specific:clickhouse
2023-07-07 13:43:28 +02:00
# role-specific:collabora_online
2023-03-17 13:25:31 +01:00
- role: galaxy/collabora_online
# /role-specific:collabora_online
2023-03-17 13:25:31 +01:00
# role-specific:docker_registry
2023-03-18 18:27:24 +01:00
- role: galaxy/docker_registry
# /role-specific:docker_registry
# role-specific:docker_registry_browser
2023-03-19 08:14:12 +01:00
- role: galaxy/docker_registry_browser
# /role-specific:docker_registry_browser
# role-specific:docker_registry_purger
2023-03-19 09:04:10 +01:00
- role: galaxy/docker_registry_purger
# /role-specific:docker_registry_purger
2023-03-18 18:27:24 +01:00
# role-specific:echoip
- role: galaxy/echoip
# /role-specific:echoip
2024-01-06 12:03:08 +01:00
# role-specific:exim_relay
- role: galaxy/exim_relay
# /role-specific:exim_relay
# role-specific:firezone
2023-03-24 09:58:39 +01:00
- role: galaxy/firezone
# /role-specific:firezone
2023-03-24 09:58:39 +01:00
# role-specific:focalboard
2023-03-20 07:40:15 +01:00
- role: galaxy/focalboard
# /role-specific:focalboard
2023-03-20 07:40:15 +01:00
# role-specific:freshrss
- role: galaxy/freshrss
# /role-specific:freshrss
# role-specific:funkwhale
2023-04-02 19:13:35 +02:00
- role: galaxy/funkwhale
# /role-specific:funkwhale
2023-04-02 18:19:58 +02:00
# role-specific:gitea
2023-03-16 17:26:06 +01:00
- role: galaxy/gitea
# /role-specific:gitea
2023-03-16 17:26:06 +01:00
# role-specific:gotosocial
2023-03-24 13:11:13 +01:00
- role: galaxy/gotosocial
# /role-specific:gotosocial
2023-03-24 13:11:13 +01:00
# role-specific:grafana
2023-03-20 18:14:45 +01:00
- role: galaxy/grafana
# /role-specific:grafana
2023-03-20 18:14:45 +01:00
# role-specific:mariadb
2023-04-10 12:44:48 +02:00
- role: galaxy/mariadb
# /role-specific:mariadb
2023-04-10 12:44:48 +02:00
# role-specific:miniflux
2023-03-15 09:58:12 +01:00
- role: galaxy/miniflux
# /role-specific:miniflux
2023-03-15 09:58:12 +01:00
# role-specific:mrs
2023-04-12 12:49:51 +02:00
- role: galaxy/mrs
# /role-specific:mrs
2023-04-12 12:49:51 +02:00
# role-specific:n8n
2023-07-19 12:08:59 +02:00
- role: galaxy/n8n
# /role-specific:n8n
2023-07-19 12:08:59 +02:00
# role-specific:healthchecks
2023-04-11 16:39:02 +02:00
- role: galaxy/healthchecks
# /role-specific:healthchecks
2023-04-11 16:39:02 +02:00
# role-specific:infisical
2023-06-02 16:50:15 +02:00
- role: galaxy/infisical
# /role-specific:infisical
2023-06-02 16:50:15 +02:00
# role-specific:hubsite
- role: galaxy/hubsite
# /role-specific:hubsite
# role-specific:ilmo
2023-07-17 14:45:18 +02:00
- role: galaxy/ilmo
# /role-specific:ilmo
2023-07-17 14:45:18 +02:00
# role-specific:influxdb
2023-06-29 00:51:46 +02:00
- role: galaxy/influxdb
# /role-specific:influxdb
2023-06-29 00:51:46 +02:00
# role-specific:jitsi
2023-04-02 15:39:59 +02:00
- role: galaxy/jitsi
# /role-specific:jitsi
2023-04-02 15:39:59 +02:00
# role-specific:keycloak
2023-04-02 15:39:59 +02:00
- role: galaxy/keycloak
# /role-specific:keycloak
2023-04-02 15:39:59 +02:00
# role-specific:lago
- role: galaxy/lago
# /role-specific:lago
2023-04-14 07:58:46 +02:00
# role-specific:linkding
2023-07-20 22:29:50 +02:00
- role: galaxy/linkding
# /role-specific:linkding
2023-07-20 22:29:50 +02:00
# role-specific:mobilizon
2023-04-05 17:01:58 +02:00
- role: galaxy/mobilizon
# /role-specific:mobilizon
2023-04-05 17:01:58 +02:00
# role-specific:mosquitto
2023-07-03 13:10:38 +02:00
- role: galaxy/mosquitto
# /role-specific:mosquitto
2023-07-03 13:10:38 +02:00
# role-specific:navidrome
2023-03-29 10:42:39 +02:00
- role: galaxy/navidrome
# /role-specific:navidrome
2023-03-29 10:42:39 +02:00
# role-specific:netbox
- role: galaxy/netbox
# /role-specific:netbox
# role-specific:nextcloud
2023-03-17 10:39:04 +01:00
- role: galaxy/nextcloud
# /role-specific:nextcloud
2023-03-17 10:39:04 +01:00
# role-specific:owncast
2023-03-29 13:13:17 +02:00
- role: galaxy/owncast
# /role-specific:owncast
2023-03-29 13:13:17 +02:00
# role-specific:outline
2023-09-19 10:15:33 +02:00
- role: galaxy/outline
# /role-specific:outline
2023-09-19 10:15:33 +02:00
# role-specific:oxitraffic
2023-11-08 11:55:32 +01:00
- role: galaxy/oxitraffic
# /role-specific:oxitraffic
2023-11-08 11:55:32 +01:00
# role-specific:peertube
2023-03-17 14:48:15 +01:00
- role: galaxy/peertube
# /role-specific:peertube
2023-03-17 14:43:45 +01:00
# role-specific:postgis
2023-04-05 17:01:58 +02:00
- role: galaxy/postgis
# /role-specific:postgis
2023-04-05 17:01:58 +02:00
# role-specific:prometheus
2023-03-20 16:54:01 +01:00
- role: galaxy/prometheus
# /role-specific:prometheus
# role-specific:prometheus_node_exporter
2023-03-17 23:13:30 +01:00
- role: galaxy/prometheus_node_exporter
# /role-specific:prometheus_node_exporter
# role-specific:prometheus_blackbox_exporter
2023-03-20 16:54:01 +01:00
- role: galaxy/prometheus_blackbox_exporter
# /role-specific:prometheus_blackbox_exporter
# role-specific:prometheus_postgres_exporter
2023-05-17 10:32:47 +02:00
- role: galaxy/prometheus_postgres_exporter
# /role-specific:prometheus_postgres_exporter
# role-specific:prometheus_ssh_exporter
2023-09-05 22:44:04 +02:00
- role: galaxy/prometheus_ssh_exporter
# /role-specific:prometheus_ssh_exporter
2023-03-17 23:13:30 +01:00
# role-specific:radicale
2023-03-15 09:58:12 +01:00
- role: galaxy/radicale
# /role-specific:radicale
2023-03-15 09:58:12 +01:00
# role-specific:redmine
2023-03-17 22:27:52 +01:00
- role: galaxy/redmine
# /role-specific:redmine
2023-03-17 22:27:52 +01:00
# role-specific:redis
2023-03-17 14:43:45 +01:00
- role: galaxy/redis
# /role-specific:redis
2023-03-17 14:43:45 +01:00
# role-specific:rumqttd
2023-06-28 22:41:48 +02:00
- role: galaxy/rumqttd
# /role-specific:rumqttd
2023-06-28 22:41:48 +02:00
# role-specific:semaphore
- role: galaxy/semaphore
# /role-specific:semaphore
# role-specific:soft_serve
2023-03-28 15:02:22 +02:00
- role: galaxy/soft_serve
# /role-specific:soft_serve
2023-03-28 15:02:22 +02:00
# role-specific:syncthing
2023-03-23 10:32:59 +01:00
- role: galaxy/syncthing
# /role-specific:syncthing
2023-03-23 10:32:59 +01:00
# role-specific:telegraf
2023-06-29 10:46:34 +02:00
- role: galaxy/telegraf
# /role-specific:telegraf
2023-06-29 10:46:34 +02:00
# role-specific:vaultwarden
- role: galaxy/vaultwarden
# /role-specific:vaultwarden
# role-specific:uptime_kuma
2023-03-15 09:58:12 +01:00
- role: galaxy/uptime_kuma
# /role-specific:uptime_kuma
2023-03-15 09:58:12 +01:00
# role-specific:wg_easy
2023-04-29 08:30:26 +02:00
- role: galaxy/wg_easy
# /role-specific:wg_easy
2023-04-29 08:30:26 +02:00
# role-specific:forgejo
- role: galaxy/forgejo
# /role-specific:forgejo
# role-specific:woodpecker_ci_server
- role: galaxy/woodpecker_ci_server
# /role-specific:woodpecker_ci_server
# role-specific:woodpecker_ci_agent
- role: galaxy/woodpecker_ci_agent
# /role-specific:woodpecker_ci_agent
2023-03-16 17:26:06 +01:00
# role-specific:roundcube
- role: galaxy/roundcube
# /role-specific:roundcube
# role-specific:auxiliary
- role: galaxy/auxiliary
# /role-specific:auxiliary
2023-03-20 10:03:59 +01:00
# role-specific:systemd_service_manager
2023-03-15 09:58:12 +01:00
- when: devture_systemd_service_manager_enabled | bool
role: galaxy/systemd_service_manager
# /role-specific:systemd_service_manager
2023-03-15 09:58:12 +01:00
# role-specific:playbook_state_preserver
2023-03-15 09:58:12 +01:00
# This is pretty much last, because we want it to better serve as a "last known good configuration".
# See: https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2217#issuecomment-1301487601
- when: devture_playbook_state_preserver_enabled | bool
role: galaxy/playbook_state_preserver
2023-03-15 09:58:12 +01:00
tags:
- setup-all
- install-all
# /role-specific:playbook_state_preserver
2023-03-15 09:58:12 +01:00
# role-specific:playbook_runtime_messages
- role: galaxy/playbook_runtime_messages
# /role-specific:playbook_runtime_messages