Commit graph

806 commits

Author SHA1 Message Date
Cody Wyatt Neiman 7e5e1712f5
Encode s3 sse-c key for utf-8 2023-01-03 17:53:33 -05:00
Cody Wyatt Neiman f5390562ed
Fix synapse s3 storage provider container indentation 2023-01-03 16:13:09 -05:00
Cody Wyatt Neiman 6d96bcee1d
Allow 'git' as a version for s3 storage provider 2023-01-03 15:18:49 -05:00
Cody Wyatt Neiman 4d44f7b49e
Use base64 encoded string for sse-c key 2023-01-03 15:18:09 -05:00
Cody Wyatt Neiman 4c60b1dabf
Merge branch 'master' into synapse-s3-sse-c 2023-01-03 14:31:02 -05:00
Cody Wyatt Neiman 12b8cb3aab
Fix localpart slack id regex for mautrix-slack 2023-01-02 21:58:52 -05:00
Cody Wyatt Neiman e977242022
Pull more mautrix-slack defaults from upstream 2023-01-02 21:31:04 -05:00
Cody Wyatt Neiman f4874d2e4a
Pull upstream mautrix-slack config defaults 2023-01-02 21:09:40 -05:00
Cody Wyatt Neiman 2e0dfb2dc1
Update slack bridge implementation 2023-01-02 20:07:04 -05:00
Cody Wyatt Neiman d07480a883
Remove hardcoded matrix-postgres references 2023-01-02 19:23:14 -05:00
Cody Wyatt Neiman 97c45676de
Update paths and vars for mautrix-slack to roles/custom 2023-01-02 19:13:58 -05:00
Cody Wyatt Neiman d6022d851e
Move mautrix-sack role files to new roles/custom path 2023-01-02 19:13:49 -05:00
Slavi Pantaleev 1abba4c918 Upgrade matrix-corporal (2.5.0 -> 2.5.1) 2023-01-02 14:39:54 +02:00
Slavi Pantaleev 73e689e48e Fix --tags=register-user not working on Dendrite due to broken Jinja syntax
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2369
2022-12-31 17:33:46 +02:00
Slavi Pantaleev ba09705f7f Make Jitsi auth setup not show credentials in the shell
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2363
2022-12-26 07:58:32 +02:00
Aine 6795fe3578
Update ntfy 1.29.1 -> 1.30.1 2022-12-23 15:46:33 +00:00
Aine 8b2a86e35e
update beeper-linkedin 0.5.3 -> 0.5.4 2022-12-23 13:00:35 +02:00
Kuchenmampfer d1442dec15
Upgrade Signald
Fixes the following issue when trying to use the !pm <phone number> command: https://gitlab.com/signald/signald/-/issues/345
2022-12-22 22:31:38 +00:00
adam-kress bef4fe5d9e
Update element v1.11.16 -> v1.11.17 2022-12-21 13:16:09 -05:00
Samuel Meenzen 0179b0f165
Remove conduit workaround
Conduit update 0.5.0 fixed the issue, so this is no longer needed.
2022-12-21 18:28:34 +01:00
Samuel Meenzen 33fb5a4665
Upgrade Conduit (0.4.0 -> 0.5.0) 2022-12-21 18:21:49 +01:00
Slavi Pantaleev 40aa42e982 Add reference to push.enabled to homeserver.yaml
Related to:

- https://github.com/matrix-org/synapse/pull/14551/files
- https://github.com/matrix-org/synapse/pull/14619/files
2022-12-21 06:43:43 +02:00
Slavi Pantaleev 42c4f0450d Upgrade Prometheus (2.40.7 -> 2.41.0) 2022-12-20 21:37:19 +02:00
Slavi Pantaleev d0b2a50768 Upgrade Hydrogen (v0.3.5 -> v0.3.6) 2022-12-20 21:36:39 +02:00
Joe Kappus deabd79452
Upgrade Synapse (1.73.0 -> 1.74.0)
Signed-off-by: Joe Kappus <joe@wt.gd>
2022-12-20 14:07:14 -05:00
Catalan Lover 5e30f6d4c4
Update Mjolnir from 1.5.0 to 1.6.1
Please note that This Mjolnir version bump technnically is missing some extra stuff that mjolnir claims we should do but it didnt work when i tried it and well my mjolnir deployment has been running this since release day almost and its fine. No errors in log that are unexpected. (Mjolnir throws errors in the log for anyone who wonders for various things that are fine. Like if a protection is off that is an error. Its due to how matrix-bot-lib works.)
2022-12-19 15:33:58 +01:00
Slavi Pantaleev f2e68469cb Upgrade nginx (1.23.2 -> 1.23.3) 2022-12-19 12:32:43 +02:00
Slavi Pantaleev 576eb0006c Upgrade Grafana (9.3.1 -> 9.3.2) 2022-12-17 22:49:34 +02:00
Slavi Pantaleev a7d39b109a Upgrade Redis (7.0.6 -> 7.0.7) 2022-12-17 22:48:48 +02:00
Slavi Pantaleev fa73513064 Upgrade mautrix-whatsapp (0.7.2 -> 0.8.0) 2022-12-17 22:47:38 +02:00
Aine 455b8aff15
Update prometheus 2.40.6 -> 2.40.7 2022-12-14 10:32:14 +00:00
Slavi Pantaleev 60127cdffd
Merge pull request #2339 from etkecc/patch-135
update redis 7.0.5 -> 7.0.6
2022-12-14 07:31:36 +02:00
Slavi Pantaleev 190f241bf5
Merge pull request #2340 from etkecc/patch-136
Update jitsi stable-8138 -> stable-8138-1
2022-12-14 07:31:31 +02:00
Aine bd0f21588f
Update jitsi stable-8138 -> stable-8138-1 2022-12-13 22:49:10 +00:00
Aine 07ca0267f1
update redis 7.0.5 -> 7.0.6 2022-12-13 22:47:30 +00:00
Aine f642f6fae7
update mautrix-instagram 0.2.2 -> 0.2.3 2022-12-13 22:45:52 +00:00
Slavi Pantaleev 1f593f708f Upgrade Jitsi (stable-8044 -> stable-8138)
Untested
2022-12-12 19:00:55 +02:00
Slavi Pantaleev 3f4ab0bd7e Upgrade Redis (7.0.4 -> 7.0.5) 2022-12-12 19:00:55 +02:00
Slavi Pantaleev e8ed318908
Merge pull request #2335 from gardar/fix-tag-typo
fix: unclosed tags typo
2022-12-12 08:18:03 +02:00
gardar b9afcead42 fix: unclosed tags typo 2022-12-11 23:25:59 +00:00
ikkemaniac 108ada75e8 update dashboard, fix typo, fix using original user ip
improve nginxlog matches to group URI's
2022-12-11 22:41:12 +01:00
Slavi Pantaleev f69d90c1e6 Upgrade Prometheus (2.40.5 -> 2.40.6) 2022-12-11 18:29:13 +02:00
Slavi Pantaleev 86d177266a Upgrade matrix-corporal (2.4.0 -> 2.5.0) 2022-12-11 18:29:13 +02:00
Slavi Pantaleev b0030bd62f
Merge pull request #2333 from mattcen/hydrogen-prebuilt-docker
Use upstream Docker image for amd64 rather than self-build
2022-12-11 17:01:48 +02:00
Matthew Cengia 3453fff901
Use upstream Docker image for amd64 rather than self-build 2022-12-11 21:25:43 +11:00
Slavi Pantaleev 2b89d5d92f Upgrade exim-relay (4.95-r0-4 -> 4.96-r1-0) 2022-12-11 11:45:47 +02:00
Luke Moch dd51ad2ba2 fail if matrix_synapse_ext_synapse_s3_storage_provider_config_endpoint_url 'not' startswith('http') 2022-12-10 08:13:55 -05:00
Slavi Pantaleev d81e7d6328 Make matrix_synapse_ext_synapse_s3_storage_provider_config_endpoint_url required
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2330
2022-12-10 10:37:01 +02:00
Slavi Pantaleev 3824139908 Rename inject_into_nginx_proxy.yml to init.yml when it does more than injection 2022-12-09 10:18:40 +02:00
Slavi Pantaleev f186d6236d Add some missing tags to Synapse role
Without these:

- `--tags=install-synapse` and `--tags=install-all` would be incomplete
and will not contain Synapse worker configuration

- `--tags=install-synapse-reverse-proxy-companion` and
  `--tags=setup-synapse-reverse-proxy-companion` would not contain
  Synapse worker configuration
2022-12-09 10:15:40 +02:00
Dan Arnfield 5823f1f298 Only delete playbook scripts from /usr/local/bin 2022-12-07 13:26:02 -06:00
Rhys fd79140201
Changes to allow a user to set the max participants on a jitsi conference (#2323)
* Changes to allow a user to set the max participants on a jitsi
conference

* changed var name from jitsi_max_participants to matrix_prosody_jitsi_max_participants
2022-12-07 17:54:58 +02:00
ikkemaniac 8ebf18a885
add prometheus-nginxlog-exporter role (#2315)
* add prometheus-nginxlog-exporter role

* Rename matrix_prometheus_nginxlog_exporter_container_url to matrix_prometheus_nginxlog_exporter_container_hostname

* avoid referencing variables from other roles, handover info using group_vars/matrix_servers

* fix: stop service when uninstalling

fix: typo

move available arch's into a var

fix: text

* fix: prometheus enabled condition

Co-authored-by: ikkemaniac <ikkemaniac@localhost>
2022-12-07 16:58:36 +02:00
Aine fda65a0a56
postmoogle - add missing join()s 2022-12-07 11:38:47 +00:00
Aine ba13231c58
update postmoogle 0.9.9 -> 0.9.10 2022-12-06 22:51:17 +02:00
Aine ba4580a1fd
Update element v1.11.15 -> v1.11.16 2022-12-06 14:50:56 +00:00
Slavi Pantaleev 9edc7da67d Do not specify now-unnecessary worker_main_http_uri Synapse worker setting
Related to

- c15e9a0edb
- 01a0527892
2022-12-06 15:54:06 +02:00
Slavi Pantaleev 13e7399104 Handle /timestamp_to_event via Synapse workers
Related to 8f10c8b054
2022-12-06 15:52:16 +02:00
Slavi Pantaleev 663fe29ddb Do not specify start_pushers in Synapse config
It's unnecessary when `pusher_instances` is populated.

Source: 6acb6d772a
2022-12-06 15:49:56 +02:00
Slavi Pantaleev 135bb5af3e Do not specify send_federation in Synapse config
It's unnecessary when `federation_sender_instances` is populated.

Source: 6acb6d772a
2022-12-06 15:49:28 +02:00
Slavi Pantaleev 84d529b542 Upgrade Synapse (v1.72.0 -> v1.73.0)
Synapse Worker configuration updates are coming later.
2022-12-06 15:47:07 +02:00
Slavi Pantaleev b1c77f9bf2 Add comment to matrix-backup-borg.service
Related to 8005557061
2022-12-05 15:45:33 +02:00
Slavi Pantaleev 8005557061 Give backup-borg container more permissions to perform the backup
Running with a user (like `matrix:matrix`) fails if Etherpad is enabled,
because `/matrix/etherpad` is owned by `matrix_etherpad_user_uid`/`matrix_etherpad_user_gid` (`5001:5001`).

The `matrix` user can't acccess the Etherpad directory for this reason
and Borgmatic fails when trying to make a backup.

There may be other things under `/matrix` which similarly use
non-`matrix:matrix` permissions.

Another workaround might have been to add `/matrix/etherpad` (and
potentially other things) to `matrix_backup_borg_location_exclude_patterns`, but:

- that means Etherpad won't be backed up - not great
- only excluding Etherpad may not be enough. There may be other files we
  need to exclude as well

---

Running with `root` is still not enough though.

We need at least the `CAP_DAC_OVERRIDE` capability, or we won't be able to read the
`/etc/borgmatic.d/config.yaml` configuration file (owned by
`matrix:matrix` with `0640` permissions).

---

Additionally, it seems like the backup process tries to write to at least a few directories:
- `/root/.borgmatic`
- `/root/.ssh`
- `/root/.config`

> [Errno 30] Read-only file system: '/root/.borgmatic'
> Error while creating a backup.
> /etc/borgmatic.d/config.yaml: Error running configuration file

We either need to stop mounting the container filesystem as readonly
(remove `--read-only`) or to allow writing via a `tmpfs`.

I've gone the `tmpfs` route which seems to work.

In any case, the mounted source directories (`matrix_backup_borg_location_source_directories`)
are read-only regardless, so our actual source files are protected from unintentional changes.
2022-12-05 15:42:57 +02:00
Slavi Pantaleev 64b03c2dfd Fix backup-borg repository initialization for borgmatic 1.7+ (or borg 2.0) 2022-12-05 15:00:11 +02:00
Slavi Pantaleev 1f1a3dfc38 Ensure database port is passed to Borg as an integer
Without this, it's a string and borg says:

> At 'hooks.postgresql_databases[INDEX_HERE].port': '5432' is not of type 'integer'
> /etc/borgmatic/config.yaml /etc/borgmatic.d /tmp/.config/borgmatic/config.yaml /tmp/.config/borgmatic.d: No valid configuration files found

.. and fails to do anything.
2022-12-05 14:42:02 +02:00
Slavi Pantaleev d8df03dfc9 Mark Postgres v15 as supported for borg backup
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2257

Fixed in d134cd7c4c
(thanks to `alpine:latest` now being `alpine:3.17.0`, which includes
Postgres v15)
2022-12-05 11:46:49 +02:00
Slavi Pantaleev b2a40effaf Fix Element self-building by switching to docker-buildx
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2318
2022-12-05 10:02:54 +02:00
Slavi Pantaleev 6414599079 Upgrade Coturn (4.6.0 -> 4.6.1) 2022-12-05 09:46:11 +02:00
Slavi Pantaleev 7464604ddd Make use of matrix_synapse_ext_s3_storage_provider_data_path in a few more places 2022-12-04 10:17:55 +02:00
Quentin Young b31731ebf8 fix s3 storage provider not ensuring data dir
This path is accessed by the s3 storage provider stuff and needs to be
ensured.

Broken by 7c5c3aedc
2022-12-04 01:16:58 -05:00
Slavi Pantaleev ceb2c30277 Upgrade mautrix-signal (v0.4.1 -> v0.4.2) 2022-12-03 15:37:17 +02:00
Slavi Pantaleev d59bbfdfc9 Upgrade Hookshot (2.4.0 -> 2.5.0) 2022-12-02 19:15:04 +02:00
Slavi Pantaleev a353bda7a1 Upgrade appservice-slack (2.0.1 -> 2.0.2) 2022-12-01 23:30:09 +02:00
Slavi Pantaleev 9e93030159 Upgrade Grafana (9.3.0 -> 9.3.1) 2022-12-01 23:29:33 +02:00
Aine ea401170e1
Update prometheus 2.40.4 -> 2.40.5 2022-12-01 15:16:33 +00:00
Aine 8ca6cdd016
fix hookshot role 2022-11-30 12:25:51 +00:00
Slavi Pantaleev e3d21e8096 Rename some default Hookshot variables
Fixup for 7e2e2626a0

Some references were left unrenamed which caused `validate_config.yml`
to trigger.
2022-11-30 11:55:23 +02:00
Slavi Pantaleev dc817f30ce Upgrade Grafana (9.2.7 -> 9.3.0) 2022-11-30 11:50:21 +02:00
Slavi Pantaleev 9d5b5d7a01
Merge pull request #2308 from etkecc/patch-129
Update grafana 9.2.6 -> 9.2.7
2022-11-30 11:28:39 +02:00
Slavi Pantaleev 4eed49f931 Replace custom/matrix-postgres-backup role with galaxy/com.devture.ansible.role.postgres_backup
This role is usable on its own and it's not tied to Matrix, so
extracting it out into an independent role that we install via
ansible-galaxy makes sense.

This also fixes the confusion from the other day, where
`matrix_postgres_*` had to be renamed to `devture_postgres_*`
(unless it was about `matrix_postgres_backup_*`).
We now can safely say that ALL `matrix_postgres_*` variables need to be
renamed.

Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2305
2022-11-30 11:01:19 +02:00
Aine d37adfba4e
Update grafana 9.2.6 -> 9.2.7 2022-11-30 08:48:07 +00:00
Aine 65019a5774
Update prometheus 2.40.2 -> 2.40.4 2022-11-30 08:30:50 +00:00
Slavi Pantaleev bc64d8ed9a Upgrade prometheus-node-exporter (v1.4.0 -> v1.5.0) 2022-11-30 08:32:29 +02:00
Slavi Pantaleev 4a62df2ea3 Make Hookshot logging-level configurable 2022-11-30 08:18:41 +02:00
Slavi Pantaleev 84f306b236 Add support for enableHttpGet and waitForComplete Hookshot options
Supersedes https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2256
2022-11-30 08:16:58 +02:00
Slavi Pantaleev 7e2e2626a0 Make hookshot variable names consistent with the rest of the playbook
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2256
2022-11-30 08:13:39 +02:00
Array in a Matrix d5e8d2a939
update dendrite 2022-11-29 11:58:00 -05:00
Slavi Pantaleev 8c5e34b37f Upgrade ddclient (v3.10.0-ls105 -> v3.10.0-ls106) 2022-11-29 08:20:36 +02:00
Slavi Pantaleev 4b2d30a474 Fix matrix_dendrite_client_api_turn_shared_secret not being defined
Regression since https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2290
2022-11-28 18:33:18 +02:00
Slavi Pantaleev 5b26647127 Upgrade Certbot (v1.31.0 -> v2.0.0) and switch to new default key type (ecdsa)
More details about the new key type can be found here:
https://eff-certbot.readthedocs.io/en/stable/using.html#rsa-and-ecdsa-keys

Existing RSA-based keys will continue to renew as RSA until manual
action is taken. Example from the documentation above:
> certbot renew --key-type ecdsa --cert-name example.com --force-renewal

In the future, we may add a command which does this automatically for
all domains.
2022-11-28 09:24:25 +02:00
Slavi Pantaleev 4b111d05d5 Pass devture_postgres_db_migration_request to com.devture.ansible.role.postgres in a cleaner way 2022-11-28 07:44:59 +02:00
Slavi Pantaleev 910cd9adf0 Replace import_role calls with include_role calls 2022-11-27 11:27:01 +02:00
Slavi Pantaleev 3d1ea3e79e Auto-delete old matrix scripts from /usr/local/bin 2022-11-27 10:10:00 +02:00
Slavi Pantaleev d1b2fd50be Remove manual service enablement/start for backup-borg
This is done via devture_systemd_service_manager_services_list_auto
already.
2022-11-27 10:04:03 +02:00
Slavi Pantaleev 2688e8bfc3 Optimize initial installation by not reloading systemd after each .service install
We expect `--tags=start` to handle systemd reloading, so we don't need
to do it manually each time we install/uninstall a .service file.
2022-11-27 10:02:45 +02:00
Slavi Pantaleev 707e909b9b /usr/local/bin/matrix-ssl-lets-encrypt-certificates-renew -> /matrix/ssl/bin/lets-encrypt-certificates-renew 2022-11-27 09:53:23 +02:00
Slavi Pantaleev fb86f6d5e7 /usr/local/bin/matrix-remove-all -> /matrix/bin/remove-all 2022-11-27 09:47:02 +02:00
Slavi Pantaleev c928148261 Make uninstall tasks for Synapse delete bin/ 2022-11-27 09:43:25 +02:00
Slavi Pantaleev 40cf9cd72c /usr/local/bin/matrix-dendrite-create-account -> /matrix/dendrite/bin/create-account 2022-11-27 09:42:10 +02:00
Slavi Pantaleev 7c5c3aedc4 Put s3-storage-provider scripts under /matrix/synapse/ext/s3-storage-provider/bin, not /usr/local/bin 2022-11-27 09:38:34 +02:00
Slavi Pantaleev 735e7355a5 Rename variable (matrix_synapse_ext_s3_storage_provider_path -> matrix_synapse_ext_s3_storage_provider_base_path) 2022-11-27 09:28:29 +02:00
Slavi Pantaleev 72744f9db9 /usr/local/bin/matrix-synapse-register-user -> /matrix/synapse/bin/register-user 2022-11-27 09:26:18 +02:00
Slavi Pantaleev 7b43ef34b7 Remove more hardcoded matrix-postgres references 2022-11-27 09:16:18 +02:00
Slavi Pantaleev 3d5d843418 Replace some devture_postgres_identifier instances with devture_postgres_connection_hostname 2022-11-27 08:31:54 +02:00
Slavi Pantaleev eedf5ad94d Remove some hardcoded matrix-postgres references 2022-11-27 08:23:43 +02:00
Slavi Pantaleev 04b9483f0d Switch from matrix-postgres to com.devture.ansible.role.postgres 2022-11-27 08:04:31 +02:00
Slavi Pantaleev dd9ae0d25c Fix accidentally swapped tags (rust-synapse-compress-state and update-user-password) 2022-11-27 07:24:39 +02:00
Aine ea0c9ed71d
update mautrix-telegram 0.12.1 -> 0.12.2 2022-11-26 18:48:04 +00:00
Array in a Matrix 504d4a4134
Add dendrite captcha config to doc and hCaptcha (#2290)
* added dendrite captcha options

* added hcaptcha doc

* proper url

* Apply suggestions from code review

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

* Update main.yml

* renamed captcha vars to new naming scheme

* change vars to new format

* Rename back some incorrect renamed variables

These variables are either not just part of the `client_api` subsection,
or are not even part of that section at all. They shouldn't have been
renamed in baaef2ed616e2645550d9

* Fix up naming inconsistencies

Some of these variables had been renamed in one place,
but not in other places, so it couldn't have worked that way.

* Add validation/deprecation for renamed Dendrite variables

Related to 4097898f885cf4c73, baaef2ed616e2645550, 68f4418092fa8ad
and a0b4a0ae6b2f1f18

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2022-11-26 09:27:43 +02:00
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 4146c48f6a2e71d1b0d3f58c767aea1b2f4f789c.

* 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