Commit Graph

1536 Commits

Author SHA1 Message Date
Slavi Pantaleev
e1363c9b9b Add lt-cred-mech authentication mechanism to Coturn
All homeserver implementations have been updated to support this as
well.

It's just Jitsi that possibly doesn't work with anything other than `auth-secret`.

Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/3191
2024-02-18 09:52:00 +02:00
Slavi Pantaleev
2fa82b8bca Disable media_patterns for mautrix-discord
Media didn't work before this patch, likely because this feature is broken:

> N.B. Discord now requires signed expiring download links, which means this solution no longer works. In the future, a more dynamic solution may be implemented where requests go to the bridge and the bridge and the bridge refetches the message if necessary.

Source: https://docs.mau.fi/bridges/go/discord/direct-media.html

Moreover, most users more likely don't want this behavior and would
prefer to keep a complete mirror of the media on Matrix, instead of
going through two 3rd party servers to fetch the media on demand.

The default config for the bridge
(https://github.com/mautrix/discord/blob/main/example-config.yaml)
actually does not enable it.

It seems like 4ed522e8fe
(https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3133)
lied to us as to what upstream does. Poor PR review lead to this
anti-feature making it into the playbook.
2024-02-18 07:53:39 +02:00
Slavi Pantaleev
63b945dc1a Fix incorrect image tag reference for mautrix-signal
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/3192
2024-02-17 08:22:33 +02:00
Slavi Pantaleev
d3c8fd8ad5 Pin mautrix-signal to v0.5.0
Ref: https://github.com/mautrix/signal/releases/tag/v0.5.0
2024-02-16 18:51:06 +02:00
renovate[bot]
e19db8a563
Update nginx Docker tag to v1.25.4 2024-02-14 22:41:48 +00:00
Slavi Pantaleev
c203bef912 Downgrade synapse-admin (0.9.1 -> 0.8.7)
0.9.x is broken: https://github.com/Awesome-Technologies/synapse-admin/issues/468

A fix for this major regression got merged 2 hours after 0.9.1 was tagged,
but one week later there's still no 0.9.2. Shame.
2024-02-14 18:40:57 +02:00
Slavi Pantaleev
972fc6b914 Fix ansible-lint-reported error related to spaces before comments 2024-02-14 13:46:55 +02:00
Slavi Pantaleev
d0cda27c97 Fix Synapse cache auto-tuning variables to use bytes, not KB
Fixup for https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3017

This reverts 1cd82cf068 and also multiplies results by `1024`
so as to pass bytes to Synapse, not KB (as done before).

1cd82cf068 was correctly documenting what we were doing (passing KB values),
but that's incorrect.

Synapse's Config Conventions
(https://matrix-org.github.io/synapse/latest/usage/configuration/config_documentation.html#config-conventions)
are supposed to clear it up, but they don't currently state what happens when you pass a plain number (without a unit suffix).

Thankfully, the source code tells us:
bc1db16086/synapse/config/_base.py (L181-L206)

> If an integer is provided it is treated as bytes and is unchanged.
>
> String byte sizes can have a suffix of ...
> No suffix is understood as a plain byte count.

We were previously passing strings, but that has been improved in 3d73ec887a.

Regardless, non-suffixed values seem to be treated as bytes by Synapse,
so this patch changes the variables to use bytes.

Moreover, we're moving from `matrix_synapse_memtotal_kb` to
`matrix_synapse_cache_size_calculations_memtotal_bytes` as working with
the base unit everywhere is preferrable.

Here, we also introduce 2 new variables to allow for the caps to be
tweaked:

- `matrix_synapse_cache_size_calculations_max_cache_memory_usage_cap_bytes`
- `matrix_synapse_cache_size_calculations_target_cache_memory_usage_cap_bytes`
2024-02-14 13:39:40 +02:00
Slavi Pantaleev
3d73ec887a Ensure integer values are used for cache_autotuning settings in homeserver.yaml
We're casting everything it `int`, but since Jinja templates are
involved, these values end up as strings anyway.

Doing `| int | to_json` is good, but we should only cast numbers to
integer, not empty strings, as that (0) may be interpreted differently
by Synapse.

To turn of auto-tuning, one is possibly supposed to pass empty strings:

> This option defaults to off, enable it by providing values for the sub-options listed below.

It could be that `0` is also considered "no value provided", but I
haven't verified that.

Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3017
2024-02-14 13:36:20 +02:00
Slavi Pantaleev
8b0e25966e Ensure cache_autotuning.max_cache_memory_usage & cache_autotuning.target_cache_memory_usage have int values
Fixes Synapse failing to start with:

> ValueError: invalid literal for int() with base 10: '2027264.0

Related to: https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3017
2024-02-14 12:20:53 +02:00
Catalan Lover
9eab0292d4
Increase Synapse caches and enable cache-autotuning by default (#3017)
* Modify Synapse Cache Factor to use Auto Tune

Synapse has the ability to as it calls in its config auto tune caches.

This ability lets us set very high cache factors and then instead limit our resource use.

Defaults for this commit are 1/10th of what Element apparently runs for EMS stuff and matrix.org on Cache Factor and upstream documentation defaults for auto tune.

* Add vars to Synapse main.yml to control cache related config

This commit adds various cache related vars to main.yml for Synapse.

Some are auto tune and some are just adding explicit ways to control upstream vars.

* Updated Auto Tune figures

Autotuned figures have been bumped in consultation with other community members as to a reasonable level. Please note these defaults are more on the one of each workers side than they are on the monolith Side.

* Fix YML Error

The playbook is not happy with the previous state of this patch so this commit hopefully fixes it

* Add to_json to various Synapse tuning related configs

* Fix incorrect indication in homeserver.yaml.j2

* Minor cleanups

* Synapse Cache Autotuning Documentation

* Upgrade Synapse Cache Autotune to auto configure memory use

* Update Synapse Tuning docs to reflect automatic memory use configuration

* Fix Linting errors in synapses main.yml

* Rename variables for consistency (matrix_synapse_caches_autotuning_* -> matrix_synapse_cache_autotuning_*)

* Remove FIX ME comment about Synapse's `cache_autotuning`

`docs/maintenance-synapse.md` and `roles/custom/matrix-synapse/defaults/main.yml`
already contains documentation about these variables and the default values we set.

* Improve "Tuning caches and cache autotuning" documentation for Synapse

* Announce larger Synapse caches and cache auto-tuning

---------

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2024-02-14 12:02:06 +02:00
Slavi Pantaleev
d9940bd807 Upgrade Element (v1.11.57 -> v1.11.58) 2024-02-13 19:06:14 +02:00
Slavi Pantaleev
a381fa4b21 Upgrade Synapse (v1.100.0 -> v1.101.0) 2024-02-13 14:56:42 +02:00
renovate[bot]
4242f4f7cd
Update joseluisq/static-web-server Docker tag to v2.27.0 2024-02-13 03:02:42 +00:00
renovate[bot]
cf9ca9e602
Update registry.gitlab.com/etke.cc/postmoogle Docker tag to v0.9.17 2024-02-11 19:45:35 +00:00
Slavi Pantaleev
ce9a8d3a2c Rename base domain root path redirect middleware to improve consistency 2024-02-11 09:07:32 +02:00
Slavi Pantaleev
cf9388c546 Make base domain root path redirect regex configurable 2024-02-11 09:04:30 +02:00
renovate[bot]
e2ab339634
Update joseluisq/static-web-server Docker tag to v2.26.0 2024-02-11 00:58:31 +00:00
Slavi Pantaleev
dad0d24312
Merge pull request #3171 from spantaleev/renovate/gnuxie-draupnir-1.x
Update gnuxie/draupnir Docker tag to v1.86.2
2024-02-10 05:45:40 +02:00
renovate[bot]
2d4b96e0c5
Update turt2live/matrix-media-repo Docker tag to v1.3.4 2024-02-10 01:50:50 +00:00
renovate[bot]
89288cce0e
Update gnuxie/draupnir Docker tag to v1.86.2 2024-02-09 21:13:33 +00:00
Slavi Pantaleev
1bfafa7004
Use to_json for matrix_mautrix_whatsapp_extev_polls 2024-02-09 16:42:48 +02:00
Nikolai Raitsev
68d4e04f4f allow to configure whatsapp polls via extev_polls parameter. 2024-02-09 14:17:16 +01:00
Aine
2096d13bbd
fix buscarron old vars 2024-02-08 21:17:12 +02:00
Slavi Pantaleev
41ca1a1d96 Upgrade synapse-admin (0.9.0 -> 0.9.1) 2024-02-08 16:39:29 +02:00
Slavi Pantaleev
e9a2b91da6 Enable federation API labels if the federation port is enabled
`matrix_synapse_federation_port_enabled` is defined like this:

```
matrix_synapse_federation_port_enabled: "{{ matrix_synapse_federation_enabled or matrix_synapse_federation_port_openid_resource_required }}"
```

Previously, people that disabled federation, but needed the `openid`
listener were running without these federation-related labels.

In this patch, we're also dropping the `not matrix_synapse_workers_enabled` condition,
because.. none of the Matrix-related labels would be applied anyway when
workers are enabled, thanks to `matrix_synapse_container_labels_matrix_related_labels_enabled`.

Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/3127
2024-02-08 12:42:59 +02:00
Slavi Pantaleev
f3c69562fa Use devture_postgres_container_network for all rust-synapse-compress-state tasks
Using `matrix_synapse_container_network` for this task may have worked
before, when everything was in the same `matrix` network, but not anymore.

Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/3165
2024-02-08 11:46:59 +02:00
needo37
193d20013f
Update Signal config.yaml.j2
Not sure why but the endraw is not working.
2024-02-08 09:16:29 +00:00
needo37
8a9a700cfc
Bring config.yaml.j2 in line with upstream (#3163)
* Bring config.yaml.j2 in line with upstream

* Update config.yaml.j2
2024-02-08 08:15:17 +02:00
needo37
518615a979
Update signal config.yaml.j2 merging upstream changes (#3164)
* Update signal config.yaml.j2 merging upstream changes

* Add raw/endraw around displayname_template for mautrix-signal

---------

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2024-02-08 08:13:07 +02:00
Slavi Pantaleev
6892d32bfc
Merge pull request #3158 from etkecc/patch-324
update honoroit (v0.9.19 -> v0.9.20)
2024-02-06 08:06:14 +02:00
Slavi Pantaleev
928b21acf4 Add variable-deprecation task for Buscarron
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3157
2024-02-06 07:23:56 +02:00
Aine
a07345a42e
update honoroit (v0.9.19 -> v0.9.20)
**Warning**: [CI pipeline is in progress](https://gitlab.com/etke.cc/honoroit/-/pipelines/1165360868)

changelog:

* safer reaction forwarding
* fix duplicated prefix and suffix on completed requests
* add missing `!ho help` entries
* add new `!ho count` command
* count requests by homeserver and by MXID
* add new `!ho config` command set - configure honoroit directly from the chat
* mautrix-go 0.15.x+ migration
* shared secret auth support
* account data encyption support

removed env vars (automatic migration):

* HONOROIT_TEXT_*
* HONOROIT_ALLOWEDUSERS
* HONOROIT_IGNOREDROOMS
* HONOROIT_IGNORENOTHREAD
* HONOROIT_NOENCRYPTION
2024-02-05 22:12:24 +02:00
Aine
2baea7ce7b
buscarron v1.4.0 2024-02-05 22:07:45 +02:00
Slavi Pantaleev
7f337fc9a6 Upgrade synapse-admin (0.8.7 -> 0.9.0) 2024-02-05 19:07:51 +02:00
Slavi Pantaleev
8b027efb65 Upgrade mautrix-signal (de8c8d97c23 -> 103666990f3) 2024-02-05 18:39:36 +02:00
Slavi Pantaleev
e01aa667e7 Fix some comments in worker-labels for Synapse
Related to 929aee3022 and
https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/3154
2024-02-03 18:53:17 +02:00
Slavi Pantaleev
929aee3022 Fix incorrect prefix for Synapse worker metrics
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/3154
2024-02-03 18:52:26 +02:00
renovate[bot]
2c06aa1d04
Update gnuxie/draupnir Docker tag to v1.86.1 2024-02-01 20:11:51 +00:00
renovate[bot]
502db35831
Update vectorim/element-web Docker tag to v1.11.57 2024-01-31 20:11:11 +00:00
Slavi Pantaleev
5e050dbb4d
Merge pull request #3141 from spantaleev/renovate/ghcr.io-element-hq-synapse-1.x
Update ghcr.io/element-hq/synapse Docker tag to v1.100.0
2024-01-31 15:23:11 +02:00
Slavi Pantaleev
578d00a54a Default to root-path-redirection on the base domain if index.html creation is disabled
This is a break in backward-compatibility for people disabling
`index.html` creation via the playbook but are managing their static
website files in another way (AUX role, etc).
2024-01-31 12:13:20 +02:00
renovate[bot]
b167f48396
Update ghcr.io/element-hq/synapse Docker tag to v1.100.0 2024-01-30 18:32:14 +00:00
Tiago Carrondo
5ca527066d
Fix s3-storage migrate and shell (#3136)
* Fix s3-storage migrate and shell: container needs attachment to postgres network also

* Connect to s3-storage-provider migrate to multiple networks in multiple steps

Multiple `--network` calls lead to:

> docker: Error response from daemon: Container cannot be connected to network endpoints: NETWORK_1 NETWORK_2.

* Connect to s3-storage-provider shell to multiple networks in multiple steps

---------

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2024-01-27 18:03:37 +02:00
renovate[bot]
4a2ad1583e
Update matrixdotorg/dendrite-monolith Docker tag to v0.13.6 2024-01-26 14:05:29 +00:00
Slavi Pantaleev
1468c08065 Wire matrix_server_fqn_matrix_federation to matrix_SERVICE_*_public_federation_api_traefik_hostname for ease of use 2024-01-26 16:04:55 +02:00
Slavi Pantaleev
a1179289a1 Split some homeserver _additional_networks variables into _auto and _custom 2024-01-26 12:55:01 +02:00
Slavi Pantaleev
dafeee92f4 Adjust matrix_nginx_proxy_container_labels_traefik_proxy_matrix_federation_hostname validation check message to mention matrix_static_files_file_matrix_server_property_m_server 2024-01-26 12:17:49 +02:00
Slavi Pantaleev
b48b06d2f8 Add missing bracket 2024-01-26 12:10:34 +02:00
Slavi Pantaleev
5ca4d6ebc5 Add validation check for matrix_nginx_proxy_container_labels_traefik_proxy_matrix_federation_hostname 2024-01-26 12:09:54 +02:00
Slavi Pantaleev
bc7ed6bd38
Merge pull request #3131 from Michael-Hollister/michael/synapse-add-extra-arguments
Added extra systemd service arguments to synapse workers and proxy companion
2024-01-25 07:46:50 +02:00
Slavi Pantaleev
ad9ba1e2bd
Fix variable name typo 2024-01-25 07:39:25 +02:00
Slavi Pantaleev
243d828e50 Fix mautrix-discord config Jinja2 syntax error
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3133

Regression since 4ed522e8fe
2024-01-25 07:35:16 +02:00
needo37
4ed522e8fe
Bring default config inline with upstream 2024-01-24 19:41:58 -06:00
Michael Hollister
bd027159b1 Added extra systemd service arguments to synapse workers and proxy companion 2024-01-24 13:14:34 -06:00
Catalan Lover
c4992ca018
Explicitly Declare Draupnir and Mjolnir Config and enter Bot Mode
This should resolve [#2296](https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2296) by fixing the noted issue.

This also paves the way for in the future working on D4A mode but that would require a rework to how these variables are done.
2024-01-24 15:26:05 +01:00
renovate[bot]
e2a4f119f1
chore(deps): update joseluisq/static-web-server docker tag to v2.25.0 2024-01-23 01:50:56 +00:00
Slavi Pantaleev
ecb5591743 Upgrade sliding-sync (v0.99.14 -> v0.99.15) 2024-01-22 14:36:05 +02:00
Slavi Pantaleev
5c66485c99 Ensure matrix-bot-mjolnir container network is created
Most addons live in the same network by default (matrix-addons) right now,
so this network would have usually been created by some other addon.

Howevre, if this is the only addon someone uses, it may have remained
uncreated causing a problem.
2024-01-20 15:42:12 +02:00
Pierre 'McFly' Marty
f10bc264da
chore(deps): update Telegrambot config 2024-01-20 12:58:41 +01:00
Slavi Pantaleev
9fb2d53b54 Rework Synapse workers documentation
Related to: https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3100
2024-01-20 12:41:21 +02:00
Slavi Pantaleev
84446e52e9 Rename Synapse worker preset name (room-workers -> specialized-workers)
I believe `specialized-workers` is a better name than `room-workers`,
because when enabled, 4 different types of specialized workers are
created:

- Room workers
- Sync workers
- Client readers
- Federation readers

Only one of these is called room-workers.

In the future, more specialized workers may be added, making the
`room-workers` preset name an even poorer choice.

Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3100
2024-01-20 12:40:55 +02:00
Slavi Pantaleev
7cb33da46a Add some clarification comment in matrix-synapse-reverse-proxy-companion/defaults/main.yml 2024-01-20 11:35:20 +02:00
Slavi Pantaleev
16ca50c6ef Add a few more comments in matrix-synapse-reverse-proxy-companion.conf.j2
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3100
2024-01-20 11:24:59 +02:00
Slavi Pantaleev
3c7f896246 Prevent generic workers being combined with any of the other types
Until now, the validation check would only get tripped up
if generic workers are used, combined with at least one EACH
other type of specialized workers.

This means that someone doing this:

```
matrix_synapse_workers_preset: one-of-each
matrix_synapse_workers_client_reader_workers_count: 5
```

.. would not have triggered this safety check.

Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3100
2024-01-20 11:24:32 +02:00
Slavi Pantaleev
826f757fbb
Merge branch 'master' into cvwright/room-workers-v2 2024-01-20 10:35:56 +02:00
renovate[bot]
0823efe22e
Update vectorim/element-web Docker tag to v1.11.55 2024-01-19 15:31:02 +00:00
Slavi Pantaleev
90332f8c3d Fix problematic Hookshot redirect for /hookshot/widgetapi/v1/static
Hookshot wants a trailing slash for this route.

If we let Hookshot redirect, it goes to `/widgetapi/v1/static/`,
instead of `/hookshot/widgetapi/v1/static/`, so we take this matter into our
own hands.
2024-01-19 17:08:14 +02:00
Slavi Pantaleev
f953dd2cd6 Only strip /hookshot prefix for Hookshot widgetapi
Public URLs are like: `/hookshot/widgetapi/v1/static/`
.. which get translated to requests for: `/widgetapi/v1/static/`

Previously, we were stripping the whole `/hookshot/widgetapi` prefix,
which is wrong.
2024-01-19 17:02:16 +02:00
Slavi Pantaleev
db7ed0e830 Fix Traefik load balancer port for matrix-mx-puppet-slack 2024-01-19 12:13:22 +02:00
Slavi Pantaleev
dbebe7c598 Add variable for controlling force_disable in io.element.e2ee in /.well-known/matrix/client 2024-01-19 08:19:28 +02:00
Slavi Pantaleev
aed641e694 Disable addons communicating with the homeserver via Traefik if there is no Traefik at all 2024-01-18 12:12:41 +02:00
Slavi Pantaleev
775000883a Fix Jinja issue related to Synapse workers keepalive templating
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/3114
2024-01-18 11:31:59 +02:00
Charles Wright
7d9eb56164 Add a validation step to fail when the user allocates generic workers together with all of the new worker types 2024-01-17 15:22:27 -06:00
Slavi Pantaleev
51df34e7ae Ensure each container labels file defines at least one service
Most of these files were defining a service, usually toward the end.
These lines have been moved upward.

Some components (mautrix-signal, mautrix-gmessages, etc.) were defining
a service conditionally (only if metrics are exposed, etc). This was
causing issues like these in the Traefik logs:

> level=error msg="service \"matrix-mautrix-twitter\" error: port is missing" providerName=docker container=matrix-mautrix-twitter-..
2024-01-17 17:56:45 +02:00
Slavi Pantaleev
474db10238 Reorder Ansible task module parameters to make ansible-lint happy 2024-01-17 17:27:31 +02:00
Slavi Pantaleev
f9e19e9623 Always uninstall matrix-nginx-proxy, if discovered
This changes the behavior of
`matrix_playbook_migration_matrix_nginx_proxy_uninstallation_enabled`
and is against what we initially described in the changelog entry,
but I've discovered some problems when the `matrix-nginx-proxy` service
and container remain running. They need to go.
2024-01-17 17:22:08 +02:00
Charles Wright
025a7e5c66
Merge branch 'spantaleev:master' into cvwright/room-workers-v2 2024-01-17 08:02:47 -06:00
Slavi Pantaleev
042c74f90c Remove some useless oidc variables and /_synapse/oidc route handling
After some checking, it seems like there's `/_synapse/client/oidc`,
but no such thing as `/_synapse/oidc`.

I'm not sure why we've been reverse-proxying these paths for so long
(even in as far back as the `matrix-nginx-proxy` days), but it's time we
put a stop to it.

The OIDC docs have been simplified. There's no need to ask people to
expose the useless `/_synapse/oidc` endpoint. OIDC requires
`/_synapse/client/oidc` and `/_synapse/client` is exposed by default
already.
2024-01-17 14:45:19 +02:00
Slavi Pantaleev
f3a9a2b35e Make post-start delay for matrix-conduit configurable 2024-01-17 12:26:28 +02:00
Slavi Pantaleev
4407403ab7 Make post-start delay for matrix-dendrite configurable 2024-01-17 12:25:31 +02:00
Slavi Pantaleev
cd06e04497 Make post-start delay for matrix-synapse configurable 2024-01-17 12:25:22 +02:00
Slavi Pantaleev
3ba0642bcf Increase delay after starting of matrix-synapse
10 seconds is a better default for slower (or overloaded) servers
2024-01-17 12:21:19 +02:00
Slavi Pantaleev
94378a7729 Make use of matrix_synapse_container_labels_matrix_related_labels_enabled
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3102
2024-01-17 10:13:15 +02:00
Slavi Pantaleev
ee0a8c4a81 Upgrade Synapse (v1.98.0 -> v1.99.0) 2024-01-17 08:40:48 +02:00
Slavi Pantaleev
aa0a85b094 Properly switch to element-hq-synapse and introduce variables for customizing that 2024-01-17 08:40:23 +02:00
Slavi Pantaleev
c0afcaa2e3 Replace (almost) all matrix-org/synapse references with element-hq/synapse
Issues and Pull Requests were not migrated to the new
organization/repository, so `matrix-org/synapse/pull` and
`matrix-org/synapse/issues` references were kept as-is.

`matrix-org/synapse-s3-storage-provider` references were also kept,
as that module still continues living under the `matrix-org` organization.

This patch mainly aims to change documentation-related things, not actual
usage in full yet. For polish that, another more comprehensive patch is coming later.
2024-01-17 08:02:47 +02:00
Catalan Lover
cb7f2eff3d make synapse support alternative containers via new variable 2024-01-17 07:28:08 +02:00
Slavi Pantaleev
fb64e86ba1
Merge pull request #3104 from spantaleev/renovate/dock.mau.dev-mautrix-discord-0.x
Update dock.mau.dev/mautrix/discord Docker tag to v0.6.5
2024-01-17 07:01:27 +02:00
Slavi Pantaleev
67f5640b3f
Merge pull request #3105 from spantaleev/renovate/dock.mau.dev-mautrix-gmessages-0.x
Update dock.mau.dev/mautrix/gmessages Docker tag to v0.2.4
2024-01-17 07:01:13 +02:00
Slavi Pantaleev
0aff4abcb0
Merge pull request #3109 from Michael-Hollister/michael/mmr-grafana-update-10-1-0
Updated Grafana dashboard for MMR
2024-01-17 06:56:27 +02:00
renovate[bot]
6ec2a89dcb
Update vectorim/element-web Docker tag to v1.11.54 2024-01-17 02:12:46 +00:00
Michael Hollister
c269eb5c49 Updated Grafana dashboard 2024-01-16 17:43:02 -06:00
Charles Wright
55604f73c5 Bugfix: Locations for new workers must go *after* the stream writers 2024-01-16 17:24:13 -06:00
Charles Wright
0dbdaf5b9f Enable HTTP resources for new worker types 2024-01-16 16:51:23 -06:00
Charles Wright
a1cbe7f39b Add overrides for locations that must go to the main Synapse process 2024-01-16 16:32:32 -06:00
renovate[bot]
fba9addb03
Update dock.mau.dev/mautrix/gmessages Docker tag to v0.2.4 2024-01-16 21:36:04 +00:00
renovate[bot]
f6c636b5e2
Update dock.mau.dev/mautrix/discord Docker tag to v0.6.5 2024-01-16 21:36:01 +00:00
Charles Wright
124524ea1f Typo: Send sync endpoints to sync workers, not room workers 2024-01-16 11:22:46 -06:00
Charles Wright
1379200e9d Add new worker types to the dynamic workers list 2024-01-16 11:13:51 -06:00
Charles Wright
5ca9a7269a Add the new worker types to the list of available worker types 2024-01-16 10:58:46 -06:00
Charles Wright
12a8d535e8 Move maps inside the if-workers block; Add Tom's map to extract access token from the URI arg 2024-01-16 10:53:20 -06:00
Charles Wright
0175a472d7 Typo: forgot closing }}'s 2024-01-16 10:02:36 -06:00
Charles Wright
db70230ae1 Add room-workers as a new preset, with new room workers, sync workers, client readers, and federation readers. Based on https://tcpipuk.github.io/synapse/index.html 2024-01-16 09:17:24 -06:00
Slavi Pantaleev
1036ae212f Update deprecation message for matrix_playbook_ssl_retrieval_method 2024-01-16 10:12:43 +02:00
Slavi Pantaleev
8f56166e6b Restore invocation of matrix-mailer migration tasks
Seems like calling these tasks got removed at some point
while merge the `bye-bye-nginx-proxy` branch.
2024-01-16 09:40:01 +02:00
Catalan Lover
95f989ae8b
Update Draupnir to 1.86.0 from 1.85.1 2024-01-16 01:56:41 +01:00
Slavi Pantaleev
a4bea66553 Remove references to other-nginx-non-container/other-on-same-host/other-on-another-host reverse proxy types 2024-01-15 16:14:12 +02:00
Slavi Pantaleev
92c3122b96 Add additional-networks support to matrix-dynamic-dns
Not that it seems necessary right now, but it makes it consistent with
all other roles.
2024-01-15 11:18:25 +02:00
Slavi Pantaleev
ad32953e0b Add additional-networks support to matrix-coturn
Not that it seems necessary right now, but it makes it consistent with
all other roles.
2024-01-15 11:18:09 +02:00
Slavi Pantaleev
fe13d7d010 Fix additional-networks connectivity for a few services 2024-01-15 11:13:47 +02:00
Slavi Pantaleev
e0aebe9b1e Fix incorrect ExecStart (+ docker create) definition in matrix-mautrix-googlechat.service 2024-01-15 11:09:25 +02:00
Slavi Pantaleev
a717509531 Fix DB migrations for mautrix-hangouts failing to reach the database container 2024-01-15 11:07:41 +02:00
Slavi Pantaleev
48a4afb114 Make Traefik labels files look better
This moves the comments from being just in Jinja,
to actually ending up in the generated `labels` file,
which makes inspection of the final result easier.

Also, some new lines were added here and there to make labels
more legible.

The generated file may still include weird new-lines due to
various `if` statements yielding content or not, but that's not so ugly
anymore - now that we have proper start/end sections that are visible in
the final `labels` file.
2024-01-15 10:41:15 +02:00
Slavi Pantaleev
b9148675db Remove extraneous endif in Conduit labels 2024-01-15 09:41:19 +02:00
Slavi Pantaleev
b91ad453be Adjust TLS variables for homeservers to follow devture_traefik_config_entrypoint_web_secure_enabled (via matrix_federation_traefik_entrypoint_tls) 2024-01-15 09:39:36 +02:00
Slavi Pantaleev
25697861d7 Fix some variable typos in matrix-prometheus-nginxlog-exporter 2024-01-14 21:32:02 +02:00
Slavi Pantaleev
142a307af9 Fix more variable name typos in mx-puppet-twitter
Like 4f9b7ba656.
Regression since 8e8c9cc03.
2024-01-14 21:26:22 +02:00
Slavi Pantaleev
fe38c616c3 Fix variable name typo in matrix-bridge-mx-puppet-twitter 2024-01-14 21:21:11 +02:00
Slavi Pantaleev
8f64262e31 Fix yamllint-reported errors 2024-01-14 18:52:18 +02:00
Slavi Pantaleev
f4f3d57520 Remove all traces of matrix-nginx-proxy, add validation & uninstallation tasks 2024-01-14 18:42:14 +02:00
Slavi Pantaleev
18211810ef Fix some default values in matrix-static-files 2024-01-14 18:34:39 +02:00
Slavi Pantaleev
aff57d67c0 Adjust Synapse OIDC variable wiring and docs
Auto-enabling the OIDC APIs is convenient for people
using the new `matrix_synapse_oidc_*` variables.
2024-01-14 12:34:25 +02:00
Slavi Pantaleev
038c63888a Remove definition of old variable (matrix_synapse_admin_nginx_proxy_integration_enabled) 2024-01-14 12:12:15 +02:00
Slavi Pantaleev
aeb1bde4ab Remove matrix-nginx-proxy reference from matrix-bridge-hookshot 2024-01-14 12:06:05 +02:00
Slavi Pantaleev
69ca30d1b1 Add support for the internal Traefik entrypoint to matrix-media-repo 2024-01-14 11:57:51 +02:00
Slavi Pantaleev
6b5f42fa81 Indirectly make use of matrix_homeserver_federation_enabled in matrix-media-repo and add some comments around Traefik labels 2024-01-14 11:54:02 +02:00
Slavi Pantaleev
c238978ac8 Add new global variable for controlling federation regardless of homeserver implementation
The old variables still work. The global lets us avoid
auto-detection logic like we're currently doing for
`matrix_nginx_proxy_proxy_matrix_federation_api_enabled`.

In the future, we'd just be able to reference
`matrix_homeserver_federation_enabled` and know the up-to-date value
regardless of homeserver.
2024-01-14 11:52:40 +02:00
Slavi Pantaleev
df5d8bfc04 Remove matrix-homeserver-proxy role in favor of the new internal Traefik entrypoint
This was meant to serve as an intermediary for services needing to reach
the homeserver. It was used like that for a while in this
`bye-bye-nginx-proxy` branch, but was never actually public.

It has recently been superseded by homeserver-like services injecting
themselves into a new internal Traefik entrypoint
(see `matrix_playbook_internal_matrix_client_api_traefik_entrypoint_*`),
so `matrix-homeserver-proxy` is no longer necessary.

---

This is probably a good moment to share some benchmarks and reasons
for going with the internal Traefik entrypoint as opposed to this nginx
service.

1. (1400 rps) Directly to Synapse (`ab -n 1000 -c 100 http://matrix-synapse:8008/_matrix/client/versions`
2. (~900 rps) Via `matrix-homeserver-proxy` (nginx) proxying to Synapse (`ab -n 1000 -c 100 http://matrix-homeserver-proxy:8008/_matrix/client/versions`)
3. (~1200 rps) Via the new internal entrypoint of Traefik (`matrix-internal-matrix-client-api`) proxying to Synapse (`ab -n 1000 -c 100 http://matrix-traefik:8008/_matrix/client/versions`)

Besides Traefik being quicker for some reason, there are also other
benefits to not having this `matrix-homeserver-proxy` component:

- we can reuse what we have in terms of labels. Services can register a few extra labels on the new Traefik entrypoint
- we don't need services (like `matrix-media-repo`) to inject custom nginx configs into `matrix-homeserver-proxy`. They just need to register labels, like they do already.
- Traefik seems faster than nginx on this benchmark for some reason, which is a nice bonus
- no need to run one extra container (`matrix-homeserver-proxy`) and execute one extra Ansible role
- no need to maintain a setup where some people run the `matrix-homeserver-proxy` component (because they have route-stealing services like `matrix-media-repo` enabled) and others run an optimized setup without this component and everything needs to be rewired to talk to the homeserver directly. Now, everyone can go through Traefik and we can all run an identical setup

Downsides of the new Traefik entrypoint setup are that:

- all addon services that need to talk to the homeserver now depend on Traefik
- people running their own Traefik setup will be inconvenienced - they
  need to manage one additional entrypoint
2024-01-14 10:53:14 +02:00
Slavi Pantaleev
17c9e3f168 Add support for the internal Traefik entrypoint to synapse-reverse-proxy-companion 2024-01-14 10:48:55 +02:00
Slavi Pantaleev
4d66c14fd5 Add support for the internal Traefik entrypoint to Conduit 2024-01-14 10:48:55 +02:00
Slavi Pantaleev
ee0eb59dc6 Add support for the internal Traefik entrypoint to Dendrite 2024-01-14 10:48:54 +02:00
Slavi Pantaleev
b2aeb8cde9 Rename label-related variables for homeservers
We'd be adding integration with an internal Traefik entrypoint
(`matrix_playbook_internal_matrix_client_api_traefik_entrypoint`),
so renaming helps disambiguate things.

There's no need for deperecation tasks, because the old names
have only been part of this `bye-bye-nginx-proxy` branch and not used by
anyone publicly.
2024-01-14 10:48:54 +02:00
Slavi Pantaleev
39bddefd39 Make addons communicate with the homeserver via a new internal Traefik entrypoint
This also adds labels for Synapse. Support for other homeservers and
components will be added later.
2024-01-14 10:48:54 +02:00
Slavi Pantaleev
533dc711ad Merge branch 'master' into bye-bye-nginx-proxy 2024-01-14 09:23:43 +02:00
Slavi Pantaleev
95e5a5c62e Deprecate direct usage of devture_traefik_additional_entrypoints_auto 2024-01-14 09:23:36 +02:00
Slavi Pantaleev
d48a70b052 Connect matrix-synapse-auto-compressor directly to Postgres network, if integrated Postgres is used
This saves us one container network in the ideal case.
2024-01-13 20:01:06 +02:00
Slavi Pantaleev
10777218e8 Fix yamllint-reported errors in matrix-email2matrix 2024-01-13 19:47:04 +02:00
Slavi Pantaleev
62c4e76634 Ensure matrix-nginx-proxy container network is created 2024-01-13 19:44:26 +02:00
Slavi Pantaleev
17d80cb9e8 Move wsproxy to the matrix-addons network and adjust its Postgres connectivity
This is a bit of a compatibility break.
The role was defaulting the Postgres password to `some-password` and we
auto-generate it now.

However, rebuilding both Postgres and this service should unify the
database credentials and the service configs to the new value.
2024-01-13 18:13:06 +02:00
Slavi Pantaleev
b9dfa87f9a Document difference between matrix_homeserver_container_url and matrix_addons_homeserver_client_api_url 2024-01-13 18:07:00 +02:00
Slavi Pantaleev
ed63068e22 Make maubot talk to the homeserver via matrix_addons_homeserver_client_api_url 2024-01-13 18:04:21 +02:00
Slavi Pantaleev
fa591ba278 Add missing matrix_bot_maubot_admins variable to defaults for matrix-bot-maubot 2024-01-13 18:00:19 +02:00
Slavi Pantaleev
c79f354dce Move Dimension to the addons network and connect to Homeserver via matrix_addons_homeserver_client_api_url 2024-01-13 17:58:41 +02:00
Slavi Pantaleev
49066d41a9 Deprecate matrix_docker_network 2024-01-13 17:49:38 +02:00
Slavi Pantaleev
07d0ec4217 Fix variable name typo in validation task 2024-01-13 17:48:39 +02:00
Slavi Pantaleev
0ceea3895e Move all monitoring-related services to their own container network (matrix_monitoring_container_network) 2024-01-13 17:46:52 +02:00
Slavi Pantaleev
594839448f Move matrix-nginx-proxy to its own container network
This service will be removed soon, but for now we need to get rid of
`matrix_docker_network` usage everywhere.
2024-01-13 17:31:37 +02:00
Slavi Pantaleev
cdf28c39d3 Move matrix-user-verification service to its own container network 2024-01-13 17:31:03 +02:00
Slavi Pantaleev
1c7f892b2b Make wsproxy use its own container network (matrix_mautrix_wsproxy_container_network) 2024-01-13 17:28:23 +02:00
Slavi Pantaleev
7c286ab179 Remove matrix_docker_network references from remove-all script 2024-01-13 17:19:39 +02:00
Slavi Pantaleev
c96a0156c0 Make matrix-dynamic-dns use its own container network 2024-01-13 17:18:22 +02:00
Slavi Pantaleev
75f8a879de Remove matrix_docker_network references from matrix-bridge-mx-puppet-twitter 2024-01-13 17:18:22 +02:00
Slavi Pantaleev
d1d6fe01b0 Remove matrix_docker_network references from matrix-bot-maubot 2024-01-13 17:18:22 +02:00
Slavi Pantaleev
23845c1d24 Remove matrix_docker_network references from matrix-bridge-hookshot 2024-01-13 17:18:22 +02:00
Slavi Pantaleev
c86cff2708 Fix NeDB to Postgres importing task for matrix-bridge-appservice-slack
Same as 250b91a40968e, but for Slack
2024-01-13 17:18:22 +02:00
Slavi Pantaleev
6b73073012 Fix NeDB to Postgres importing task for matrix-bridge-appservice-irc
Postgres is not in `matrix_docker_network` anymore, so what we had
before could not possibly work anymore.
2024-01-13 17:18:22 +02:00
Slavi Pantaleev
e782e91fbd Fix some variable typos in matrix-appservice-webhooks.service 2024-01-13 17:18:22 +02:00
Slavi Pantaleev
3f212feb1f Move matrix-email2matrix to its own container network 2024-01-13 17:18:22 +02:00
Slavi Pantaleev
e2157517af Hook matrix-homeserver-proxy to matrix-prometheus-nginxlog-exporter 2024-01-13 16:51:09 +02:00
Slavi Pantaleev
262caf0d59 Add native Traefik support to matrix-prometheus-nginxlog-exporter 2024-01-13 16:50:44 +02:00
Slavi Pantaleev
a78a749f75 Define matrix_synapse_reverse_proxy_companion_access_log_syslog_integration_server_port in the role defaults and make the tag configurable 2024-01-13 16:43:46 +02:00
Slavi Pantaleev
0fe4aaae09 Fix variable name typos in validation tasks for a few bridges
The old variables existed as well, but I inteded to use these new ones.
2024-01-13 16:08:47 +02:00
Slavi Pantaleev
313ecd8f8d Do not require Prometheus in matrix-prometheus-nginxlog-exporter
The user may be running Prometheus elsewhere. It doesn't need to be
getting installed using the current playbook.
2024-01-13 15:56:49 +02:00
Slavi Pantaleev
21d412f90b Fix syntax errors in some --mount arguments
Regression since ce2f541deb
2024-01-13 15:51:19 +02:00
Slavi Pantaleev
a9a1448f62 Add self-check for the matrix-corporal HTTP API (if enabled) 2024-01-13 15:29:47 +02:00
Slavi Pantaleev
5d76b91dc2 Restore matrix-corporal functionality when matrix-nginx-proxy is not involved 2024-01-13 15:29:47 +02:00
Slavi Pantaleev
48e6344c9e Merge branch 'master' into bye-bye-nginx-proxy 2024-01-13 10:25:35 +02:00
Slavi Pantaleev
22dce1d4cc Upgrade matrix-reminder-bot and lock it down via the new allowlist setting 2024-01-13 10:22:06 +02:00
Slavi Pantaleev
d6e91116ab Update documentation related to variables for prometheus-node-exporter/prometheus-postgres-exporter metrics exposure 2024-01-12 18:04:18 +02:00
Slavi Pantaleev
c468a860f8 Switch to exposing prometheus-postgres-exporter via native Traefik labels, not via matrix-prometheus-services-proxy-connect.. and remove matrix-prometheus-services-proxy-connect role
This requires at least `v0.14.0-2` of the `prometheus-postgres-exporter`
Ansible role.
2024-01-12 17:54:54 +02:00
Slavi Pantaleev
beb0f2387d Switch to exposing prometheus-node-exporter via native Traefik labels, not via matrix-prometheus-services-proxy-connect
This requires at least `v1.7.0-2` of the `prometheus-node-exporter`
Ansible role.
2024-01-12 17:41:54 +02:00
Slavi Pantaleev
7fba83924c Remove etherpad-proxy-connect role 2024-01-12 17:22:46 +02:00
Slavi Pantaleev
4018aa38b3 Move matrix-registration service to its own network and add native Traefik support 2024-01-12 17:17:12 +02:00
Slavi Pantaleev
13e47fc3f5 Remove matrix-nginx-proxy integration support from matrix-synapse-admin 2024-01-12 16:33:44 +02:00
Slavi Pantaleev
74099383cd Adapt external_prometheus.yml.example.j2 to our new metrics exposure setup 2024-01-12 13:01:06 +02:00
Slavi Pantaleev
934b73c849 Remove leftover Synapse metrics code for integrating with matrix-nginx-proxy 2024-01-12 12:57:28 +02:00
Slavi Pantaleev
c0308307e2 Make homeserver services sleep after startup, instead of all dependencies sleeping separately
This is an attempt at optimizing service startup.

The effect is most pronounced when many services are restarted one by one.
The systemd service manager role sometimes does this - for example when `just install-service synapse` runs.
In such cases, a 5-second delay for each Synapse worker service
(or other bridge/bot service that waits on the homeserver) quickly adds up to a lot.

When services are all stopped fully and then started, the effect is not so pronounced, because
`matrix-synapse.service` starts first and pulls all worker services (defined as `Wants=` for it).
Later on, when the systemd service manager role "starts" these worker services, they're started already.
Even if they had a 5-second wait each, it would have happened in parallel.
2024-01-12 12:45:18 +02:00
Slavi Pantaleev
41a52945d6 Add support for exposing metrics for Synapse workers 2024-01-12 12:16:06 +02:00
Slavi Pantaleev
22f5f0ba75 Add support for exposing metrics for Synapse (without workers) 2024-01-12 12:15:57 +02:00
Slavi Pantaleev
3556dd77ef Use variables instead of hardcoding service port numbers in labels for matrix-synapse 2024-01-12 09:31:31 +02:00
Slavi Pantaleev
a92efa46ad Merge branch 'master' into bye-bye-nginx-proxy 2024-01-11 18:57:44 +02:00
Slavi Pantaleev
b38b00bbd7 Upgrade mautrix-signal (959eb7eaf9 -> de8c8d97c2)
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/3090

Related to https://github.com/mautrix/signal/issues/422
2024-01-11 18:57:16 +02:00
Slavi Pantaleev
1831f09f2b Shorten Traefik router names (*-endpoint -> *) 2024-01-11 12:35:41 +02:00
Slavi Pantaleev
f9faaae26c Shorten Traefik router name (*-well-known-endpoint -> *-well-known) 2024-01-11 12:35:39 +02:00
Slavi Pantaleev
18254cd0b2 Remvoe all Traefik labels from matrix-nginx-proxy and update docs for delegation via SRV 2024-01-11 12:31:56 +02:00
Slavi Pantaleev
ce2f541deb Switch all remaining container volume mounting from -v to --mount
`--mount` is safer, as `-v` has the side-effect of creating the "source"
destination as a directory if it doesn't exist yet.
We don't need such magic.
2024-01-11 12:16:27 +02:00
Slavi Pantaleev
881c20bf25 Switch matrix_dendrite_container_additional_volumes from using -v to --mount
Related to e5130372b9.

Depending on the `options` that people provide, this may break
compatibility.
2024-01-11 12:15:32 +02:00
Slavi Pantaleev
e5130372b9 Switch matrix_synapse_container_additional_volumes from using -v to --mount
Depending on the `options` that people provide, this may break
compatibility.
2024-01-11 12:12:44 +02:00
Slavi Pantaleev
c4d6144bb9 Add metrics-exposure support for Dendrite 2024-01-11 12:02:15 +02:00
Slavi Pantaleev
f257cd9fbe Fix a few incorrect service names in labels for matrix-synapse/matrix-synapse-reverse-proxy-companion 2024-01-11 11:58:20 +02:00
Slavi Pantaleev
0701a01825 Fix service name in federation labels for Dendrite 2024-01-11 11:41:27 +02:00
Slavi Pantaleev
4873af18a8 Fix service name in federation labels for Conduit 2024-01-11 11:41:15 +02:00
Slavi Pantaleev
bea41e28b0 Remove Dendrite support from matrix-nginx-proxy 2024-01-11 11:33:33 +02:00
Slavi Pantaleev
d8eb768e03 Add native Traefik support to matrix-dendrite 2024-01-11 11:30:42 +02:00
Slavi Pantaleev
f78adfde47 Remove Synapse support from matrix-nginx-proxy 2024-01-11 09:24:01 +02:00
Slavi Pantaleev
030e8065e4 Remove Conduit support from matrix-nginx-proxy 2024-01-11 09:21:00 +02:00
Slavi Pantaleev
9ae8ccac36 Add matrix_conduit_hostname 2024-01-11 09:17:13 +02:00
Slavi Pantaleev
4639eebf12 Add native Traefik support to matrix-conduit 2024-01-11 08:56:51 +02:00
Slavi Pantaleev
3e0e92bdf7 Do not use matrix_synapse_reverse_proxy_companion_ variables in the matrix-synapse role 2024-01-11 08:49:57 +02:00
Slavi Pantaleev
53b5d8286f Merge branch 'master' into bye-bye-nginx-proxy 2024-01-11 08:35:53 +02:00
Slavi Pantaleev
95e505106b Restore matrix_mautrix_signal_appservice_bot_username usage
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/3088

Looks like the migration to the Go-based Signal bridge hardcoded the
`signalbot` username instead of using the variable we had.
Related to: https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3041
2024-01-11 07:55:41 +02:00
Slavi Pantaleev
6766216fcb Wire Conduit to advertise usage of the Coturn TURN server
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/3089
2024-01-11 07:52:48 +02:00
Slavi Pantaleev
f54b68956d Adapt matrix-media-repo to new container network setup, etc. 2024-01-09 18:52:38 +02:00
Slavi Pantaleev
fc79afadd1 Merge branch 'master' into bye-bye-nginx-proxy 2024-01-09 16:07:54 +02:00
Slavi Pantaleev
3e19c8b102 Define matrix_media_repo_homeservers_auto in group vars
This is mostly so as to avoid referring to variables from other roles,
like `matrix_nginx_proxy_proxy_matrix_client_api_addr_with_container`.
2024-01-09 16:07:23 +02:00
Slavi Pantaleev
c7a637bfde Merge branch 'master' into bye-bye-nginx-proxy 2024-01-09 16:03:01 +02:00
Slavi Pantaleev
883afa11dc Do not hardcode devture_postgres_identifier in matrix-media-repo role
This should come (and already does) from group_vars/matrix_servers
2024-01-09 16:02:31 +02:00
Slavi Pantaleev
f83c221fda Merge branch 'master' into bye-bye-nginx-proxy 2024-01-09 15:38:23 +02:00
Slavi Pantaleev
7ad5321f54 Make sure ma1sd uninstallation tasks also run on setup-all 2024-01-09 15:37:51 +02:00
Slavi Pantaleev
aea66442a1 Move matrix-ma1sd to its own container network and add native Traefik support 2024-01-09 15:27:13 +02:00
Slavi Pantaleev
81f1c4683b Use Path() intead of PathPrefix() for ldap-registration-proxy endpoint 2024-01-09 13:16:20 +02:00
Slavi Pantaleev
7441fff210 Fix regex in atrix_ldap_registration_proxy_container_labels_registration_endpoint_path_prefix 2024-01-09 13:15:28 +02:00
Slavi Pantaleev
b2b373bab3 Merge branch 'master' into bye-bye-nginx-proxy 2024-01-09 12:06:09 +02:00
Slavi Pantaleev
0c048c7592 Fix ma1sd self-building and make it not require gradle 2024-01-09 12:06:01 +02:00
Slavi Pantaleev
300e67c03d Split matrix_ldap_registration_proxy_systemd_wanted_services_list and update docs a bit 2024-01-09 11:51:15 +02:00
Slavi Pantaleev
61216d51cc Move matrix-ldap-registration-proxy to its own container network and add native Traefik support
This also makes it handle the `/_matrix/client/v3/register` endpoint,
not just `/_matrix/client/r0/register`
2024-01-09 11:28:20 +02:00
Slavi Pantaleev
9171b8df91 Merge branch 'master' into bye-bye-nginx-proxy 2024-01-09 10:49:00 +02:00
Slavi Pantaleev
998e9ce655 Revert "Auto-generate matrix_bot_matrix_registration_bot_bot_password via group vars"
This reverts commit bf95ad2235.

This was a bad idea.
It's better to have people manually define the password.

Otherwise, `matrix_homeserver_generic_secret_key` changing some day in
the future would break the bot and one would have to figure out how to
reset its password manually.

Using an explicit password is more stable.
2024-01-09 10:22:20 +02:00
Slavi Pantaleev
bf95ad2235 Auto-generate matrix_bot_matrix_registration_bot_bot_password via group vars 2024-01-09 10:19:57 +02:00
Pierre 'McFly' Marty
5caf1fef1d
chore(deps): update signal bridge version + config (#3084)
* chore(deps): update signal bridge version + config

* style(deps): rename default note to self config variable

* Add to_json for additional safety

---------

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2024-01-09 10:07:46 +02:00
Slavi Pantaleev
4c7ee34194 Rename variable for consistency (matrix_hookshot_ident -> matrix_hookshot_identifier) 2024-01-09 09:56:21 +02:00
Slavi Pantaleev
fce84a2b3c Rename variable for consistency (matrix_homeserver_proxy_ident -> matrix_homeserver_proxy_identifier) 2024-01-09 09:54:42 +02:00
Slavi Pantaleev
2f27a57d00 Rename variable for consistency (matrix_static_files_ident -> matrix_static_files_identifier) 2024-01-09 09:54:00 +02:00
Slavi Pantaleev
ea992496a3 Add matrix-cactus-comments-client role
This is split out from matrix-cactus-comments (see 241779b583),
but also heavily inspired by `matrix-static-files`.
2024-01-09 09:53:01 +02:00
Slavi Pantaleev
241779b583 Initial work on moving matrix-cactus-comments to its own container network and splitting cactus-client out of it 2024-01-08 19:57:18 +02:00
Slavi Pantaleev
1750f11abc Merge branch 'master' into bye-bye-nginx-proxy 2024-01-08 19:31:20 +02:00
Slavi Pantaleev
4011eaf258 Rename variables having an incorrect prefix (matrix_bot_cactus_ -> matrix_cactus_)
Looks like these variables were originally named this way in
https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2089
2024-01-08 19:30:24 +02:00
Slavi Pantaleev
30d82cc651 Merge branch 'master' into bye-bye-nginx-proxy 2024-01-08 18:18:34 +02:00
Slavi Pantaleev
b6916d3adc Add public_address to mautrix-discord
Related to https://github.com/mautrix/discord/issues/95
2024-01-08 18:16:02 +02:00
Slavi Pantaleev
594e6d9679 Move matrix-sms-bridge to its own container network and add support for non-Synapse homeservers 2024-01-08 18:10:38 +02:00
Slavi Pantaleev
8e8c9cc03b Move matrix-bridge-mx-puppet-twitter to its own container network and add native Traefik support 2024-01-08 17:56:37 +02:00
Slavi Pantaleev
1e19fee772 Move matrix-bridge-mx-puppet-steam to its own container network 2024-01-08 17:56:12 +02:00
Slavi Pantaleev
3c099541a7 Move matrix-bridge-mx-puppet-slack to its own container network and add native Traefik support 2024-01-08 17:56:12 +02:00
Slavi Pantaleev
150a40ec26 Move matrix-bridge-mx-puppet-instagram to its own container network 2024-01-08 17:16:50 +02:00
Slavi Pantaleev
f94f2b9823 Move matrix-bridge-mx-puppet-groupme to its own container network 2024-01-08 17:16:50 +02:00
Slavi Pantaleev
82de4581e3 Add support for disabling presence on matrix-bridge-mx-puppet-discord 2024-01-08 17:06:38 +02:00
Slavi Pantaleev
6d0ecb0269 Move matrix-bridge-mx-puppet-discord to its own container network 2024-01-08 17:03:48 +02:00
Slavi Pantaleev
5764c2cc67 Merge branch 'master' into bye-bye-nginx-proxy 2024-01-08 13:29:10 +02:00
Slavi Pantaleev
e48adcb91d Upgrade sliding-sync (v0.99.13 -> v0.99.14) 2024-01-08 13:29:01 +02:00
Slavi Pantaleev
effca48288 Remove matrix-nginx-proxy integration for matrix-bridge-mautrix-wsproxy
This probably never even worked anyway and was a leftover copy/paste
from some other role.

The docs (`docs/configuring-playbook-bridge-mautrix-wsproxy.md`) only
talk about `matrix_mautrix_wsproxy_hostname`, which was only used via
Traefik labels. The endpoint exposed via `matrix-nginx-proxy` (`/_matrix/wsproxy`)
hasn't been mentioned anywhere.
2024-01-08 09:19:24 +02:00
Slavi Pantaleev
8b28f8e122 Move matrix-bridge-mautrix-twitter to its own container network and add native Traefik support 2024-01-07 17:54:46 +02:00
Slavi Pantaleev
f9b4ae8241 Move matrix-bridge-mautrix-telegram to its own container network and add native Traefik support 2024-01-07 17:35:10 +02:00
Slavi Pantaleev
0f89156e94 Move matrix-bridge-mautrix-slack to its own container network 2024-01-07 17:22:43 +02:00
Slavi Pantaleev
d6911503a0 Move matrix-bridge-mautrix-signal to its own container network and add native Traefik support 2024-01-07 17:16:38 +02:00
Slavi Pantaleev
7ec6fd3dfe Make bridges/bots use matrix_addons_homeserver_client_api_url (instead of matrix_homeserver_container_url) 2024-01-07 17:04:23 +02:00
Slavi Pantaleev
142de83b41 Move matrix-bridge-mautrix-hangouts to its own container network 2024-01-07 15:37:39 +02:00
Slavi Pantaleev
6723fcd6d5 Add labels to matrix-mautrix-googlechat.service and use --mount instead of -v 2024-01-07 15:31:39 +02:00
Slavi Pantaleev
f8f3318bb2 Move matrix-bridge-mautrix-googlechat to its own container network 2024-01-07 15:24:11 +02:00
Slavi Pantaleev
c6c88c2503 Move matrix-bridge-mautrix-gmessages to its own container network 2024-01-07 15:24:11 +02:00
Slavi Pantaleev
5e7b882ce9 Adjust homeserver URL for Buscarron 2024-01-07 15:24:11 +02:00
Slavi Pantaleev
39e45b0298 Move matrix-bridge-heisenbridge to its own container network 2024-01-07 15:24:10 +02:00
Slavi Pantaleev
493a9abafa Move matrix-bridge-go-skype-bridge to its own container network 2024-01-07 14:48:21 +02:00
Slavi Pantaleev
205663a4be Move matrix-bridge-beeper-linkedin to its own container network 2024-01-07 13:56:40 +02:00
Slavi Pantaleev
b651495c07 Fixups for maubot and appservice-slack container labels 2024-01-07 12:48:48 +02:00
Slavi Pantaleev
a5618a893b Move matrix-bridge-appservice-webhooks to its own container network 2024-01-07 12:48:30 +02:00
Slavi Pantaleev
db53a17a38 Move matrix-bridge-appservice-slack to its own container network 2024-01-07 12:22:51 +02:00
Slavi Pantaleev
3fe3d5a78c Move matrix-bridge-appservice-kakaotalk to its own container network 2024-01-07 12:04:27 +02:00
Slavi Pantaleev
dcdc43b6aa Move matrix-bridge-appservice-irc to its own container network 2024-01-07 12:00:46 +02:00
Slavi Pantaleev
bf11a3c2ca Tie up some loose ends for matrix-appservice-discord 2024-01-07 11:56:05 +02:00
Slavi Pantaleev
7d625011a1 Move matrix-bridge-appservice-discord to its own container network 2024-01-07 10:23:01 +02:00
Slavi Pantaleev
c5006c3ac2 Move matrix-bot-maubot to its own container network and add native Traefik support 2024-01-07 10:16:42 +02:00
Slavi Pantaleev
6deb99f31b Add missing network-creation tasks for some bot roles 2024-01-07 09:46:09 +02:00
Slavi Pantaleev
d5ea80cf68 Remove unused variable (matrix_bot_matrix_registration_environment_variables_extension) 2024-01-07 09:34:11 +02:00
Slavi Pantaleev
87c8c29c47 Move matrix-bot-matrix-registration-bot to its own container network 2024-01-07 09:33:37 +02:00
Slavi Pantaleev
628496d022 Move matrix-bot-honoroit to its own container network 2024-01-07 09:30:08 +02:00
Slavi Pantaleev
835f623bb8 Move matrix-bot-go-neb to its own container network 2024-01-07 09:23:24 +02:00
Slavi Pantaleev
867af6385a Move matrix-bot-mjolnir to its own container network 2024-01-07 09:20:24 +02:00
Slavi Pantaleev
88ad58fccb Move matrix-bot-draupnir to its own container network 2024-01-07 09:04:38 +02:00
Slavi Pantaleev
d8b867b6fb Move matrix-bot-buscarron to its own container network 2024-01-07 09:04:35 +02:00
Slavi Pantaleev
b122c7092a Merge branch 'master' into bye-bye-nginx-proxy 2024-01-05 18:12:44 +02:00
Slavi Pantaleev
d116d863e6 Move exim-relay service to its own network and connect Synapse & ma1sd to it automatically 2024-01-05 18:10:24 +02:00
Slavi Pantaleev
377fce5855 Merge branch 'master' into bye-bye-nginx-proxy 2024-01-05 17:55:49 +02:00
Slavi Pantaleev
ba0a4e864a Replace matrix-mailer with an external role 2024-01-05 17:54:50 +02:00
Slavi Pantaleev
1f6bb281e9 Fix typo in old devture-traefik migration task 2024-01-05 17:09:19 +02:00
Slavi Pantaleev
9488e3857a Put all homeservers in the matrix-homeserver container network 2024-01-05 16:49:48 +02:00
Slavi Pantaleev
7766db2a5f
Merge pull request #3083 from Braindot-fr/3082-mautrix-signal-config
[#3082] Analog Signal spaces configuration with rest of playbook
2024-01-05 16:01:08 +02:00
Slavi Pantaleev
e7b7b48db5 Merge branch 'master' into bye-bye-nginx-proxy 2024-01-05 11:07:50 +02:00
Pierre 'McFly' Marty
a266da1b78
fix: space sync config 2024-01-05 10:49:09 +02:00
Slavi Pantaleev
724021cfde
Merge pull request #3076 from cvwright/cvwright/worker-keepalive
Add keepalive on worker upstreams and use persistent connections
2024-01-05 10:48:32 +02:00
Slavi Pantaleev
9b6c393414 Merge branch 'master' into bye-bye-nginx-proxy 2024-01-05 10:20:33 +02:00
Slavi Pantaleev
fc151fed77 Add raw/endraw around problematic texts in matrix-bridge-mautrix-signal/templates/config.yaml
Fixes: https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/3082

Related to: https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3079
2024-01-05 10:20:00 +02:00
Slavi Pantaleev
b37a02720f Move all Matrix client apps into the matrix-addons container network
Putting each client into its own network was good for isolation,
but it's quite wasteful in terms of the container network pool.
2024-01-05 07:17:11 +02:00
Slavi Pantaleev
2ec6448cdb Merge branch 'master' into bye-bye-nginx-proxy 2024-01-05 07:05:34 +02:00
Slavi Pantaleev
06f561f0dd Build latest/main branch of rust-synapse-compress-state for non-amd64 users
The latest tagged release (v0.1.3) does not pin any versions in its
Dockerfile and as such fails to build right now.

The `main` branch of rust-synapse-compress-state has already addressed
this and is buildable, but there's no tagged release yet.

Reported here: https://github.com/matrix-org/rust-synapse-compress-state/issues/134
2024-01-05 07:05:28 +02:00
Slavi Pantaleev
d262ca0fe6 Only enable matrix-synapse-reverse-proxy-companion when Synapse workers are enabled
This allows us to eliminate the companion and decrease overhead for
simple servers which do not use workers.
2024-01-05 07:00:50 +02:00
Slavi Pantaleev
14278c51c2
Merge pull request #3079 from IUCCA/master
update mautrix-signal
2024-01-05 06:36:45 +02:00
Slavi Pantaleev
499e4887f7 Connect sliding-sync directly to the homeserver
This saves up 1 container network and avoids going through extra proxies
unnecessarily.
2024-01-05 06:28:42 +02:00
Slavi Pantaleev
3fb016cd6b Put bots and bridges in the same network and remove a few variables
Downsides: decreasing security slightly due to less networking isolation

Benefits:

- decreased complexity
- having a generically-named `matrix-addons` network we may use for other things now (client apps, etc.)
- not exhausting the container networks pool with 2 (or more) networks and using just 1
2024-01-05 06:13:12 +02:00
Slavi Pantaleev
170f321a01 Minor sliding-sync improvements 2024-01-05 06:04:44 +02:00
IUCCA
2b2c1880cb
Updated mautrix-signal docker image 2024-01-05 00:09:40 +01:00
renovate[bot]
04de14a462
chore(deps): update vectorim/element-web docker tag to v1.11.53 2024-01-04 17:00:48 +00:00
Slavi Pantaleev
015acb6d08 Add native Traefik support to matrix-synapse 2024-01-04 19:00:23 +02:00
Slavi Pantaleev
fe7c06d6f5 Fix duplicate labels in matrix-synapse-reverse-proxy-companion 2024-01-04 18:07:24 +02:00
IUCCA
0222e75c19 added new options to mautrix-signal config template 2024-01-04 16:06:58 +01:00
IUCCA
9c3d8687bf added new options to mautrix-signal config template 2024-01-04 15:09:42 +01:00
IUCCA
8f88b5d25e updated mautrix-signal docker image 2024-01-04 15:04:06 +01:00
Slavi Pantaleev
ab15991814 Fix some ansible-lint-reported errors 2024-01-04 13:00:46 +02:00
Slavi Pantaleev
abde681b56 Clean up some matrix_nginx_proxy_proxy_matrix_metrics_* references 2024-01-04 12:49:00 +02:00
Slavi Pantaleev
54fb153acf Expose /_synapse/* APIs via matrix-synapse-reverse-proxy-companion
This also updates validation tasks and documentation, pointing to
variables in the matrix-synapse role which don't currently exist yet
(e.g. `matrix_synapse_container_labels_client_synapse_admin_api_enabled`).

These variables will be added soon, as Traefik labels are added to the
`matrix-synapse` role. At that point, the `matrix-synapse-reverse-proxy-companion` role
will be updated to also use them.
2024-01-04 11:37:17 +02:00
Slavi Pantaleev
0ea3fa0e85 Add matrix_synapse_reverse_proxy_companion_container_labels_traefik_hostname to simplify wiring 2024-01-04 10:53:43 +02:00
Slavi Pantaleev
84cedff355 Adjust validation message 2024-01-04 10:38:07 +02:00
Slavi Pantaleev
4752e7f9a0 Get rid of matrix_nginx_proxy_proxy_matrix_client_redirect_root_uri_to_domain 2024-01-04 10:27:32 +02:00
Slavi Pantaleev
e678adfeda Add root path (/) handling to matrix-synapse-reverse-proxy-companion (redirect or /_matrix/static/ serving) 2024-01-04 10:24:33 +02:00
Charles Wright
c053336ad2 Add keepalive on worker upstreams and use HTTP 1.1 for persistent connections 2024-01-03 14:43:01 -06:00
Slavi Pantaleev
354c887602 Fix incorrect variable name 2024-01-03 17:11:39 +02:00
Slavi Pantaleev
bbd9493b8f Handle /_matrix Client-Server and Federation APIs directly at matrix-synapse-reverse-proxy-companion 2024-01-03 17:05:59 +02:00
Slavi Pantaleev
97f40a95fb Make compress middleware for /.well-known/matrix/* configurable 2024-01-03 16:18:39 +02:00
Slavi Pantaleev
e81a395a98 Drop some matrix_nginx_proxy_proxy_riot_compat_* variables
matrix-nginx-proxy is going away and this is one of the features it
offered.

This feature will have no equivalent in our new Traefik-only
setup, although it's possible to implement it manually by using
`matrix_client_element_container_labels_additional_labels`
2024-01-03 14:43:45 +02:00
Slavi Pantaleev
cc75be9c65 Add support for serving the base domain via matrix-static-files 2024-01-03 14:39:17 +02:00
Slavi Pantaleev
da48a605bb More progress on matrix-static-files role and cleaning up of matrix-base and matrix-nginx-proxy 2024-01-03 13:46:25 +02:00
Slavi Pantaleev
015b8f69de Rework comment for matrix_static_files_file_matrix_support_enabled 2024-01-03 13:10:45 +02:00
Slavi Pantaleev
46cbc2ead0 Merge branch 'master' into bye-bye-nginx-proxy 2024-01-03 13:09:55 +02:00
Slavi Pantaleev
61bf368080 Mark /.well-known/matrix/support as accepted spec 2024-01-03 13:09:45 +02:00
Slavi Pantaleev
065b70203d [WIP] Initial work on matrix-static-files role 2024-01-03 13:05:59 +02:00
Slavi Pantaleev
128a7b82d5 Switch mautrix-instagram from matrix-nginx-proxy to matrix-homeserver-proxy
This is completely untested.
2024-01-03 09:25:05 +02:00
Slavi Pantaleev
16653bdbb4
Merge pull request #3073 from spantaleev/renovate/halfshot-matrix-hookshot-5.x
chore(deps): update halfshot/matrix-hookshot docker tag to v5.1.2
2024-01-02 21:51:44 +02:00
Pierre 'McFly' Marty
c76aaf2e0b
fix(signal): tag follows declared version 2024-01-02 21:44:36 +02:00
renovate[bot]
b2b6edc8a1
chore(deps): update halfshot/matrix-hookshot docker tag to v5.1.2 2024-01-02 19:23:48 +00:00
Slavi Pantaleev
feaf1ee7e7 Switch mautrix-whatsapp from matrix-nginx-proxy to matrix-homeserver-proxy 2024-01-02 17:41:36 +02:00
Slavi Pantaleev
8eb07e8d85 Minor mautrix-facebook fixes 2024-01-02 17:36:39 +02:00
Slavi Pantaleev
20c7cabfe4 Switch mautrix-discord from matrix-nginx-proxy to matrix-homeserver-proxy 2024-01-02 17:22:23 +02:00
Slavi Pantaleev
77b0ef4799 Add Traefik support to Hookshot 2024-01-02 17:10:26 +02:00
Slavi Pantaleev
4a6287c528 Initial work on matrix-homeserver-proxy role and eliminating matrix-nginx-proxy
This is still very far from usable.

Various bridges and bots are still talking to
`matrix-nginx-proxy` instead of the new `matrix-homeserver-proxy` role.
These services need to be reworked. While reworking them,
various cleanups are being done as well as adding Traefik-labels to
those that need them.
2024-01-02 16:07:40 +02:00
Slavi Pantaleev
aa60fdeb00 Do not put architecture stuff in matrix_mautrix_signal_version
.. because matrix_mautrix_signal_version is used in other places
which do not expect it. For example: `matrix_mautrix_signal_container_image_self_build_branch`

Related to: https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3041
2024-01-02 16:01:16 +02:00
Pierre 'McFly' Marty
4db1e5930d
chore: update signal bridge 2023-12-31 12:36:33 +01:00
Pierre 'McFly' Marty
6d4d1bf679
Merge branch 'spantaleev:master' into 3031-feat-add-signalgo-bridge 2023-12-30 16:51:03 +01:00
Pierre 'McFly' Marty
e5d31b5883
chore: update signal bridge version 2023-12-30 16:46:55 +01:00
Pierre 'McFly' Marty
cd9411158f
fix: signal docker tag follow system arch 2023-12-30 16:39:49 +01:00
renovate[bot]
bfd7fa4b95
chore(deps): update halfshot/matrix-hookshot docker tag to v5.1.1 2023-12-29 18:04:46 +00:00
renovate[bot]
9c7d0fb2ad
chore(deps): update halfshot/matrix-hookshot docker tag to v5.1.0 2023-12-29 15:06:26 +00:00
Pierre 'McFly' Marty
c873516cb6
Merge branch 'spantaleev:master' into 3031-feat-add-signalgo-bridge 2023-12-29 14:51:33 +01:00
renovate[bot]
b2aa81a5ea
chore(deps): update halfshot/matrix-hookshot docker tag to v5 2023-12-28 01:27:08 +00:00
Pierre 'McFly' Marty
91e39a58f7
feat: relay mode in signal 2023-12-27 12:20:34 +01:00
Pierre 'McFly' Marty
db46933b3a
Merge branch 'spantaleev:master' into 3031-feat-add-signalgo-bridge 2023-12-27 10:45:52 +01:00
renovate[bot]
0ded422cf9
chore(deps): update dock.mau.dev/mautrix/telegram docker tag to v0.15.1 2023-12-26 18:33:59 +00:00
Pierre 'McFly' Marty
811c6b1af5
Merge branch 'spantaleev:master' into 3031-feat-add-signalgo-bridge 2023-12-26 09:39:46 +01:00
Slavi Pantaleev
11ee949e9e Add native Traefik support to matrix-corporal (HTTP API) 2023-12-23 10:36:20 +02:00
Slavi Pantaleev
e47ad60cf5 Add support for additional networks to matrix-corporal 2023-12-23 09:33:56 +02:00
Pierre 'McFly' Marty
055406b255
Merge branch 'spantaleev:master' into 3031-feat-add-signalgo-bridge 2023-12-22 16:48:06 +01:00
Slavi Pantaleev
3da4c66b85
Merge pull request #3045 from Michael-Hollister/michael/mmr-federation-fix
MMR reverse proxy updates
2023-12-22 08:48:55 +02:00
Slavi Pantaleev
ce013a325c Remove duplicate matrix_media_repo_identifier definition from group_vars/matrix_servers
`matrix_media_repo_identifier` is already defined in the role defaults,
which is a better role to have it anyway.
2023-12-22 08:43:30 +02:00
Pierre 'McFly' Marty
1894f84b8a
chore: update bridge docker tag 2023-12-21 18:27:32 +01:00
Pierre 'McFly' Marty
a8e14ac79e
fix: ansible yaml syntax 2023-12-21 14:03:37 +01:00
Michael Hollister
0908c6b662 Added Traefik support to MMR 2023-12-20 13:38:46 -06:00
Pierre 'McFly' Marty
7163b9df3c
Merge branch 'spantaleev:master' into 3031-feat-add-signalgo-bridge 2023-12-20 17:52:51 +01:00
renovate[bot]
8ca3b7c5c6
chore(deps): update vectorim/element-web docker tag to v1.11.52 2023-12-19 16:56:18 +00:00
Pierre 'McFly' Marty
81e015db9d
feat: auto removal of signal-daemon service 2023-12-19 12:37:13 +01:00
Pierre 'McFly' Marty
b426a68316
chore: update mautrix-signal for legacy compat. 2023-12-19 12:33:05 +01:00
Pierre 'McFly' Marty
c93b642f90
doc: check typo 2023-12-18 16:51:35 +01:00