Commit Graph

347 Commits

Author SHA1 Message Date
Slavi Pantaleev
16c18b0344 Upgrade Hydrogen (v0.3.4 -> v0.3.5) 2022-11-25 18:59:01 +02:00
Slavi Pantaleev
fa523c6472 Remove blank lines 2022-11-25 17:36:42 +02:00
Slavi Pantaleev
a04f6f4e3d Optimize uninstall tasks a bit
- forego removing Docker images - it's not effective anyway, because it
  only removes the last version.. which is a drop in the bucket, usually

- do not reload systemd - it's none of our business. `--tags=start`,
  etc., handle this

- combine all uninstall tasks under a single block, which only runs if
  we detect traces (a leftover systemd .service file) of the component.
  If no such .service is detected, we skip them all. This may lead to
  incorect cleanup in rare cases, but is good enough for the most part.
2022-11-25 17:28:57 +02:00
Slavi Pantaleev
61f67d8f0a Add install-* tags for quicker runs 2022-11-25 16:02:51 +02:00
Slavi Pantaleev
42f3c3cbf6 Improve command for connecting to additional container networks 2022-11-25 10:22:25 +02:00
Slavi Pantaleev
b59981f03c Remove incorrectly places task
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2297
2022-11-25 06:17:14 +02:00
Karmanyaah Malhotra
140acfcc5f
Exempt Matrix server from ntfy rate limit (#2135)
* Exempt Matrix server from ntfy rate limit

Add the matrix fqdn and localhost to ntfy's exemption list.
Also allow all ntfy rate limits to be configured through Ansible
variables.

* Fix names and formatting

* fixes

* tabs not spaces

* Lint

* Use raw tags instead of bracket soup
2022-11-24 21:12:43 +02:00
Slavi Pantaleev
9c0cf5481a Try to be more helpful when matrix_homeserver_generic_secret_key appears to be undefined 2022-11-24 18:42:01 +02:00
Slavi Pantaleev
663a17ea10 Fix ansible-lint-reported errors 2022-11-24 17:39:34 +02:00
Slavi Pantaleev
c37cf42427 Do not delete and re-create Synapse worker configs needlessly
We had checks to avoid stopping/deleting systemd services for workers
that used to exist and will continue to exist, but we were deleting
config files for workers each time.. Only to recreate them again later.

This lead to:

- too many misleading "changed" tasks
- too much unnecessary work
- potential failures during playbook execution possibly leaving the
  system in a bad state (no worker config files)
2022-11-24 17:06:31 +02:00
Slavi Pantaleev
2e7b5c7b02 Untangle the setup import/include mess in matrix-synapse 2022-11-24 16:27:11 +02:00
Slavi Pantaleev
d29b0aeddb Replace even more import_tasks calls with include_tasks 2022-11-24 15:19:42 +02:00
Slavi Pantaleev
7c2a7a8eb6 Replace most import_tasks calls with include_tasks for improved performance 2022-11-24 11:33:45 +02:00
Aine
e05b4c78c7
Update grafana 9.2.5 -> 9.2.6 2022-11-23 16:02:28 +00:00
Slavi Pantaleev
787a82d6e8 Combine matrix user/group set_fact calls into one 2022-11-23 17:07:52 +02:00
Slavi Pantaleev
4d881477a3 Add matrix_homeserver_enabled variable
We need this to control whether `('matrix-' + matrix_homeserver_implementation + '.service')`
would get injected into `devture_systemd_service_manager_services_list_auto`
2022-11-23 16:56:39 +02:00
Slavi Pantaleev
dd4f8df905 Remove unnecessary matrix_dendrite_role_executed 2022-11-23 16:15:33 +02:00
Slavi Pantaleev
8c180306ab Remove unnecessary matrix_conduit_role_executed 2022-11-23 16:14:59 +02:00
Slavi Pantaleev
07c23b7cb0 Remove matrix_synapse_role_executed and various tasks that check it
This was useful when the order of these roles in relation to Synapse
mattered (when we were injecting stuff into Synapse variables during
runtime). This is no longer the case since 0ea7cb5d18, so all of
this can be removed.
2022-11-23 16:13:07 +02:00
Slavi Pantaleev
735bacca89 Do not run matrix-nginx-proxy config injection tasks unless necessary
These `init.yml` (now `inject_into_nginx_proxy.yml`) tasks do not need
to `always` run. They only need to run for `setup-all` and
`setup-nginx-proxy`. Unless we're dealing with these 2 tags, we can
spare ourselves a lot of work.

This patch also moves the `when` statement from `init.yml` into
`main.yml` in an effort to further optimize things by potentially
avoiding the extra file include.
2022-11-23 15:52:58 +02:00
Slavi Pantaleev
d829884642 Remove some old checks 2022-11-23 14:59:05 +02:00
Slavi Pantaleev
ccfaefa4d2 Add service groups 2022-11-23 11:45:47 +02:00
Slavi Pantaleev
93d4f8d425 Replace matrix-common-after systemd service management with com.devture.ansible.role.systemd_service_manager 2022-11-23 11:45:46 +02:00
Slavi Pantaleev
eec5de7aba Remove old systemd service checks
These are not even caused by Archlinux, but by running buggy Ansible on old Ubuntu
while targeting modern servers (like Archlinux, but also others, ..).

We shouldn't employ ugly workarounds like this. We should tell people to
avoid running buggy Ansible or bad distros like Ubuntu, even.
2022-11-23 11:45:46 +02:00
Slavi Pantaleev
360e643f84 Add service priorities - try to stop/start them in an optimal order 2022-11-23 11:45:46 +02:00
Slavi Pantaleev
0ea7cb5d18 Remove various init.yml files - initialize systemd services, etc., statically (not at runtime) 2022-11-23 11:45:46 +02:00
Aine
5c4d4dc514
Update element 1.11.14 -> 1.11.15 2022-11-22 21:41:43 +00:00
Array in a Matrix
11ea49075d
Update main.yml 2022-11-22 11:16:19 -05:00
Array in a Matrix
70be6eb323
Update dendrite.yaml.j2 2022-11-22 11:13:53 -05:00
Slavi Pantaleev
e37db0c888 Upgrade Synapse (v1.71.0 -> v1.72.0) 2022-11-22 16:41:14 +02:00
Slavi Pantaleev
b90956069c Fix matrix_architecture sanity check 2022-11-22 09:25:29 +02:00
Slavi Pantaleev
2ad6bd87c7 Determine matrix_architecture automatically 2022-11-22 09:22:56 +02:00
Slavi Pantaleev
a98f249e40 Remove old cleanup tasks 2022-11-22 09:02:37 +02:00
Slavi Pantaleev
d8f2141eb0 Install Docker via geerlingguy.docker Galaxy role 2022-11-22 09:01:26 +02:00
Slavi Pantaleev
7ac27becaf Upgrade ddclient (v3.10.0-ls103 -> v3.10.0-ls105) 2022-11-22 08:33:54 +02:00
Slavi Pantaleev
6a870a07b2 Fix ansible-lint-reported errors 2022-11-20 18:02:50 +02:00
Slavi Pantaleev
e9e84341a9 Reverse-proxy to Synapse via matrix-synapse-reverse-proxy-companion
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2090
2022-11-20 16:43:33 +02:00
Array in a Matrix
7cc668489b
add auto join option to dendrite config (#2255)
* add auto join option to dendrite config

* added   auto_join_rooms: variable

* added "configuring dendrite" entry

* created dendite configuration documentation

* fixed config path

* Update docs/configuring-playbook-dendrite.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update docs/configuring-playbook-dendrite.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update docs/configuring-playbook-dendrite.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update docs/configuring-playbook-dendrite.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update docs/configuring-playbook-dendrite.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update roles/custom/matrix-dendrite/defaults/main.yml

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* correction

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2022-11-20 10:11:21 +02:00
Aine
eec7970689
update postmoogle 0.9.8 -> 0.9.9 2022-11-19 00:55:03 +02:00
NullIsNot0
77451c6a71
Enable location sharing in Element (#2276)
* Enable location sharing in Element

* Update roles/custom/matrix-client-element/tasks/validate_config.yml

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update roles/custom/matrix-client-element/tasks/setup_install.yml

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Rename location sharing vars to be consistent with other vars

* Rename style.json to map_style.json

* Add m.tile_server section to /.well-known/matrix/client

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2022-11-18 15:07:53 +02:00
Warren Bailey
84c74136ea
Provision extra Jitsi JVB services on additional hosts (#2166)
* Add task to configure a standalone JVB on a different server

* add missing file

* set nginx config

* update prosody file and expose port 5222

* change variable name to server id

* formatting change

* use server id of jvb-1 for the main server

* adding documentation

* adding more jvbs

* rename variable

* revert file

* fix yaml error

* minor doc fixes

* renaming tags and introducing a common tag

* remove duplicates

* add mapping for jvb to hostname/ip

* missed a jvb_server

* Update roles/matrix-nginx-proxy/templates/nginx/conf.d/matrix-jitsi.conf.j2

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* PR review comments and additional documentation

* iterate on dict items

* Update docs/configuring-playbook-jitsi.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update docs/configuring-playbook-jitsi.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update docs/configuring-playbook-jitsi.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update docs/configuring-playbook-jitsi.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update docs/configuring-playbook-jitsi.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update docs/configuring-playbook-jitsi.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update docs/configuring-playbook-jitsi.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* adding documentation around the xmpp setting

* add common after

* reduce the number of services during init of the additional jvb

* remove rogue i

* revert change to jitsi init as it's needed

* only run the jvb service on the additional jvb host

* updating docs

* reset default and add documentation about the websocket port

* fix issue rather merge with master

* add missing role introduced in master

* this role is required too

* Adding new jitsi jvb playbook, moving setup.yml to matrix.yml and creating soft link

* updating documentation

* revert accidental change to file

* add symlink back to roles to aid running of the jitsi playbook

* Remove extra space

* Delete useless playbooks/roles symlink

* Remove blank lines

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2022-11-18 14:00:27 +02:00
Warren Bailey
45c0467745
Sentry DNS setting in Jitsi jvb and jicofo (#2274)
* Jitsi control sentry dns using vars

* renaming variables

* Revert "renaming variables"

This reverts commit 4146c48f6a.

* set to connection string or 0 to disable

* Update comments

* Use empty string for default Sentry DSN variables

Both should work identically, but an empty string seems better

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2022-11-18 13:31:40 +02:00
Aine
9106033949
Update ntfy 1.29.0 -> 1.29.1 2022-11-18 06:21:57 +00:00
Aine
6a71b3fab3
update prometheus 2.40.1 -> 2.40.2 2022-11-17 17:22:04 +00:00
Aine
795dcb112b
Update grafana 9.2.4 -> 9.2.5 2022-11-16 19:14:17 +00:00
Slavi Pantaleev
3a053a26de
Merge pull request #2262 from llasse/add-ma1sd-dockernetworks
added matrix_ma1sd_container_additional_networks
2022-11-16 15:44:35 +02:00
Aine
79512d5851
Update mautrix-whatsapp 0.7.1 -> 0.7.2 2022-11-16 10:47:38 +00:00
Aine
1c55827ed0
Update mautrix-googlechat 0.3.3 -> 0.4.0 2022-11-16 06:17:30 +00:00
Slavi Pantaleev
a93308d190
Merge pull request #2266 from etkecc/patch-119
Update jitsi stable-7882 -> stable-8044
2022-11-15 18:01:39 +02:00
Aine
25996b4fa9
Update jitsi stable-7882 -> stable-8044 2022-11-15 15:50:46 +00:00
Aine
94f2e06e83
Update mautrix-facebook 0.4.0 -> 0.4.1 2022-11-15 15:49:32 +00:00
Llasse
1387e776ca added matrix_ma1sd_container_additional_networks similar to matrix_nginx_proxy_container_additional_networks 2022-11-13 20:40:23 +01:00
Cody Wyatt Neiman
b6bb5731cd
Remove leftover sse-c enabled cmd check 2022-11-13 03:20:30 -05:00
Cody Wyatt Neiman
a7320e02ff
Adjust sse-c template formatting 2022-11-13 03:18:53 -05:00
Aine
c68def0809
Update ntfy 1.28.0 -> 1.29.0 2022-11-12 22:01:31 +00:00
Aine
19b59f9ded
Update Hydrogen 0.3.3 -> 0.3.4 2022-11-10 17:56:59 +00:00
Cody Wyatt Neiman
384da4f34f
Add S3 SSE-C support to synapse-s3-storage-provider 2022-11-09 16:16:33 -05:00
Aine
ea0c7e27e3
Update prometheus 2.40.0 -> 2.40.1 2022-11-09 15:32:09 +00:00
Aine
65e340519d
Update element v1.11.13 -> v1.11.14 2022-11-08 16:24:33 +00:00
Slavi Pantaleev
51674887ff Fix Synapse pusher_instances not being populated correctly
This caused push notifications to be delivered more than once
if multiple `pusher` workers were enabled.
2022-11-08 17:40:44 +02:00
Slavi Pantaleev
59c6d37ebc
Merge pull request #2245 from etkecc/patch-113
Update prometheus 2.39.1 -> 2.40.0
2022-11-08 16:54:49 +02:00
Aine
6c2612a1a6
Update prometheus 2.39.1 -> 2.40.0 2022-11-08 14:29:37 +00:00
Aine
67d0709ea6
Update Grafana 9.2.3 -> 9.2.4 2022-11-08 14:28:37 +00:00
Slavi Pantaleev
7871a92b04 Upgrade Synapse (v1.70.1 -> v1.71.0) 2022-11-08 16:25:52 +02:00
Aine
a4dbc27f34
remove etherpad nginx config automatically 2022-11-05 19:40:09 +02:00
drelephant
5642586820
Merge branch 'spantaleev:master' into fixgradle 2022-11-06 00:39:42 +11:00
mouse
5e1bcf3f76 stop gradle pacman error on ubuntu 2022-11-06 00:20:44 +11:00
Aine
e3b3f07607
etherpad: add abiword and soffice config options 2022-11-05 13:19:00 +02:00
Slavi Pantaleev
663f0bc5ef Install openssl using ansible.builtin.package, not using a distro-specific package manager module
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2228
2022-11-05 12:10:59 +02:00
Slavi Pantaleev
5ef70015cb Ensure git is installed using ansible.builtin.package, not using a distro-specific package manager module
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2228
2022-11-05 12:09:32 +02:00
Slavi Pantaleev
13b63eabf0
Merge pull request #2229 from etkecc/make-etherpad-great-again
standalone etherpad
2022-11-05 11:54:51 +02:00
Slavi Pantaleev
805b70bfa3 Announce standalone Etherpad 2022-11-05 11:47:47 +02:00
Aine
39e4b419dd
matrix-etherpad: fail when mode is 'dimension', but dimension is disabled 2022-11-05 09:29:53 +02:00
Slavi Pantaleev
2473cd655b Include ensure_openssl_installed and ensure_fuse_installed utils in a more reliable way
This fixes a regression since the change done in c1c152f7ac.
When another role (say `matrix-jitsi`) included `roles/custom/matrix-base/tasks/util/ensure_openssl_installed.yml`,
which then included `{{ role_path }}/tasks/util/ensure_openssl_installed_DISTRO.yml`,
that `role_path` variable would end up being the parent role
(`matrix-jitsi`) and not the `matrix-base` role, so we'd get a failure.

An alternative solution may have been to avoid using `role_path`, but
importing roles properly (like we've done in this patch) sounds like a better way.

Unfortunately, `import_role` fails if `tasks_from` is something like
`util/ensure_openssl_installed` (containing a `/`), so I had to move
these utils out of `util/`.

Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2228
2022-11-05 09:18:58 +02:00
Aine
06eb186729
add matrix_etherpad_mode 2022-11-05 09:17:47 +02:00
Slavi Pantaleev
c1c152f7ac Include potentially distro-specific tasks at runtime
This avoids Ansible trying to ensure `community.general.pacman` is
available, even if that module will never run (because `when` says so).

Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2228
2022-11-05 08:31:22 +02:00
Slavi Pantaleev
264d1716e0
Merge pull request #2230 from etkecc/fix-workers-yaml-include-path
Keep Synapse worker definitions in vars.yml to avoid an extra file include on each playbook task
2022-11-05 07:45:13 +02:00
Slavi Pantaleev
6c524302d6 Add intentionally-ignored-endpoints to intentionally-ignored-endpoints for completeness 2022-11-05 07:40:56 +02:00
Slavi Pantaleev
a9e2607d80 Fix yaml[comments-indentation] in workers config and remove automation 2022-11-05 07:29:47 +02:00
Darren Rambaud
1c643263dd dendrite: update image tag to latest release (0.10.7)
- https://github.com/matrix-org/dendrite/releases/tag/v0.10.7
2022-11-04 15:16:14 -05:00
Aine
da4a82c48b
remove old workers.yml (already saved into main.yml) 2022-11-04 19:02:24 +02:00
Aine
37d4bf0d1c
fix workers-doc-to-yaml 2022-11-04 18:55:57 +02:00
Aine
9b97957022
Merge branch 'master' into make-etherpad-great-again 2022-11-04 17:36:15 +02:00
Slavi Pantaleev
a4e2a3bc07 Upgrade Hydrogen (v0.3.2 -> v0.3.3) 2022-11-04 17:07:29 +02:00
Slavi Pantaleev
d3bd1ca024 matrix_*_retries_{count,delay} -> devture_playbook_help_*_retries_{count,delay} 2022-11-04 16:44:29 +02:00
Slavi Pantaleev
4f4c856e43 matrix_host_command_systemctl -> devture_systemd_docker_base_host_command_systemctl (via com.devture.ansible.role.systemd_docker_base) 2022-11-04 16:41:23 +02:00
Slavi Pantaleev
7086c0ebe3 matrix_host_command_sh -> devture_systemd_docker_base_host_command_sh (via com.devture.ansible.role.systemd_docker_base) 2022-11-04 16:40:25 +02:00
Slavi Pantaleev
a9a81460ec matrix_host_command_docker -> devture_systemd_docker_base_host_command_docker (via com.devture.ansible.role.systemd_docker_base) 2022-11-04 16:39:35 +02:00
Slavi Pantaleev
835d2e9581 matrix_systemd_path -> devture_systemd_docker_base_systemd_path (via com.devture.ansible.role.systemd_docker_base) 2022-11-04 16:38:38 +02:00
Slavi Pantaleev
f03f716989 matrix_systemd_unit_home_path -> devture_systemd_docker_base_systemd_unit_home_path (via com.devture.ansible.role.systemd_docker_base) 2022-11-04 16:37:47 +02:00
Slavi Pantaleev
04c6c11561 Install ntpd/systemd-timesync via com.devture.ansible.role.timesync 2022-11-04 16:34:23 +02:00
Slavi Pantaleev
db19482d0c Replace matrix_playbook_runtime_results with devture_playbook_runtime_messages_list (via com.devture.ansible.role.playbook_runtime_messages) 2022-11-04 16:19:17 +02:00
Slavi Pantaleev
c3a7237de7 Initial work on using externally defined roles 2022-11-04 14:58:28 +02:00
Aine
83c40fce15
standalone etherpad 2022-11-04 11:36:10 +02:00
Slavi Pantaleev
4cbea602dd Sync appservice-discord configuration with upstream 2022-11-03 11:50:40 +02:00
Slavi Pantaleev
995ef460e7 Upgrade appservice-discord (3.0.0 -> 3.1.0) 2022-11-03 11:46:12 +02:00
Slavi Pantaleev
410a915a8a Move roles/matrix* to roles/custom/matrix*
This paves the way for installing other roles into `roles/galaxy` using `ansible-galaxy`,
similar to how it's done in:

- https://github.com/spantaleev/gitea-docker-ansible-deploy
- https://github.com/spantaleev/nextcloud-docker-ansible-deploy

In the near future, we'll be removing a lot of the shared role code from here
and using upstream roles for it. Some of the core `matrix-*` roles have
already been extracted out into other reusable roles:

- https://github.com/devture/com.devture.ansible.role.postgres
- https://github.com/devture/com.devture.ansible.role.systemd_docker_base
- https://github.com/devture/com.devture.ansible.role.timesync
- https://github.com/devture/com.devture.ansible.role.vars_preserver
- https://github.com/devture/com.devture.ansible.role.playbook_runtime_messages
- https://github.com/devture/com.devture.ansible.role.playbook_help

We just need to migrate to those.
2022-11-03 09:11:29 +02:00