023fe3ea08
This allows people to try out the new Element X clients, which need to run against the sliding-sync proxy (https://github.com/matrix-org/sliding-sync). Supersedes https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2515 The code is based on the existing PR (#2515), but heavily reworked. Major changes: - lots of internal refactoring and variable renaming - fixed self-building to support non-amd64 architectures - changed to talk to the homeserver locally, over the container network (not publicly) - no more matrix-nginx-proxy support due to complexity (see below) - no more `matrix_server_fqn_sliding_sync_proxy` in favor of `matrix_sliding_sync_hostname` and `matrix_sliding_sync_path_prefix` - runs on `matrix.DOMAIN/sliding-sync` by default, so it can tried easily without having to create new DNS records
141 lines
4.7 KiB
YAML
Executable file
141 lines
4.7 KiB
YAML
Executable file
---
|
|
- name: "Set up a Matrix server"
|
|
hosts: "{{ target if target is defined else 'matrix_servers' }}"
|
|
become: true
|
|
|
|
roles:
|
|
# Most of the roles below are not distributed with the playbook, but downloaded separately using `ansible-galaxy` via the `just roles` command (see `justfile`).
|
|
- role: galaxy/com.devture.ansible.role.playbook_help
|
|
|
|
- role: galaxy/com.devture.ansible.role.systemd_docker_base
|
|
|
|
- role: custom/matrix_playbook_migration
|
|
|
|
- when: matrix_playbook_docker_installation_enabled | bool
|
|
role: galaxy/geerlingguy.docker
|
|
vars:
|
|
docker_install_compose: false
|
|
tags:
|
|
- setup-docker
|
|
- setup-all
|
|
- install-docker
|
|
- install-all
|
|
|
|
- when: devture_docker_sdk_for_python_installation_enabled | bool
|
|
role: galaxy/com.devture.ansible.role.docker_sdk_for_python
|
|
tags:
|
|
- setup-docker
|
|
- setup-all
|
|
- install-docker
|
|
- install-all
|
|
|
|
- when: devture_timesync_installation_enabled | bool
|
|
role: galaxy/com.devture.ansible.role.timesync
|
|
tags:
|
|
- setup-timesync
|
|
- setup-all
|
|
- install-timesync
|
|
- install-all
|
|
|
|
- custom/matrix-base
|
|
- custom/matrix-dynamic-dns
|
|
- custom/matrix-mailer
|
|
|
|
- role: galaxy/com.devture.ansible.role.postgres
|
|
|
|
- galaxy/redis
|
|
- custom/matrix-corporal
|
|
- custom/matrix-bridge-appservice-discord
|
|
- custom/matrix-bridge-appservice-slack
|
|
- custom/matrix-bridge-appservice-webhooks
|
|
- custom/matrix-bridge-appservice-irc
|
|
- custom/matrix-bridge-appservice-kakaotalk
|
|
- custom/matrix-bridge-beeper-linkedin
|
|
- custom/matrix-bridge-go-skype-bridge
|
|
- custom/matrix-bridge-mautrix-facebook
|
|
- custom/matrix-bridge-mautrix-twitter
|
|
- custom/matrix-bridge-mautrix-hangouts
|
|
- custom/matrix-bridge-mautrix-googlechat
|
|
- custom/matrix-bridge-mautrix-instagram
|
|
- custom/matrix-bridge-mautrix-signal
|
|
- custom/matrix-bridge-mautrix-telegram
|
|
- custom/matrix-bridge-mautrix-whatsapp
|
|
- custom/matrix-bridge-mautrix-discord
|
|
- custom/matrix-bridge-mautrix-slack
|
|
- custom/matrix-bridge-mx-puppet-discord
|
|
- custom/matrix-bridge-mx-puppet-groupme
|
|
- custom/matrix-bridge-mx-puppet-steam
|
|
- custom/matrix-bridge-mx-puppet-slack
|
|
- custom/matrix-bridge-mx-puppet-twitter
|
|
- custom/matrix-bridge-mx-puppet-instagram
|
|
- custom/matrix-bridge-sms
|
|
- custom/matrix-bridge-heisenbridge
|
|
- custom/matrix-bridge-hookshot
|
|
- custom/matrix-bot-matrix-reminder-bot
|
|
- custom/matrix-bot-matrix-registration-bot
|
|
- custom/matrix-bot-maubot
|
|
- custom/matrix-bot-buscarron
|
|
- custom/matrix-bot-honoroit
|
|
- custom/matrix-bot-postmoogle
|
|
- custom/matrix-bot-go-neb
|
|
- custom/matrix-bot-mjolnir
|
|
- custom/matrix-bot-draupnir
|
|
- custom/matrix-bot-chatgpt
|
|
- custom/matrix-cactus-comments
|
|
- custom/matrix-rageshake
|
|
- custom/matrix-synapse
|
|
- custom/matrix-synapse-reverse-proxy-companion
|
|
- custom/matrix-dendrite
|
|
- custom/matrix-conduit
|
|
- custom/matrix-synapse-admin
|
|
- galaxy/prometheus_node_exporter
|
|
- galaxy/prometheus_postgres_exporter
|
|
- custom/matrix-prometheus-nginxlog-exporter
|
|
- custom/matrix-prometheus
|
|
- galaxy/grafana
|
|
- custom/matrix-prometheus-services-proxy-connect
|
|
- custom/matrix-registration
|
|
- custom/matrix-client-element
|
|
- custom/matrix-client-hydrogen
|
|
- custom/matrix-client-cinny
|
|
- custom/matrix-jitsi
|
|
- custom/matrix-user-verification-service
|
|
- custom/matrix-ldap-registration-proxy
|
|
- custom/matrix-ma1sd
|
|
- custom/matrix-dimension
|
|
- galaxy/etherpad
|
|
- custom/etherpad-proxy-connect
|
|
- custom/matrix-sliding-sync
|
|
- custom/matrix-email2matrix
|
|
- custom/matrix-sygnal
|
|
- galaxy/ntfy
|
|
- custom/matrix-nginx-proxy
|
|
- custom/matrix-coturn
|
|
- custom/matrix-aux
|
|
|
|
- role: galaxy/com.devture.ansible.role.postgres_backup
|
|
|
|
- role: galaxy/backup_borg
|
|
|
|
- custom/matrix-user-creator
|
|
- custom/matrix-common-after
|
|
|
|
- role: galaxy/com.devture.ansible.role.container_socket_proxy
|
|
|
|
- role: galaxy/com.devture.ansible.role.traefik
|
|
|
|
- role: galaxy/com.devture.ansible.role.traefik_certs_dumper
|
|
|
|
- when: devture_systemd_service_manager_enabled | bool
|
|
role: galaxy/com.devture.ansible.role.systemd_service_manager
|
|
|
|
# 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/com.devture.ansible.role.playbook_state_preserver
|
|
tags:
|
|
- setup-all
|
|
- install-all
|
|
|
|
- role: galaxy/com.devture.ansible.role.playbook_runtime_messages
|