Commit Graph

337 Commits

Author SHA1 Message Date
Slavi Pantaleev
13e660bffd
Add missing section separator 2021-08-23 15:02:28 +03:00
Alexandar Mechev
b13cf1871f add code for LinkedIn Bridge 2021-08-21 17:32:45 +02:00
Slavi Pantaleev
9860fb4675 Upgrade Sygnal (v0.9.0 -> v0.10.1) 2021-08-20 17:48:24 +03:00
Slavi Pantaleev
46340fdf63
Simplify if condition 2021-08-15 08:45:21 +03:00
Michael Collins
4d57a41b3f remove matrix_awx_enabled from these 2021-08-11 17:18:57 +08:00
Michael Collins
2e30802b87 use group variables instead 2021-08-11 15:21:09 +08:00
Slavi Pantaleev
421f85defa Add self-building support to matrix-email2matrix 2021-08-04 15:03:45 +03:00
Slavi Pantaleev
dfa7b6e4fd
Merge pull request #1171 from BackInBash/patch-1
Updating to ma1sd v2.5.0
2021-07-28 11:09:39 +03:00
Slavi Pantaleev
676101e999 Minor fixups for ma1sd 2.5.0
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/1171
2021-07-28 11:08:50 +03:00
Nate
f5d6b01b9f Updated group_vars to update self_build based on matrix_architecture 2021-07-25 14:24:38 -07:00
Slavi Pantaleev
31244e7fcc
Merge pull request #1180 from Toorero/master
Fixed self-build functionality for mautrix-signal
2021-07-21 15:17:57 +03:00
Toorero
ead4b00c09 Reverted back to manual self-build detection 2021-07-21 14:05:21 +02:00
Toorero
3a28100131 Renamed matrix_lottieconverter to matrix_telegram_lottieconverter 2021-07-17 14:05:13 +02:00
Toorero
7f15787d54 Fixed mautrix-telegram selfbuild not working on non amd64 platforms 2021-07-16 18:58:55 +02:00
Toorero
f933ba14ae Fixed self-build functionality for mautrix-signal and added self-build functionality for signald 2021-07-16 13:27:36 +02:00
Toorero
aa6398a948 Autoset self-build for mautrix-signal bridge 2021-07-14 22:46:17 +02:00
Slavi Pantaleev
b4d7ab0b53
Merge pull request #1153 from Cadair/worker_prom
Add worker metrics to prometheus exporter
2021-07-05 10:30:02 +03:00
Stuart Mumford
2aa457efcc Use a prom variable and not a synapse role variable 2021-07-02 15:41:36 +00:00
Slavi Pantaleev
3777334778 Do not try to use TURNS when TLS disabled for Coturn
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/1145
2021-07-02 17:05:08 +03:00
Slavi Pantaleev
8b146f083e Disable turns when Let's Encrypt is used
Supersedes https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/1145
2021-07-02 17:00:40 +03:00
Aaron Raimist
19ed8d1d17
Upgrade mjolnir (0.1.17 -> 0.1.18) and implement self building 2021-07-02 00:10:59 -05:00
Raymond Coetzee
4e2780ff88 Add support for a prometheus postgres exporter
This commit introduces a new role that downloads and installs the
prometheus community postgres exporter  https://github.com/prometheus-community/postgres_exporter.
A new credential is added to matrix_postgres_additional_databases that
allows the exporter access to the database to gather statistics.
A new dashboard was added to the grafana role, with some refactoring
to enable the dashboard only if the new role is enabled.
I've included some basic instructions for how to enable the role in
the Docs section.

In terms of testing, I've tested enabling the role, and disabling
it to make sure it cleans up the container and systemd role.
2021-05-27 20:13:29 +01:00
ewang
409cd2b9a3 Source port binding from group vars in line other components 2021-05-23 14:06:18 +02:00
Aaron Raimist
04548f8df2
Merge branch 'master' into hydrogen 2021-05-21 04:09:18 -05:00
Aaron Raimist
9437f78c9e
Build using custom config.json, add CSP, update to 0.1.53 2021-05-21 03:45:21 -05:00
Slavi Pantaleev
9a8a81fdb0 Disable OCSP stapling when self-signed certificates are used
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/1073
2021-05-21 08:38:20 +03:00
Toni Spets
544915ff76 Add Heisenbridge 2021-05-19 10:42:21 +03:00
Aaron Raimist
ca361af616
Add Hydrogen 2021-05-15 04:23:36 -05:00
Slavi Pantaleev
f03adc83f1 Fix matrix_ma1sd_dns_overwrite_homeserver_client_value when not matrix_nginx_proxy_enabled
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/1047
2021-05-11 08:50:04 +03:00
Slavi Pantaleev
e3fa3e12bc Upgrade Synapse (1.31 -> 1.32.2) 2021-04-22 14:22:07 +03:00
Slavi Pantaleev
378fabf177 Revert "Upgrade Synapse (1.31 -> 1.32.1)"
This reverts commit 1fb54a37cb.

Seems like it's been pulled or something. It used to exist, but not
anymore. Not sure what's going on.

Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/1017

Related to
https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/1010
2021-04-21 23:36:58 +03:00
Slavi Pantaleev
1fb54a37cb Upgrade Synapse (1.31 -> 1.32.1)
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/1010
2021-04-21 18:47:15 +03:00
Slavi Pantaleev
ca786cc343 Revert "Upgrade Synapse (1.31 -> 1.32)"
This reverts commit f825c7c263.

Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/1010
2021-04-20 23:40:55 +03:00
Slavi Pantaleev
f825c7c263 Upgrade Synapse (1.31 -> 1.32) 2021-04-20 17:47:34 +03:00
Slavi Pantaleev
adcecaffaf Fix connectivity between prometheus and prometheus-node-exporter
Expected to have regressed after https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/1008

This patch comes with its own downsides (as described in the comments
for matrix_prometheus_node_exporter_container_http_host_bind_port),
but at least there's:
- no security issue
- metrics remain readable from matrix-prometheus (even if the network metrics are inaccurate)

A better patch is certainly welcome.
2021-04-19 18:29:03 +03:00
Slavi Pantaleev
8da8979a24 Do not override matrix_prometheus_node_exporter_container_http_host_bind_port when matrix-nginx-proxy disabled
Not sure why this had been done in the first place.
It doesn't make any sense.

There's no relation between matrix-nginx-proxy and
prometheus-node-exporter.
2021-04-19 17:45:27 +03:00
Ahmad Haghighi
126fbbc0cc fix typo 2021-04-12 17:23:55 +04:30
Ahmad Haghighi
f52a8b6484 use custom docker registry 2021-04-12 17:23:55 +04:30
Slavi Pantaleev
a1a0d91604 Make prometheus-node-exporter not overlap with Synapse metrics port
This was causing a port conflict when `matrix_nginx_proxy_enabled: false`.

Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/983
2021-04-06 12:23:43 +03:00
Slavi Pantaleev
1b55766927 Do not redefine matrix-postgres role vars in matrix-postgres-backup
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/868
2021-04-05 11:32:19 +03:00
Slavi Pantaleev
0a107dc0ce
Merge pull request #868 from foxcris/postgres-backup
- Added a postgres-backup role
2021-04-05 10:53:04 +03:00
foxcris
14b8e3a3ab - fixed error with generator function 2021-04-05 09:31:32 +02:00
foxcris
2178f3612f - matrix_postgres_backup_databases now uses more simple structure 2021-04-05 09:05:41 +02:00
Slavi Pantaleev
995c483856
Merge pull request #962 from aaronraimist/mjolnir
Add mjolnir
2021-04-03 10:45:29 +03:00
Aaron Raimist
1ecee625d5
Depend on more services, add a delay 2021-04-02 17:07:24 -05:00
Slavi Pantaleev
59699e0d98 Try to make Dimension wait for Synapse
Some people have reported Dimension failing to contact
matrix-nginx-proxy/Synapse on startup. This attempts to
delay Dimension startup some more.
2021-03-29 12:35:02 +03:00
Slavi Pantaleev
59ac8a5921 Make Dimension require matrix-nginx-proxy, if enabled
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/966
2021-03-25 11:56:34 +02:00
Slavi Pantaleev
5b7dbe8275 Make matrix-synapse wanted by matrix-nginx-proxy only if enabled 2021-03-25 08:51:26 +02:00
Slavi Pantaleev
5a4ea5f866 Make AWX enabling/disabling consistent with other playbook roles
That is:
- enabled in the role by default
- disabled in the compilation (playbook), if considered an optional
component
2021-03-24 14:02:53 +02:00
Slavi Pantaleev
b89936afba Make bridges depend on matrix-nginx-proxy
We don't point them straight to Synapse anymore, but rather
to matrix-nginx-proxy, which forwards to Synapse (or something else).
2021-03-24 14:00:41 +02:00
Aaron Raimist
bab8b950ca
Add mjolnir 2021-03-23 22:46:08 -05:00
Slavi Pantaleev
06c74728eb Move matrix_nginx_proxy_proxy_synapse_federation_api_enabled definition to the role
This variable was previously undefined in the role and was only getting
defined via `group_vars/matrix_servers`.

We now properly initialize it (and its good default value) in the role
itself.
2021-03-23 10:28:32 +02:00
Slavi Pantaleev
9a0222fa47 Add Sygnal support
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/683
2021-03-20 13:32:22 +02:00
foxcris
11cd1cb0fa - removed matrix_postgres_backup_db_list variable
- add matrix_postgres_backup_databases to be build on top of matrix_postgres_additional_databases
- POSTGRES_DB is now directly set from matrix_postgres_backup_databases while building the templates/env-postgres-backup.j2
2021-03-16 11:40:16 +01:00
foxcris
43f7d9afb6 - removed dynamic building of the postgres db list an reused matrix_postgres_additional_databases in group_vars/matrix_servers as source for the list
- adjusted env-postgres-backup.j2 to use the new role specific variables
2021-03-16 10:49:04 +01:00
foxcris
ecc6bdb3ca - changed variables names to use role specific one and redefine them using group_vars/matrix_servers 2021-03-16 10:18:26 +01:00
Slavi Pantaleev
011e95c1d2
Merge pull request #893 from GoMatrixHosting/master
matrix-awx - the GoMatrixHosting v0.3.0 initial PR
2021-03-16 08:40:15 +02:00
Yannick Goossens
20c6bd686e Added the matrix_bot_go_neb_container_http_host_bind_port variable to allow the container to expose its listen port 2021-03-12 11:10:00 +01:00
Yannick Goossens
51e2547484 Added support for the Go-NEB bot 2021-03-11 19:23:01 +01:00
Slavi Pantaleev
a25b8135b8 Fix point overlap between matrix-domain and Jitsi
Mostly affects people who disable the integrated `matrix-nginx-proxy`.

Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/456
and more specifically 4d62a75f6f.
2021-03-01 20:27:45 +02:00
Michael
33ec5710d9 0.2.1 revision 2021-02-28 22:21:40 +08:00
Slavi Pantaleev
1ef683d366 Make nginx proxy config (when disabled) obey matrix_federation_public_port
People who were disabling matrix-nginx-proxy (in favor of their own
nginx webserver) and also overriding `matrix_federation_public_port`,
found that the generated nginx configuration still hardcoded `8448`,
which forced their nginx server to use that, regardless of the fact
that `matrix_federation_public_port` was pointing elsewhere.

We now allow for the in-container federation port to be configurable,
and also automatically wire things properly.
2021-02-24 08:19:20 +02:00
Marcus Proest
2ca8211184 Merge remote-tracking branch 'upstream/master' 2021-02-19 19:02:48 +01:00
Marcus Proest
b99372a3c5 initial commit of mautrix-instagram role 2021-02-19 17:20:26 +01:00
Slavi Pantaleev
91c987ca7d
Merge pull request #872 from xangelix/add-mx-puppet-groupme-gh
Add mx-puppet-groupme support
2021-02-19 11:42:41 +02:00
Slavi Pantaleev
d94d0e2ca5
Merge pull request #456 from eMPee584/synapse-workers
Synapse workers
2021-02-19 11:40:36 +02:00
Slavi Pantaleev
217b4a8808 Release Synapse v1.27.0 to ARM32 via self-building
Related to: https://matrix.org/blog/2021/02/18/synapse-1-27-0-released#dropping-armv7-docker-images
2021-02-19 09:10:16 +02:00
Béla Becker
005f4d57f9 Remove mention of sqlite3 support for Etherpad
The official Etherpad Docker image has no support for sqlite3 databases.
2021-02-18 17:39:36 +01:00
Cody Neiman
c4e1209452
Merge branch 'master' into add-mx-puppet-groupme-gh 2021-02-17 13:52:37 -05:00
Slavi Pantaleev
daae74b074 Merge branch 'master' into synapse-workers 2021-02-16 17:31:40 +02:00
Marc Leuser
1434c371bd safer port binding of etherpad docker container
don't bind to any host port if nginx_proxy is used
only bind to localhost if it's not used
2021-02-15 10:46:23 +01:00
Cody Neiman
e510481e84
Merge branch 'master' into add-mx-puppet-groupme-gh 2021-02-14 13:41:16 -05:00
Cody Neiman
c15d5a58a9
Make mx-puppet-groupme tokens unique 2021-02-14 13:37:12 -05:00
Slavi Pantaleev
5cfeae806b Merge branch 'master' into synapse-workers 2021-02-14 13:00:57 +02:00
Slavi Pantaleev
894679750e
Merge pull request #862 from s-thom/nginx-additional
Add additional domains for Let's Encrypt certificates to be obtained
2021-02-14 11:05:25 +02:00
Cody Neiman
b900a4a3ba
Add groupme postgres 2021-02-13 00:50:00 -05:00
Cody Neiman
5a70a56ff0
Initial implementation 2021-02-12 23:13:30 -05:00
Slavi Pantaleev
2b47258c6c Do not auto-expose metrics on matrix.DOMAIN/_synapse/metrics
.. and other documentation improvements.
2021-02-12 13:47:53 +02:00
Slavi Pantaleev
c8ab200cb1 Break dependency between matrix-prometheus and (matrix-prometheus-node-exporter, matrix-synapse) 2021-02-12 11:59:24 +02:00
Slavi Pantaleev
18e31526a8 Rename some variables 2021-02-12 11:59:24 +02:00
Peetz0r
989100b1c1 Grafana nginx proxy config 2021-02-10 22:54:14 +01:00
Peetz0r
eb5aa93e8a Grafana
Also includes the dashboards for Synapse and for Node Exporter.

Again has only been tested on debian amd64 so far, but the grafana docker image is available for arm64 and arm32. Nice.
2021-02-10 22:54:14 +01:00
Peetz0r
e525970b39 Prometheus Node Exporter
Basic system stats, to show stuff the synapse metrics
can't show such as resource usage by bridges, etc

Seems to work fine as well.

This too has only been tested on debian amd64 so far
2021-02-10 22:54:14 +01:00
Peetz0r
13ef9e85cf Prometheus
Initial attempt. Seems to work fine.

Only tested on debian amd64 so far
2021-02-10 22:54:14 +01:00
Stuart Thomson
064b2e533c Add variable for extra domains to get LE certs for
I felt that adding another variable was probably going to be the easiest way to do this. I may end up adding another variable to enable this feature, for consistency with some of the other things.
2021-02-06 20:02:39 +13:00
Béla Becker
38bf1eda70 Etherpad Jitsi integration 2021-01-26 05:04:47 +01:00
Béla Becker
4b451ff782 Etherpad role 2021-01-26 05:04:47 +01:00
Slavi Pantaleev
d3ecc6f017 Fix bridges failing to upload media when Synapse workers are enabled 2021-01-25 13:55:08 +02:00
Slavi Pantaleev
4d62a75f6f Get matrix-corporal to play nicely with a Synapse worker setup
We do this by creating one more layer of indirection.

First we reach some generic vhost handling matrix.DOMAIN.
A bunch of override rules are added there (capturing traffic to send to
ma1sd, etc). nginx-status and similar generic things also live there.

We then proxy to the homeserver on some other vhost (only Synapse being
available right now, but repointing this to Dendrite or other will be
possible in the future).
Then that homeserver-specific vhost does its thing to proxy to the
homeserver. It may or may not use workers, etc.

Without matrix-corporal, the flow is now:
1. matrix.DOMAIN (matrix-nginx-proxy/matrix-domain.conf)
2. matrix-nginx-proxy/matrix-synapse.conf
3. matrix-synapse

With matrix-corporal enabled, it becomes:
1. matrix.DOMAIN (matrix-nginx-proxy/matrix-domain.conf)
2. matrix-corporal
3. matrix-nginx-proxy/matrix-synapse.conf
4. matrix-synapse

(matrix-corporal gets injected at step 2).
2021-01-25 09:46:41 +02:00
Slavi Pantaleev
63301b0ef1 Improvements around Synapse worker/metrics ports exposure
There was a `matrix_nginx_proxy_enabled|default(False)` check, but:
- it didn't seem to work reliably for some reason (hmm)
- referring to a `matrix_nginx_proxy_*` variable from within the
  `matrix-synapse` role is not ideal
- exposing always happened on `127.0.0.1`, which may not be good enough
  for some rarer setups (where the own webserver is external to the host)
2021-01-25 08:25:43 +02:00
Slavi Pantaleev
5ca68210cd Do not handle /_matrix/federation on client-server port, nor /_matrix/client stuff on federation port
I guess it didn't hurt to do it until now, but it's not great serving
federation APIs on the client-server API port, etc.

matrix-corporal doesn't work yet (still something to be solved in the
future), but its firewalling operations will also be sabotaged
by Client-Server APIs being served on the federation port (it's a way to get around its firewalling).
2021-01-24 22:22:57 +02:00
Marcel Partap
183adec3d8 Merge remote-tracking branch 'origin/master' into synapse-workers 2021-01-23 15:04:11 +01:00
Panagiotis Georgiadis
f10e3fef0d
Merge branch 'master' into irc 2021-01-22 20:30:24 +00:00
Panagiotis Georgiadis
e502ee33da
Selfbuild appservice-irc bridge 2021-01-22 21:28:53 +01:00
Slavi Pantaleev
f9c1d62435 Fix Postgres database (-alpine) failing to start on ARM32 2021-01-22 13:52:55 +02:00
Slavi Pantaleev
95346f3117 Reorganize Postgres access (breaking change)
In short, this makes Synapse a 2nd class citizen,
preparing for a future where it's just one-of-many homeserver software
options.

We also no longer have a default Postgres superuser password,
which improves security.

The changelog explains more as to why this was done
and how to proceed from here.
2021-01-22 13:26:12 +02:00
Slavi Pantaleev
024a23ed17 Upgrade mautrix-facebook to the new Postgres-only version
I had intentionally held it back in 39ea3496a4
until:
- it received more testing (there were a few bugs during the
migration, but now it seems OK)
- this migration guide was written
2021-01-20 10:12:51 +02:00
Slavi Pantaleev
28d86e3aaa Initial work on support for matrix-corporal v2 2021-01-16 23:47:14 +02:00
Panagiotis Georgiadis
a66a604e53
Selfbuild appservice-slack bridge 2021-01-14 01:29:11 +01:00
Slavi Pantaleev
48b6487d41 Use ready-made image for mautrix-telegram on arm64
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/793
2021-01-13 22:40:47 +02:00