matrix-docker-ansible-deploy/roles/custom
Slavi Pantaleev 70fd20cef5 Add support for WeChat bridging
This is based on the PR (https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3241)
by Tobias Diez (https://github.com/tobiasdiez).

I've refactored some parts, made it more configurable, polished it up,
and it's integrated into the playbook now.

Both the WeChat bridge and WeChat agent appear to be working.
The WeChat bridge joins rooms and responds as expected.

That said, end-to-end testing (actually bridging to a WeChat account) has not been done yet.

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

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

This is sponsored https://etke.cc/ work related to https://gitlab.com/etke.cc/ansible/-/issues/2

Squashed commit of the following:

commit fdd37f02472a0b83d61b4fac80650442f90e7629
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 21:05:53 2024 +0300

    Add documentation for WeChat bridge

commit 8426fc8b95bb160ea7f9659bd45bc59cf1326614
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 20:59:42 2024 +0300

    Rename directory for matrix_wechat_agent_container_src_files_path

commit da200df82bbc9153d307095dd90e4769c400ea1e
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 20:58:26 2024 +0300

    Make WeChat listen_secret configurable and auto-configured via matrix_homeserver_generic_secret_key

commit 4022cb1355828ac16af7d9228cb1066962bb35f5
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 20:54:56 2024 +0300

    Refactor install.yml for WeChat a bit (using blocks, etc.)

commit d07a39b4c4f6b93d04204e13e384086d5a242d52
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 20:52:35 2024 +0300

    Rename WeChat Agent configuration file

    This makes it more clear that it belongs to the agent.
    Otherwise, `config.yaml` and `configure.yaml` make you wonder.

commit ccca72f8d1e602f7c42f4bd552193afa153c9b9d
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 20:49:06 2024 +0300

    Move WeChat agent configuration to a template

commit a4047d94d8877b4095712dfc76ac3082a1edca28
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 20:47:17 2024 +0300

    Mount WeChat config as readonly and instruct bridge to not update it

commit bc0e89f345bf14bbdbfd574bb60d93918c2ac053
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 20:46:33 2024 +0300

    Sync WeChat config with upstream

    Brings up-to-date with:
    https://github.com/duo/matrix-wechat/commits/0.2.4/example-config.yaml

commit a46f5b9cbc8bf16042685a18c77d25a606bc8232
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 19:48:17 2024 +0300

    Rename some files

commit 3877679040cffc4ca6cccfa21a7335f8f796f06e
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 19:47:10 2024 +0300

    Update WeChat logging config

    This brings it up-to-date with what mautrix-go uses.
    Otherwise, on startup we see:

    > Migrating legacy log config

    .. and it gets migrated to what we've done here.

commit e3e95ab234651867c7a975a08455549b31db4172
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 19:43:37 2024 +0300

    Make sure matrix-wechat-agent runs as 1000:1000

    It needs to write stuff to `/home/user/.vnc`.

    `/home/user` is owned by `user:group` (`1000:1000`), so it cannot run
    any other way.

    Previously, if the `matrix` user was uid=1000 by chance, it would work,
    but that's pure luck.

commit 4d5748ae9b84c81d6b48b0a41b790339d9ac4724
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 18:57:09 2024 +0300

    Pin wechat and wechat-agent versions

commit 40d40009f19ebceed4126146cbb510a2c95af671
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 18:53:58 2024 +0300

    docker_image -> container_image for WeChat bridge

commit cc33aff592541913070d13288d17b04ed6243176
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 18:00:25 2024 +0300

    docker_src -> container_src in WeChat bridge

commit 42e6ae9a6483c8ca6d53b8052058d41d90d93797
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 17:54:24 2024 +0300

    matrix_go_wechat_ -> matrix_wechat_

    The bridge is written in Go, but does not include Go anywhere in its
    name. As such, it's mostly useless to use `matrix_go_wechat` as the
    prefix.

commit d6662a69d1916d215d5184320c36d2ef73afd3e9
Author: Tobias Diez <code@tobiasdiez.de>
Date:   Mon Mar 25 10:55:16 2024 +0800

    Add wechat bridge
2024-06-03 21:28:50 +03:00
..
matrix_playbook_migration Fix ansible-lint-reported errors 2024-05-28 10:52:17 +03:00
matrix-appservice-draupnir-for-all Pin Draupnir Appservice to 1.87.0 instead of Develop & update Draupnir 2024-03-24 21:03:56 +01:00
matrix-base Do not hardcode https:// in all remaining places, refer to matrix_static_files_scheme 2024-05-25 16:14:26 +03:00
matrix-bot-buscarron chore(deps): update registry.gitlab.com/etke.cc/buscarron docker tag to v1.4.1 2024-04-17 11:50:47 +00:00
matrix-bot-chatgpt Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bot-draupnir Merge pull request #3240 from FSG-Cat/PantalFixes-and-Improvements 2024-03-25 07:05:06 +02:00
matrix-bot-go-neb Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bot-honoroit chore(deps): update registry.gitlab.com/etke.cc/honoroit docker tag to v0.9.21 2024-04-30 09:38:13 +00:00
matrix-bot-matrix-registration-bot Do not hardcode https:// in all remaining places, refer to matrix_static_files_scheme 2024-05-25 16:14:26 +03:00
matrix-bot-matrix-reminder-bot Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bot-maubot Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bot-mjolnir Improve Pantalaimon Support in Draupnir and add Mjolnir support 2024-03-24 21:55:21 +01:00
matrix-bot-postmoogle chore(deps): update registry.gitlab.com/etke.cc/postmoogle docker tag to v0.9.18 2024-04-30 09:38:17 +00:00
matrix-bridge-appservice-discord Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-appservice-irc Do not hardcode https:// in all remaining places, refer to matrix_static_files_scheme 2024-05-25 16:14:26 +03:00
matrix-bridge-appservice-kakaotalk Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-appservice-slack Use to_json in appservice-slack config.yaml.j2 2024-05-14 20:27:47 +03:00
matrix-bridge-appservice-webhooks Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-beeper-linkedin Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-go-skype-bridge Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-heisenbridge Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-hookshot Do not hardcode https:// in all remaining places, refer to matrix_static_files_scheme 2024-05-25 16:14:26 +03:00
matrix-bridge-mautrix-discord Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-mautrix-facebook Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-mautrix-gmessages chore(deps): update dock.mau.dev/mautrix/gmessages docker tag to v0.4.1 2024-05-16 21:33:47 +00:00
matrix-bridge-mautrix-googlechat Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-mautrix-hangouts Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-mautrix-instagram Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-mautrix-meta-instagram chore(deps): update dock.mau.dev/mautrix/meta docker tag to v0.3.1 2024-05-16 21:33:50 +00:00
matrix-bridge-mautrix-meta-messenger chore(deps): update dock.mau.dev/mautrix/meta docker tag to v0.3.1 2024-05-16 21:33:50 +00:00
matrix-bridge-mautrix-signal chore(deps): update dock.mau.dev/mautrix/signal docker tag to v0.6.1 2024-05-17 04:43:46 +00:00
matrix-bridge-mautrix-slack Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-mautrix-telegram Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-mautrix-twitter Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-mautrix-whatsapp chore(deps): update dock.mau.dev/mautrix/whatsapp docker tag to v0.10.7 2024-04-16 11:51:10 +00:00
matrix-bridge-mautrix-wsproxy Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-mx-puppet-discord Do not hardcode https:// in all remaining places, refer to matrix_static_files_scheme 2024-05-25 16:14:26 +03:00
matrix-bridge-mx-puppet-groupme Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-mx-puppet-instagram Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-mx-puppet-slack Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-mx-puppet-steam Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-mx-puppet-twitter Do not hardcode https:// in all remaining places, refer to matrix_static_files_scheme 2024-05-25 16:14:26 +03:00
matrix-bridge-sms Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-bridge-wechat Add support for WeChat bridging 2024-06-03 21:28:50 +03:00
matrix-cactus-comments Add matrix-cactus-comments-client role 2024-01-09 09:53:01 +02:00
matrix-cactus-comments-client chore(deps): update joseluisq/static-web-server docker tag to v2.31.1 2024-05-21 05:28:47 +00:00
matrix-client-cinny Do not hardcode https:// in all remaining places, refer to matrix_static_files_scheme 2024-05-25 16:14:26 +03:00
matrix-client-element Do not hardcode https:// in all remaining places, refer to matrix_static_files_scheme 2024-05-25 16:14:26 +03:00
matrix-client-hydrogen Do not hardcode https:// in all remaining places, refer to matrix_static_files_scheme 2024-05-25 16:14:26 +03:00
matrix-client-schildichat Do not hardcode https:// in all remaining places, refer to matrix_static_files_scheme 2024-05-25 16:14:26 +03:00
matrix-common-after/tasks Fix all 300+ ansible-lint-reported errors 2023-03-07 17:28:15 +02:00
matrix-conduit Do not hardcode https:// in all remaining places, refer to matrix_static_files_scheme 2024-05-25 16:14:26 +03:00
matrix-corporal Do not hardcode https:// in all remaining places, refer to matrix_static_files_scheme 2024-05-25 16:14:26 +03:00
matrix-coturn Upgrade Coturn (4.6.2-r5 -> 4.6.2-r9) 2024-05-24 20:18:56 +03:00
matrix-dendrite Do not hardcode https:// in all remaining places, refer to matrix_static_files_scheme 2024-05-25 16:14:26 +03:00
matrix-dimension Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-dynamic-dns Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-email2matrix Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-ldap-registration-proxy Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-ma1sd Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-media-repo Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-pantalaimon Add Pantalaimon support 2024-03-24 18:35:34 +02:00
matrix-prometheus-nginxlog-exporter Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-prometheus-services-connect Properly switch to element-hq-synapse and introduce variables for customizing that 2024-01-17 08:40:23 +02:00
matrix-rageshake chore(deps): update ghcr.io/matrix-org/rageshake docker tag to v1.13.0 2024-05-10 10:24:32 +00:00
matrix-registration Squashed commit of the following: 2024-03-24 19:15:43 +02:00
matrix-sliding-sync Upgrade sliding-sync (v0.99.17 -> v0.99.18) 2024-05-23 15:07:30 +03:00
matrix-static-files Do not hardcode https:// in all remaining places, refer to matrix_static_files_scheme 2024-05-25 16:14:26 +03:00
matrix-sygnal chore(deps): update matrixdotorg/sygnal docker tag to v0.14.3 2024-05-31 23:04:46 +00:00
matrix-synapse chore(deps): update ghcr.io/element-hq/synapse docker tag to v1.108.0 2024-05-28 12:12:34 +00:00
matrix-synapse-admin chore(deps): update awesometechnologies/synapse-admin docker tag to v0.10.1 2024-04-24 15:50:06 +00:00
matrix-synapse-auto-compressor Upgrade synapse-auto-compressor (v0.1.3 -> v0.1.4) 2024-04-13 09:50:19 +03:00
matrix-synapse-reverse-proxy-companion chore(deps): update nginx docker tag to v1.27.0 2024-05-30 20:10:25 +00:00
matrix-user-creator add ensure-users-created tag alongside with ensure-matrix-users-created 2023-10-02 18:33:21 +03:00
matrix-user-verification-service Squashed commit of the following: 2024-03-24 19:15:43 +02:00