Compare commits
87 Commits
3134ce78d1
...
c8fefa70a2
Author | SHA1 | Date | |
---|---|---|---|
c8fefa70a2 | |||
643df4817c | |||
328e025f31 | |||
|
112d8d8243 | ||
|
31244e7fcc | ||
|
7d9ee3e2fb | ||
|
a21696f687 | ||
|
ead4b00c09 | ||
|
30339cd313 | ||
|
d08a78ff1f | ||
|
4105ba854b | ||
|
25e6eb27ab | ||
|
fb221c8179 | ||
|
51b94d9987 | ||
|
931b16fa66 | ||
|
9345d840be | ||
|
a8373d6bd4 | ||
|
8b304445e5 | ||
|
70cb27138c | ||
|
b3793f3595 | ||
|
3a28100131 | ||
|
5d0b213d19 | ||
|
814fb33f45 | ||
|
635b0cf670 | ||
|
5b692b6e76 | ||
|
7f15787d54 | ||
|
b5ab31240f | ||
|
f933ba14ae | ||
|
593922f5c3 | ||
|
e90979e91f | ||
|
a435c64c13 | ||
|
76ceebff0a | ||
|
86e4649578 | ||
|
03006eb5ab | ||
|
245986c793 | ||
|
ab0d2055ba | ||
|
aa6398a948 | ||
|
f732a75ca5 | ||
|
4bb205a0a8 | ||
|
c198320f65 | ||
|
2e0eddde9d | ||
|
22857b4598 | ||
|
cd54147144 | ||
|
7a51268dfc | ||
|
3fa895fe96 | ||
|
3fc077d135 | ||
|
f6e0cbe5f3 | ||
|
49455a9ce0 | ||
|
a26b056163 | ||
|
1c938c72fd | ||
|
5c0c0d5af0 | ||
|
29b6d011d7 | ||
|
b4d7ab0b53 | ||
|
b6d71b9da1 | ||
|
d4fb0cc02f | ||
|
1ad9bba88f | ||
|
2aa457efcc | ||
|
3777334778 | ||
|
8b146f083e | ||
|
935967f3a6 | ||
|
7acaef89df | ||
|
ea8daabf86 | ||
|
ccde2362fc | ||
|
672ddf2b89 | ||
|
55452c3068 | ||
|
fc16fbda5b | ||
|
19ed8d1d17 | ||
|
a7d51d493a | ||
|
d87947c779 | ||
|
7b2211da8e | ||
|
09ee5ce52e | ||
|
3d063f6ace | ||
|
5df4d68829 | ||
|
7b52e6ad5e | ||
|
8a369f61f3 | ||
|
0cc17ab2ca | ||
|
f2f1b20e44 | ||
|
b132941e71 | ||
|
6ede9c8cd6 | ||
|
d9e943aaaa | ||
|
0c8a3c401f | ||
|
1250208907 | ||
|
c0cd2a3c93 | ||
|
f8be36327c | ||
|
3e011bafd5 | ||
|
8af2d818b1 | ||
|
2ca92b76b6 |
4
.gitignore
vendored
4
.gitignore
vendored
@ -1,7 +1,3 @@
|
|||||||
/inventory/*
|
|
||||||
!/inventory/.gitkeep
|
|
||||||
!/inventory/host_vars/.gitkeep
|
|
||||||
!/inventory/scripts
|
|
||||||
/roles/*/files/scratchpad
|
/roles/*/files/scratchpad
|
||||||
.DS_Store
|
.DS_Store
|
||||||
.python-version
|
.python-version
|
||||||
|
@ -1,6 +1,11 @@
|
|||||||
[defaults]
|
[defaults]
|
||||||
|
|
||||||
|
vault_password_file = gpg/open_vault.sh
|
||||||
|
|
||||||
retry_files_enabled = False
|
retry_files_enabled = False
|
||||||
stdout_callback = yaml
|
stdout_callback = yaml
|
||||||
|
|
||||||
|
inventory = inventory/hosts
|
||||||
|
|
||||||
[connection]
|
[connection]
|
||||||
pipelining = True
|
pipelining = True
|
||||||
|
@ -68,4 +68,4 @@ This is an optional feature. See [ma1sd's documentation](https://github.com/ma1u
|
|||||||
|
|
||||||
Note: This `_matrix-identity._tcp` SRV record for the identity server is different from the `_matrix._tcp` that can be used for Synapse delegation. See [howto-server-delegation.md](howto-server-delegation.md) for more information about delegation.
|
Note: This `_matrix-identity._tcp` SRV record for the identity server is different from the `_matrix._tcp` that can be used for Synapse delegation. See [howto-server-delegation.md](howto-server-delegation.md) for more information about delegation.
|
||||||
|
|
||||||
When you're done with the DNS configuration and ready to proceed, continue with [Configuring this Ansible playbook](configuring-playbook.md).
|
When you're done with the DNS configuration and ready to proceed, continue with [Getting the playbook](getting-the-playbook.md).
|
||||||
|
@ -56,7 +56,7 @@ Certain Synapse administration tasks (managing users and rooms, etc.) can be per
|
|||||||
|
|
||||||
If you'd like to use OpenID Connect authentication with Synapse, you'll need some additional reverse-proxy configuration (see [our nginx reverse-proxy doc page](configuring-playbook-nginx.md#synapse-openid-connect-for-single-sign-on)).
|
If you'd like to use OpenID Connect authentication with Synapse, you'll need some additional reverse-proxy configuration (see [our nginx reverse-proxy doc page](configuring-playbook-nginx.md#synapse-openid-connect-for-single-sign-on)).
|
||||||
|
|
||||||
In case you encounter errors regarding the parsing of the variables, you can try to add `{%raw}` and `{% endraw %}` blocks around them. For example ;
|
In case you encounter errors regarding the parsing of the variables, you can try to add `{% raw %}` and `{% endraw %}` blocks around them. For example ;
|
||||||
|
|
||||||
```
|
```
|
||||||
- idp_id: keycloak
|
- idp_id: keycloak
|
||||||
@ -70,7 +70,7 @@ In case you encounter errors regarding the parsing of the variables, you can try
|
|||||||
userinfo_endpoint: "https://url.ix/auth/realms/x/protocol/openid-connect/userinfo"
|
userinfo_endpoint: "https://url.ix/auth/realms/x/protocol/openid-connect/userinfo"
|
||||||
user_mapping_provider:
|
user_mapping_provider:
|
||||||
config:
|
config:
|
||||||
display_name_template: "{%raw}{{ user.given_name }}{% endraw %} {%raw}{{ user.family_name }}{% endraw %}"
|
display_name_template: "{% raw %}{{ user.given_name }}{% endraw %} {% raw %}{{ user.family_name }}{% endraw %}"
|
||||||
email_template: "{%raw}{{ user.email }}{% endraw %}"
|
email_template: "{% raw %}{{ user.email }}{% endraw %}"
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@ Table of contents:
|
|||||||
|
|
||||||
## Purging old data with the Purge History API
|
## Purging old data with the Purge History API
|
||||||
|
|
||||||
You can use the **[Purge History API](https://github.com/matrix-org/synapse/blob/master/docs/admin_api/purge_history_api.rst)** to delete old messages on a per-room basis. **This is destructive** (especially for non-federated rooms), because it means **people will no longer have access to history past a certain point**.
|
You can use the **[Purge History API](https://github.com/matrix-org/synapse/blob/master/docs/admin_api/purge_history_api.md)** to delete old messages on a per-room basis. **This is destructive** (especially for non-federated rooms), because it means **people will no longer have access to history past a certain point**.
|
||||||
|
|
||||||
To make use of this API, **you'll need an admin access token** first. You can find your access token in the setting of some clients (like Element).
|
To make use of this API, **you'll need an admin access token** first. You can find your access token in the setting of some clients (like Element).
|
||||||
Alternatively, you can log in and obtain a new access token like this:
|
Alternatively, you can log in and obtain a new access token like this:
|
||||||
@ -27,7 +27,7 @@ https://matrix.DOMAIN/_matrix/client/r0/login
|
|||||||
|
|
||||||
Synapse's Admin API is not exposed to the internet by default. To expose it you will need to add `matrix_nginx_proxy_proxy_matrix_client_api_forwarded_location_synapse_admin_api_enabled: true` to your `vars.yml` file.
|
Synapse's Admin API is not exposed to the internet by default. To expose it you will need to add `matrix_nginx_proxy_proxy_matrix_client_api_forwarded_location_synapse_admin_api_enabled: true` to your `vars.yml` file.
|
||||||
|
|
||||||
Follow the [Purge History API](https://github.com/matrix-org/synapse/blob/master/docs/admin_api/purge_history_api.rst) documentation page for the actual purging instructions.
|
Follow the [Purge History API](https://github.com/matrix-org/synapse/blob/master/docs/admin_api/purge_history_api.md) documentation page for the actual purging instructions.
|
||||||
|
|
||||||
After deleting data, you may wish to run a [`FULL` Postgres `VACUUM`](./maintenance-postgres.md#vacuuming-postgresql).
|
After deleting data, you may wish to run a [`FULL` Postgres `VACUUM`](./maintenance-postgres.md#vacuuming-postgresql).
|
||||||
|
|
||||||
|
@ -26,6 +26,7 @@ List of roles where self-building the Docker image is currently possible:
|
|||||||
- `matrix-bridge-mautrix-hangouts`
|
- `matrix-bridge-mautrix-hangouts`
|
||||||
- `matrix-bridge-mautrix-telegram`
|
- `matrix-bridge-mautrix-telegram`
|
||||||
- `matrix-bridge-mx-puppet-skype`
|
- `matrix-bridge-mx-puppet-skype`
|
||||||
|
- `matrix-bot-mjolnir`
|
||||||
|
|
||||||
Adding self-building support to other roles is welcome. Feel free to contribute!
|
Adding self-building support to other roles is welcome. Feel free to contribute!
|
||||||
|
|
||||||
|
@ -32,6 +32,7 @@
|
|||||||
ProxyPreserveHost On
|
ProxyPreserveHost On
|
||||||
ProxyRequests Off
|
ProxyRequests Off
|
||||||
ProxyVia On
|
ProxyVia On
|
||||||
|
RequestHeader set "X-Forwarded-Proto" expr=%{REQUEST_SCHEME}
|
||||||
|
|
||||||
# Keep some URIs free for different proxy/location
|
# Keep some URIs free for different proxy/location
|
||||||
ProxyPassMatch ^/.well-known/matrix/client !
|
ProxyPassMatch ^/.well-known/matrix/client !
|
||||||
@ -45,6 +46,14 @@
|
|||||||
ProxyPassReverse /_matrix http://127.0.0.1:8008/_matrix
|
ProxyPassReverse /_matrix http://127.0.0.1:8008/_matrix
|
||||||
ProxyPass /_synapse/client http://127.0.0.1:8008/_synapse/client retry=0 nocanon
|
ProxyPass /_synapse/client http://127.0.0.1:8008/_synapse/client retry=0 nocanon
|
||||||
ProxyPassReverse /_synapse/client http://127.0.0.1:8008/_synapse/client
|
ProxyPassReverse /_synapse/client http://127.0.0.1:8008/_synapse/client
|
||||||
|
|
||||||
|
# Proxy Admin API (necessary for Synapse-Admin)
|
||||||
|
# ProxyPass /_synapse/admin http://127.0.0.1:8008/_synapse/admin retry=0 nocanon
|
||||||
|
# ProxyPassReverse /_synapse/admin http://127.0.0.1:8008/_synapse/admin
|
||||||
|
|
||||||
|
# Proxy Synapse-Admin
|
||||||
|
# ProxyPass /synapse-admin http://127.0.0.1:8766 retry=0 nocanon
|
||||||
|
# ProxyPassReverse /synapse-admin http://127.0.0.1:8766
|
||||||
|
|
||||||
# Map /.well-known/matrix/client for client discovery
|
# Map /.well-known/matrix/client for client discovery
|
||||||
Alias /.well-known/matrix/client /matrix/static-files/.well-known/matrix/client
|
Alias /.well-known/matrix/client /matrix/static-files/.well-known/matrix/client
|
||||||
@ -111,6 +120,7 @@ Listen 8448
|
|||||||
ProxyPreserveHost On
|
ProxyPreserveHost On
|
||||||
ProxyRequests Off
|
ProxyRequests Off
|
||||||
ProxyVia On
|
ProxyVia On
|
||||||
|
RequestHeader set "X-Forwarded-Proto" expr=%{REQUEST_SCHEME}
|
||||||
|
|
||||||
# Proxy all remaining traffic to the Synapse port
|
# Proxy all remaining traffic to the Synapse port
|
||||||
# Beware: In this example the local traffic goes to the local synapse server at 127.0.0.1
|
# Beware: In this example the local traffic goes to the local synapse server at 127.0.0.1
|
||||||
|
5
gpg/open_vault.sh
Executable file
5
gpg/open_vault.sh
Executable file
@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e -u
|
||||||
|
|
||||||
|
gpg2 --batch --use-agent --decrypt $(dirname $0)/vault_passphrase.gpg 2>/dev/null
|
18
gpg/vault_passphrase.gpg
Normal file
18
gpg/vault_passphrase.gpg
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
-----BEGIN PGP MESSAGE-----
|
||||||
|
|
||||||
|
hQIMAxEs7W/4x4lxARAAssinIzR2rGs+Qkm0Q2tRdSXSXRx3OhH+2T5p0Rz3YkqU
|
||||||
|
iyiUtyT/Ll7RMUAlAEDZITvirXe4ZZImDcxQegEzFgO7BowQYJDRdhaRmLKZpiuQ
|
||||||
|
foRnJAAR12sf49arjJjaBQb91ViOp5MkxAtXiiqWyXwSSII+cV88flMq143cFmfC
|
||||||
|
C5OdIQd3SqrbFhGRTjUzoIMqnJH8xksjwph9GS811dY14rQv5X1Ybt5zehMJ7/m/
|
||||||
|
luLNg2zgQgYOUxcovddCVMI54ThXyDubDox/5xLvVjyVOFHgwC/VLn+QXHuPY/r5
|
||||||
|
+rVzz/30eq0uOLKD3LnDBQskCWRVWGC2ulKaZtlylBq6KRzIM6c6+VPSHCjoFyES
|
||||||
|
RRpRHeIXGLs31eLkr8dc+VNbPKpMsjm/E/4ZVE2JBpy7S/kh1XYVQxT6ahDKT1tD
|
||||||
|
4YN9O0JyNXzjiyNaTTLwNGh5+ICEd3ZCfa4O/og2LySGPOw6mX8ukgP029LHVp6+
|
||||||
|
0tRwSWiIM3US/NIVGA+o9e9I/I5Bp/cnzJgd7faUIlzcVPP+euCbo4GsYWpX3Nca
|
||||||
|
eRcr7AVY3wwuZtl7/s8KbQKk0ulLxS4Lo2XmdpQl8CPGwASdbMf/H8B256+xiUQ3
|
||||||
|
ml400ZaCC7Loeduwl1ez1H/dFFzmpUziaxxtWW4aFtOUYhGeSCTu6ZIgxVq3eBnS
|
||||||
|
jAGv8bt+0Xnrpih3mZWM92cw2VKfzYD9WG+dCB4DtZMKhl1ub2bkeTC/B9F+QuP6
|
||||||
|
anlonYHs2wmPXzjcx8ajonbYrYXanoNRHDId6OqVAbjYqbua6TG6H9LUFweIj1RV
|
||||||
|
yhUPejzhA8xEB0nUcKJZKLvuqvwPbr06GODnAKY5TQ4yILMAnBx0pNzfQNzo
|
||||||
|
=Cecg
|
||||||
|
-----END PGP MESSAGE-----
|
@ -374,13 +374,15 @@ matrix_mautrix_signal_login_shared_secret: "{{ matrix_synapse_ext_password_provi
|
|||||||
matrix_mautrix_signal_database_engine: 'postgres'
|
matrix_mautrix_signal_database_engine: 'postgres'
|
||||||
matrix_mautrix_signal_database_password: "{{ matrix_synapse_macaroon_secret_key | password_hash('sha512', 'mau.signal.db') | to_uuid }}"
|
matrix_mautrix_signal_database_password: "{{ matrix_synapse_macaroon_secret_key | password_hash('sha512', 'mau.signal.db') | to_uuid }}"
|
||||||
|
|
||||||
|
matrix_mautrix_signal_container_self_build: "{{ matrix_architecture not in ['amd64', 'arm64'] }}"
|
||||||
|
matrix_mautrix_signal_daemon_container_self_build: "{{ matrix_architecture != 'amd64' }}"
|
||||||
|
|
||||||
######################################################################
|
######################################################################
|
||||||
#
|
#
|
||||||
# /matrix-bridge-mautrix-signal
|
# /matrix-bridge-mautrix-signal
|
||||||
#
|
#
|
||||||
######################################################################
|
######################################################################
|
||||||
|
|
||||||
|
|
||||||
######################################################################
|
######################################################################
|
||||||
#
|
#
|
||||||
# matrix-bridge-mautrix-telegram
|
# matrix-bridge-mautrix-telegram
|
||||||
@ -392,6 +394,8 @@ matrix_mautrix_telegram_enabled: false
|
|||||||
|
|
||||||
# Images are multi-arch (amd64 and arm64, but not arm32).
|
# Images are multi-arch (amd64 and arm64, but not arm32).
|
||||||
matrix_mautrix_telegram_container_self_build: "{{ matrix_architecture not in ['arm64', 'amd64'] }}"
|
matrix_mautrix_telegram_container_self_build: "{{ matrix_architecture not in ['arm64', 'amd64'] }}"
|
||||||
|
matrix_telegram_lottieconverter_container_self_build: "{{ matrix_architecture not in ['arm64', 'amd64'] }}"
|
||||||
|
matrix_telegram_lottieconverter_container_self_build_mask_arch: "{{ matrix_architecture != 'amd64' }}"
|
||||||
|
|
||||||
matrix_mautrix_telegram_systemd_required_services_list: |
|
matrix_mautrix_telegram_systemd_required_services_list: |
|
||||||
{{
|
{{
|
||||||
@ -851,6 +855,8 @@ matrix_bot_go_neb_container_http_host_bind_port: "{{ '' if matrix_nginx_proxy_en
|
|||||||
# We don't enable bots by default.
|
# We don't enable bots by default.
|
||||||
matrix_bot_mjolnir_enabled: false
|
matrix_bot_mjolnir_enabled: false
|
||||||
|
|
||||||
|
matrix_bot_mjolnir_container_image_self_build: "{{ matrix_architecture != 'amd64'}}"
|
||||||
|
|
||||||
matrix_bot_mjolnir_systemd_required_services_list: |
|
matrix_bot_mjolnir_systemd_required_services_list: |
|
||||||
{{
|
{{
|
||||||
['docker.service']
|
['docker.service']
|
||||||
@ -1472,7 +1478,7 @@ matrix_postgres_additional_databases: |
|
|||||||
'username': matrix_prometheus_postgres_exporter_database_username,
|
'username': matrix_prometheus_postgres_exporter_database_username,
|
||||||
'password': matrix_prometheus_postgres_exporter_database_password,
|
'password': matrix_prometheus_postgres_exporter_database_password,
|
||||||
}] if (matrix_prometheus_postgres_exporter_enabled and matrix_prometheus_postgres_exporter_database_hostname == 'matrix-postgres') else [])
|
}] if (matrix_prometheus_postgres_exporter_enabled and matrix_prometheus_postgres_exporter_database_hostname == 'matrix-postgres') else [])
|
||||||
|
|
||||||
}}
|
}}
|
||||||
|
|
||||||
matrix_postgres_import_roles_to_ignore: |
|
matrix_postgres_import_roles_to_ignore: |
|
||||||
@ -1669,16 +1675,23 @@ matrix_synapse_email_notif_from: "Matrix <{{ matrix_mailer_sender_address }}>"
|
|||||||
|
|
||||||
# Even if TURN doesn't support TLS (it does by default),
|
# Even if TURN doesn't support TLS (it does by default),
|
||||||
# it doesn't hurt to try a secure connection anyway.
|
# it doesn't hurt to try a secure connection anyway.
|
||||||
|
#
|
||||||
|
# When Let's Encrypt certificates are used (the default case),
|
||||||
|
# we don't enable `turns` endpoints, because WebRTC in Element can't talk to them.
|
||||||
|
# Learn more here: https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/1145
|
||||||
matrix_synapse_turn_uris: |
|
matrix_synapse_turn_uris: |
|
||||||
{{
|
{{
|
||||||
|
[]
|
||||||
|
+
|
||||||
[
|
[
|
||||||
'turns:' + matrix_server_fqn_matrix + '?transport=udp',
|
'turns:' + matrix_server_fqn_matrix + '?transport=udp',
|
||||||
'turns:' + matrix_server_fqn_matrix + '?transport=tcp',
|
'turns:' + matrix_server_fqn_matrix + '?transport=tcp',
|
||||||
|
] if matrix_coturn_enabled and matrix_coturn_tls_enabled and matrix_ssl_retrieval_method != 'lets-encrypt' else []
|
||||||
|
+
|
||||||
|
[
|
||||||
'turn:' + matrix_server_fqn_matrix + '?transport=udp',
|
'turn:' + matrix_server_fqn_matrix + '?transport=udp',
|
||||||
'turn:' + matrix_server_fqn_matrix + '?transport=tcp',
|
'turn:' + matrix_server_fqn_matrix + '?transport=tcp',
|
||||||
]
|
] if matrix_coturn_enabled else []
|
||||||
if matrix_coturn_enabled
|
|
||||||
else []
|
|
||||||
}}
|
}}
|
||||||
|
|
||||||
matrix_synapse_turn_shared_secret: "{{ matrix_coturn_turn_static_auth_secret if matrix_coturn_enabled else '' }}"
|
matrix_synapse_turn_shared_secret: "{{ matrix_coturn_turn_static_auth_secret if matrix_coturn_enabled else '' }}"
|
||||||
@ -1768,6 +1781,7 @@ matrix_prometheus_container_http_host_bind_port: "{{ '' if matrix_nginx_proxy_en
|
|||||||
|
|
||||||
matrix_prometheus_scraper_synapse_enabled: "{{ matrix_synapse_enabled and matrix_synapse_metrics_enabled }}"
|
matrix_prometheus_scraper_synapse_enabled: "{{ matrix_synapse_enabled and matrix_synapse_metrics_enabled }}"
|
||||||
matrix_prometheus_scraper_synapse_targets: ['matrix-synapse:{{ matrix_synapse_metrics_port }}']
|
matrix_prometheus_scraper_synapse_targets: ['matrix-synapse:{{ matrix_synapse_metrics_port }}']
|
||||||
|
matrix_prometheus_scraper_synapse_workers_enabled_list: "{{ matrix_synapse_workers_enabled_list }}"
|
||||||
matrix_prometheus_scraper_synapse_rules_synapse_tag: "{{ matrix_synapse_docker_image_tag }}"
|
matrix_prometheus_scraper_synapse_rules_synapse_tag: "{{ matrix_synapse_docker_image_tag }}"
|
||||||
|
|
||||||
matrix_prometheus_scraper_node_enabled: "{{ matrix_prometheus_node_exporter_enabled }}"
|
matrix_prometheus_scraper_node_enabled: "{{ matrix_prometheus_node_exporter_enabled }}"
|
||||||
|
336
inventory/host_vars/matrix.finallycoffee.eu/vars.yml
Normal file
336
inventory/host_vars/matrix.finallycoffee.eu/vars.yml
Normal file
@ -0,0 +1,336 @@
|
|||||||
|
#
|
||||||
|
# General config
|
||||||
|
# Domain of the matrix server and SSL config
|
||||||
|
#
|
||||||
|
matrix_domain: finallycoffee.eu
|
||||||
|
matrix_ssl_retrieval_method: none
|
||||||
|
matrix_nginx_proxy_enabled: false
|
||||||
|
matrix_base_data_path: "{{ vault_matrix_base_data_path }}"
|
||||||
|
matrix_server_fqn_element: "chat.{{ matrix_domain }}"
|
||||||
|
|
||||||
|
web_user: "web"
|
||||||
|
revproxy_autoload_dir: "/vault/services/web/sites.d"
|
||||||
|
|
||||||
|
#matrix_synapse_docker_image: "{{ matrix_synapse_docker_image_name_prefix }}matrixdotorg/synapse:v1.32.0rc1"
|
||||||
|
|
||||||
|
#
|
||||||
|
# General Synapse config
|
||||||
|
#
|
||||||
|
matrix_postgres_connection_password: "{{ vault_matrix_postgres_connection_password }}"
|
||||||
|
# A secret used to protect access keys issued by the server.
|
||||||
|
matrix_synapse_macaroon_secret_key: "{{ vault_matrix_synapse_macaroon_secret_key }}"
|
||||||
|
# Make synapse accept larger media aswell
|
||||||
|
matrix_synapse_max_upload_size_mb: 100
|
||||||
|
# Enable metrics at (default) :9100/_synapse/metrics
|
||||||
|
matrix_synapse_metrics_enabled: true
|
||||||
|
matrix_synapse_enable_group_creation: true
|
||||||
|
matrix_synapse_turn_shared_secret: "{{ vault_matrix_coturn_turn_static_auth_secret }}"
|
||||||
|
matrix_synapse_turn_uris:
|
||||||
|
- "turns:voip.matrix.finallycoffee.eu?transport=udp"
|
||||||
|
- "turns:voip.matrix.finallycoffee.eu?transport=tcp"
|
||||||
|
# Auto-join all users into those rooms
|
||||||
|
matrix_synapse_auto_join_rooms:
|
||||||
|
- "#welcome:finallycoffee.eu"
|
||||||
|
- "#announcements:finallycoffee.eu"
|
||||||
|
|
||||||
|
## Synapse rate limits
|
||||||
|
matrix_synapse_rc_federation:
|
||||||
|
window_size: 1000
|
||||||
|
sleep_limit: 25
|
||||||
|
sleep_delay: 500
|
||||||
|
reject_limit: 50
|
||||||
|
concurrent: 5
|
||||||
|
matrix_synapse_rc_message:
|
||||||
|
per_second: 0.5
|
||||||
|
burst_count: 25
|
||||||
|
|
||||||
|
## Synapse cache tuning
|
||||||
|
matrix_synapse_caches_global_factor: 0.7
|
||||||
|
matrix_synapse_event_cache_size: "200K"
|
||||||
|
|
||||||
|
## Synapse workers
|
||||||
|
matrix_synapse_workers_enabled: true
|
||||||
|
matrix_synapse_workers_preset: "little-federation-helper"
|
||||||
|
matrix_synapse_workers_generic_worker_client_server_count: 0
|
||||||
|
matrix_synapse_workers_media_repository_workers_count: 0
|
||||||
|
matrix_synapse_workers_federation_sender_workers_count: 1
|
||||||
|
matrix_synapse_workers_pusher_workers_count: 0
|
||||||
|
matrix_synapse_workers_appservice_workers_count: 1
|
||||||
|
|
||||||
|
# Static secret auth for matrix-synapse-shared-secret-auth
|
||||||
|
matrix_synapse_ext_password_provider_shared_secret_auth_enabled: true
|
||||||
|
matrix_synapse_ext_password_provider_shared_secret_auth_shared_secret: "{{ vault_matrix_synapse_ext_password_provider_shared_secret_auth_shared_secret }}"
|
||||||
|
matrix_synapse_ext_password_provider_rest_auth_enabled: true
|
||||||
|
matrix_synapse_ext_password_provider_rest_auth_endpoint: "http://matrix-ma1sd:8090"
|
||||||
|
matrix_synapse_ext_password_provider_rest_auth_registration_enforce_lowercase: false
|
||||||
|
matrix_synapse_ext_password_provider_rest_auth_registration_profile_name_autofill: true
|
||||||
|
matrix_synapse_ext_password_provider_rest_auth_login_profile_name_autofill: false
|
||||||
|
|
||||||
|
# Enable experimental spaces support
|
||||||
|
matrix_synapse_configuration_extension_yaml: |
|
||||||
|
experimental_features:
|
||||||
|
spaces_enabled: true
|
||||||
|
|
||||||
|
#
|
||||||
|
# synapse-admin tool
|
||||||
|
#
|
||||||
|
matrix_synapse_admin_enabled: true
|
||||||
|
matrix_synapse_admin_container_http_host_bind_port: 8985
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# VoIP / CoTURN config
|
||||||
|
#
|
||||||
|
# A shared secret (between Synapse and Coturn) used for authentication.
|
||||||
|
matrix_coturn_turn_static_auth_secret: "{{ vault_matrix_coturn_turn_static_auth_secret }}"
|
||||||
|
# Disable coturn, as we use own instance
|
||||||
|
matrix_coturn_enabled: false
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# dimension (integration manager) config
|
||||||
|
#
|
||||||
|
matrix_dimension_enabled: true
|
||||||
|
matrix_dimension_admins: "{{ vault_matrix_dimension_admins }}"
|
||||||
|
matrix_server_fqn_dimension: "dimension.matrix.{{ matrix_domain }}"
|
||||||
|
matrix_dimension_access_token: "{{ vault_matrix_dimension_access_token }}"
|
||||||
|
matrix_dimension_configuration_extension_yaml: |
|
||||||
|
telegram:
|
||||||
|
botToken: "{{ vault_matrix_dimension_configuration_telegram_bot_token }}"
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# mautrix-whatsapp config
|
||||||
|
#
|
||||||
|
matrix_mautrix_whatsapp_enabled: true
|
||||||
|
matrix_mautrix_whatsapp_container_http_monitoring_host_bind_port: 9402
|
||||||
|
matrix_mautrix_whatsapp_container_extra_arguments:
|
||||||
|
- "-p 127.0.0.1:{{ matrix_mautrix_whatsapp_container_http_monitoring_host_bind_port }}:{{ matrix_mautrix_whatsapp_container_http_monitoring_host_bind_port }}"
|
||||||
|
matrix_mautrix_whatsapp_configuration_extension_yaml: |
|
||||||
|
bridge:
|
||||||
|
displayname_template: "{% raw %}{{.Name}} ({{if .Notify}}{{.Notify}}{{else}}{{.Jid}}{{end}}) (via WhatsApp){% endraw %}"
|
||||||
|
max_connection_attempts: 5
|
||||||
|
connection_timeout: 30
|
||||||
|
contact_wait_delay: 5
|
||||||
|
private_chat_portal_meta: true
|
||||||
|
login_shared_secret: "{{ matrix_synapse_ext_password_provider_shared_secret_auth_shared_secret }}"
|
||||||
|
logging:
|
||||||
|
print_level: info
|
||||||
|
metrics:
|
||||||
|
enabled: true
|
||||||
|
listen: 0.0.0.0:{{ matrix_mautrix_whatsapp_container_http_monitoring_host_bind_port }}
|
||||||
|
whatsapp:
|
||||||
|
os_name: Linux mautrix-whatsapp
|
||||||
|
browser_name: Chrome
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# mautrix-telegram config
|
||||||
|
#
|
||||||
|
matrix_mautrix_telegram_enabled: true
|
||||||
|
matrix_mautrix_telegram_api_id: "{{ vault_matrix_mautrix_telegram_api_id }}"
|
||||||
|
matrix_mautrix_telegram_api_hash: "{{ vault_matrix_mautrix_telegram_api_hash }}"
|
||||||
|
matrix_mautrix_telegram_public_endpoint: '/bridge/telegram'
|
||||||
|
matrix_mautrix_telegram_container_http_monitoring_host_bind_port: 9401
|
||||||
|
matrix_mautrix_telegram_container_http_host_bind_port_public: 8980
|
||||||
|
matrix_mautrix_telegram_container_extra_arguments:
|
||||||
|
- "-p 127.0.0.1:{{ matrix_mautrix_telegram_container_http_monitoring_host_bind_port }}:{{ matrix_mautrix_telegram_container_http_monitoring_host_bind_port }}"
|
||||||
|
- "-p 127.0.0.1:{{ matrix_mautrix_telegram_container_http_host_bind_port_public }}:80"
|
||||||
|
matrix_mautrix_telegram_configuration_extension_yaml: |
|
||||||
|
bridge:
|
||||||
|
displayname_template: "{displayname} (via Telegram)"
|
||||||
|
parallel_file_transfer: false
|
||||||
|
inline_images: false
|
||||||
|
image_as_file_size: 20
|
||||||
|
delivery_receipts: true
|
||||||
|
login_shared_secret: "{{ matrix_synapse_ext_password_provider_shared_secret_auth_shared_secret }}"
|
||||||
|
animated_sticker:
|
||||||
|
target: webm
|
||||||
|
encryption:
|
||||||
|
allow: true
|
||||||
|
default: true
|
||||||
|
permissions:
|
||||||
|
"@transcaffeine:finallycoffee.eu": "admin"
|
||||||
|
logging:
|
||||||
|
root:
|
||||||
|
level: INFO
|
||||||
|
metrics:
|
||||||
|
enabled: true
|
||||||
|
listen_port: {{ matrix_mautrix_telegram_container_http_monitoring_host_bind_port }}
|
||||||
|
# permissions: "{{ vault_matrix_mautrix_telegram_permission_map | from_yaml }}"
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# mautrix-signal config
|
||||||
|
#
|
||||||
|
matrix_mautrix_signal_enabled: true
|
||||||
|
matrix_mautrix_signal_container_http_monitoring_host_bind_port: 9408
|
||||||
|
matrix_mautrix_signal_container_extra_arguments:
|
||||||
|
- "-p 127.0.0.1:{{ matrix_mautrix_signal_container_http_monitoring_host_bind_port }}:{{ matrix_mautrix_signal_container_http_monitoring_host_bind_port }}"
|
||||||
|
matrix_mautrix_signal_configuration_extension_yaml: |
|
||||||
|
bridge:
|
||||||
|
displayname_template: "{displayname} (via Signal)"
|
||||||
|
community_id: "+signal:finallycoffee.eu"
|
||||||
|
encryption:
|
||||||
|
allow: true
|
||||||
|
default: true
|
||||||
|
key_sharing:
|
||||||
|
allow: true
|
||||||
|
require_verification: false
|
||||||
|
delivery_receipts: true
|
||||||
|
logging:
|
||||||
|
root:
|
||||||
|
level: INFO
|
||||||
|
metrics:
|
||||||
|
enabled: true
|
||||||
|
listen_port: {{ matrix_mautrix_signal_container_http_monitoring_host_bind_port }}
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# mx-puppet-instagram configuration
|
||||||
|
#
|
||||||
|
matrix_mx_puppet_instagram_enabled: true
|
||||||
|
matrix_mx_puppet_instagram_container_http_monitoring_host_bind_port: 9403
|
||||||
|
matrix_mx_puppet_instagram_container_extra_arguments:
|
||||||
|
- "-p 127.0.0.1:{{ matrix_mx_puppet_instagram_container_http_monitoring_host_bind_port }}:{{ matrix_mx_puppet_instagram_container_http_monitoring_host_bind_port }}"
|
||||||
|
matrix_mx_puppet_instagram_configuration_extension_yaml: |
|
||||||
|
bridge:
|
||||||
|
enableGroupSync: true
|
||||||
|
avatarUrl: mxc://finallycoffee.eu/acmiSAinuHDOULofFFeolTvr
|
||||||
|
metrics:
|
||||||
|
enabled: true
|
||||||
|
port: {{ matrix_mx_puppet_instagram_container_http_monitoring_host_bind_port }}
|
||||||
|
path: /metrics
|
||||||
|
presence:
|
||||||
|
enabled: true
|
||||||
|
interval: 3000
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# mx-puppet-skype configuration
|
||||||
|
#
|
||||||
|
matrix_mx_puppet_skype_enabled: true
|
||||||
|
matrix_mx_puppet_skype_container_http_monitoring_host_bind_port: 9405
|
||||||
|
matrix_mx_puppet_skype_container_extra_arguments:
|
||||||
|
- "-p 127.0.0.1:{{ matrix_mx_puppet_skype_container_http_monitoring_host_bind_port }}:{{ matrix_mx_puppet_skype_container_http_monitoring_host_bind_port }}"
|
||||||
|
matrix_mx_puppet_skype_configuration_extension_yaml: |
|
||||||
|
bridge:
|
||||||
|
enableGroupSync: true
|
||||||
|
avatarUrl: mxc://finallycoffee.eu/jjXDuFqtpFOBOnywoHgzTuYt
|
||||||
|
metrics:
|
||||||
|
enabled: true
|
||||||
|
port: {{ matrix_mx_puppet_skype_container_http_monitoring_host_bind_port }}
|
||||||
|
path: /metrics
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# mx-puppet-discord configuration
|
||||||
|
#
|
||||||
|
matrix_mx_puppet_discord_enabled: true
|
||||||
|
matrix_mx_puppet_discord_client_id: "{{ vault_matrix_mx_puppet_discord_client_id }}"
|
||||||
|
matrix_mx_puppet_discord_client_secret: "{{ vault_matrix_mx_puppet_discord_client_secret }}"
|
||||||
|
matrix_mx_puppet_discord_container_http_monitoring_host_bind_port: 9404
|
||||||
|
matrix_mx_puppet_discord_container_extra_arguments:
|
||||||
|
- "-p 127.0.0.1:{{ matrix_mx_puppet_discord_container_http_monitoring_host_bind_port }}:{{ matrix_mx_puppet_discord_container_http_monitoring_host_bind_port }}"
|
||||||
|
matrix_mx_puppet_discord_configuration_extension_yaml: |
|
||||||
|
bridge:
|
||||||
|
enableGroupSync: true
|
||||||
|
avatarUrl: mxc://finallycoffee.eu/BxcAAhjXmglMbtthStEHtCzd
|
||||||
|
metrics:
|
||||||
|
enabled: true
|
||||||
|
port: {{ matrix_mx_puppet_discord_container_http_monitoring_host_bind_port }}
|
||||||
|
path: /metrics
|
||||||
|
limits:
|
||||||
|
maxAutojoinUsers: 500
|
||||||
|
roomUserAutojoinDelay: 50
|
||||||
|
presence:
|
||||||
|
enabled: true
|
||||||
|
interval: 3000
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# mx-puppet-slack configuration
|
||||||
|
#
|
||||||
|
matrix_mx_puppet_slack_enabled: true
|
||||||
|
matrix_mx_puppet_slack_client_id: "{{ vault_matrix_mx_puppet_slack_client_id }}"
|
||||||
|
matrix_mx_puppet_slack_client_secret: "{{ vault_matrix_mx_puppet_slack_client_secret }}"
|
||||||
|
matrix_mx_puppet_slack_redirect_path: '/bridge/slack/oauth'
|
||||||
|
matrix_mx_puppet_slack_container_http_auth_host_bind_port: 8981
|
||||||
|
matrix_mx_puppet_slack_container_http_monitoring_host_bind_port: 9406
|
||||||
|
matrix_mx_puppet_slack_container_extra_arguments:
|
||||||
|
- "-p 127.0.0.1:{{ matrix_mx_puppet_slack_container_http_monitoring_host_bind_port }}:{{ matrix_mx_puppet_slack_container_http_monitoring_host_bind_port }}"
|
||||||
|
- "-p 127.0.0.1:{{ matrix_mx_puppet_slack_container_http_auth_host_bind_port }}:8008"
|
||||||
|
matrix_mx_puppet_slack_configuration_extension_yaml: |
|
||||||
|
bridge:
|
||||||
|
enableGroupSync: true
|
||||||
|
metrics:
|
||||||
|
enabled: true
|
||||||
|
port: {{ matrix_mx_puppet_slack_container_http_monitoring_host_bind_port }}
|
||||||
|
path: /metrics
|
||||||
|
limits:
|
||||||
|
maxAutojoinUsers: 500
|
||||||
|
roomUserAutojoinDelay: 50
|
||||||
|
presence:
|
||||||
|
enabled: true
|
||||||
|
interval: 3000
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# Element web configuration
|
||||||
|
#
|
||||||
|
# Branding config
|
||||||
|
matrix_client_element_brand: "Chat"
|
||||||
|
matrix_client_element_default_theme: "dark"
|
||||||
|
matrix_client_element_themes_enabled: true
|
||||||
|
matrix_client_element_welcome_headline: "Welcome to chat.finallycoffee.eu"
|
||||||
|
matrix_client_element_welcome_text: |
|
||||||
|
Decentralised, encrypted chat & collaboration,<br />
|
||||||
|
hosted on finallycoffee.eu, powered by element.io &
|
||||||
|
<a href="https://matrix.org" target="_blank" rel="noreferrer noopener">
|
||||||
|
<img width="79" height="34" alt="[matrix]" style="padding-left: 1px;vertical-align: middle" src="welcome/images/matrix.svg" />
|
||||||
|
</a>
|
||||||
|
matrix_client_element_welcome_logo: "welcome/images/logo.png"
|
||||||
|
matrix_client_element_welcome_logo_link: "https://{{ matrix_domain }}"
|
||||||
|
matrix_client_element_branding_authHeaderLogoUrl: "welcome/images/logo.png"
|
||||||
|
matrix_client_element_branding_welcomeBackgroundUrl: "welcome/images/background.jpg"
|
||||||
|
matrix_client_element_container_extra_arguments:
|
||||||
|
- "-v {{ matrix_client_element_data_path }}/background.jpg:/app/{{ matrix_client_element_branding_welcomeBackgroundUrl }}:ro"
|
||||||
|
- "-v {{ matrix_client_element_data_path }}/logo.png:/app/{{ matrix_client_element_branding_authHeaderLogoUrl }}:ro"
|
||||||
|
# Integration and capabilites config
|
||||||
|
matrix_client_element_integrations_ui_url: "https://{{ matrix_server_fqn_dimension }}/element"
|
||||||
|
matrix_client_element_integrations_rest_url: "https://{{ matrix_server_fqn_dimension }}/api/v1/scalar"
|
||||||
|
matrix_client_element_integrations_widgets_urls:
|
||||||
|
- "https://{{ matrix_server_fqn_dimension }}/widgets"
|
||||||
|
- "https://scalar.vector.im/api"
|
||||||
|
matrix_client_element_integrations_jitsi_widget_url: "https://{{ matrix_server_fqn_dimension }}/widgets/jitsi"
|
||||||
|
matrix_client_element_disable_custom_urls: false
|
||||||
|
matrix_client_element_roomdir_servers:
|
||||||
|
- "matrix.org"
|
||||||
|
- "finallycoffee.eu"
|
||||||
|
- "entropia.de"
|
||||||
|
matrix_client_element_enable_presence_by_hs_url:
|
||||||
|
https://matrix.org: false
|
||||||
|
|
||||||
|
|
||||||
|
# Matrix ma1sd extended configuration
|
||||||
|
matrix_ma1sd_configuration_extension_yaml: |
|
||||||
|
hashing:
|
||||||
|
enabled: true
|
||||||
|
pepperLength: 20
|
||||||
|
rotationPolicy: per_requests
|
||||||
|
requests: 10
|
||||||
|
hashStorageType: sql
|
||||||
|
algorithms:
|
||||||
|
- none
|
||||||
|
- sha256
|
||||||
|
|
||||||
|
|
||||||
|
# Matrix mail notification relay setup
|
||||||
|
matrix_mailer_enabled: true
|
||||||
|
matrix_mailer_sender_address: "Matrix on finallycoffee.eu <system-matrix@{{ matrix_domain }}>"
|
||||||
|
matrix_mailer_relay_use: true
|
||||||
|
matrix_mailer_relay_host_name: "{{ vault_matrix_mailer_relay_host_name }}"
|
||||||
|
matrix_mailer_relay_host_port: 587
|
||||||
|
matrix_mailer_relay_auth: true
|
||||||
|
matrix_mailer_relay_auth_username: "{{ vault_matrix_mailer_relay_auth_username }}"
|
||||||
|
matrix_mailer_relay_auth_password: "{{ vault_matrix_mailer_relay_auth_password }}"
|
100
inventory/host_vars/matrix.finallycoffee.eu/vault.yml
Normal file
100
inventory/host_vars/matrix.finallycoffee.eu/vault.yml
Normal file
@ -0,0 +1,100 @@
|
|||||||
|
$ANSIBLE_VAULT;1.1;AES256
|
||||||
|
64343261653838626666353837393238353033353632393763363634303466613033376235386235
|
||||||
|
6333386536323034643139656232636133386463393264300a663333333237656337343562366336
|
||||||
|
66663064393930656566396636333430373233373362346339383866623066316133323366663961
|
||||||
|
3732666162363238300a636230346163656334393063343030333064393962663431326461653239
|
||||||
|
36653030393234623335313335383832646463663835653035303765633064666435373464653336
|
||||||
|
31323433373734633531353562333065623039623633633163376235353737343935623133326663
|
||||||
|
65333761383130336165356439623066363964313033666433316231663533393532333738333430
|
||||||
|
36633463343335366364343565353862363531376539626237613263303331323631333366363830
|
||||||
|
33613937346531323139343166613839366233383663363732353561643238383362353964373135
|
||||||
|
61633430353037316266343962376238383238366562323764373135646365383030626130383433
|
||||||
|
32313263663165656366313633653431663332636532656465623465353062643934343738633434
|
||||||
|
63346333326331633830363663666631326466353138646233383235313532383864633233613134
|
||||||
|
39363734353165653065343938643861646630376334303832613163663265373839323765396234
|
||||||
|
38633336393739666565346565343865346233373639363530383533386533616337373033613865
|
||||||
|
66353434653262663263326237626265636430646630313866383532376264383933343933326264
|
||||||
|
65316337323863343935306138343462336666313332396439656234613831356262663630663038
|
||||||
|
31376539653638333263333933633134303734656662343039396563343636366433396130653830
|
||||||
|
33326539636432646438613236356430343435623539333062666630373265306635343233646333
|
||||||
|
39653934323738303239643834663463396165656235393437396635623131316532333465316231
|
||||||
|
65373130393463383932383837383830656637653963666638653665356437303239376262613062
|
||||||
|
34613830613164323365636461303035616136636330323531383164376334363862383762366665
|
||||||
|
62643839333662373461363038326436616639326264633735316139346536373839666236653634
|
||||||
|
30376536386137636336363562376339393261373739333162373461656364353139626339346637
|
||||||
|
30366431336534663037653438376330346238636562383932653561306134626566333861333630
|
||||||
|
39633536653233393161333136316564623631313839633461333438633166363064303238663464
|
||||||
|
65353338353464313635333934623833303965393462373530303666643537336662376266613434
|
||||||
|
37356664616539323631373535316434383361323935376638666437646538316537613030653231
|
||||||
|
62636263663935646466383663306535626465633239366562373038356366366331333537333663
|
||||||
|
64363130386535306362646533393161643737366662313631623132356465636565313530353363
|
||||||
|
35366165383837326564623363636632616331393834313130303937303664353436363266323033
|
||||||
|
61373532383962393937666261626263666631346235646237656337363831633734623733633835
|
||||||
|
39613736373031633263396530626566303665343039663866333632636565633034376366356635
|
||||||
|
35383633336465636331306232353434653739653339396437363163313630393035366665383263
|
||||||
|
34353238656563306366336466376363316430636666353965356535653334343630633532313034
|
||||||
|
64626436643030656335616337653564653331326463383461643739333163613361333133633639
|
||||||
|
66656137313937356134646362623536363065633564633166343766356436313130373663663334
|
||||||
|
63626138356562303761323336646332383761646663383032386261623936633661653735343637
|
||||||
|
35326137343532333635353436376665326633633135656537623631326336353138346136636239
|
||||||
|
37396135326362613039663136333964626237353562343966383764613231363061333534316233
|
||||||
|
38636130313261643061613138656235396530656366313132346362383430333734663866383666
|
||||||
|
61633631353830643565313437306664636262666135353133656531623563616335643737373438
|
||||||
|
63633235363566616466663262333466383939373336383139643362376365623763386137666332
|
||||||
|
39353363636437393236303764343337633233386236303563636634353836363537383632306434
|
||||||
|
33653632373064646361616364323133343138363437373436636232373261663639616330666465
|
||||||
|
37333130393435613134366437396361363830656137663963643132303334633331633661363061
|
||||||
|
38356439666161643431356532353334383539353566386333666461663562613231383331623063
|
||||||
|
33336435636239343663663937353864306363363264663033303539616434333436353134383034
|
||||||
|
64663533366134306462366565333236383235373233656132396538663437616333343534333166
|
||||||
|
66646566623734636532666230326530633538656639353262343665316235386534376534386634
|
||||||
|
65663032303930353661363162373533363762353237393030346238306532326264303636383264
|
||||||
|
63363063326265396166313533663362346539333532386665316466386131623161313738623239
|
||||||
|
66386236656561396539356634636234393436323239396330366237333539343761393431336138
|
||||||
|
66396230656435356365356530343132373861376336346532653063666331343366393761373131
|
||||||
|
66313864373362326139316461666232386132306535616561663566623963353034313961666266
|
||||||
|
34373534363834626334386139653532656564333863323363343165643538336430386434613235
|
||||||
|
64386564643564636530313565326433623365303738386433323463396437653066636134313564
|
||||||
|
33383035393436393163373864353331376163653137316136376564643066636335313735396664
|
||||||
|
33623735353438643237333734353766363863313763653737633135353332363066336232363131
|
||||||
|
33333532653737633033666336326331376561636330643935323636626562303439346338633135
|
||||||
|
33663035366461336339666665663835373235633338613664636439393837303932643363643830
|
||||||
|
63333862643430383235663836653161376637373265646463313538386531666362376532663738
|
||||||
|
62333536383537613562336235666431393164616263303863323834343735326133646131303063
|
||||||
|
62623836313730363832313764363562306666383337396561633865336561396632303539333166
|
||||||
|
35623063336534653531303134653630666264333133393864626665623564313466363731316339
|
||||||
|
36646666653062326665346332373963376439396538396663656130616333316533623331346461
|
||||||
|
39643862356663316338333662646464353233356635303931626366323831303136366462366133
|
||||||
|
34303234343064393265303866636137646461336530653733623264383261653864633332346435
|
||||||
|
62383065353662303564633239326664356364366365626466666266326466333834316437383134
|
||||||
|
35383261373437643261623533623533326335393932356632653634326432376235393038333464
|
||||||
|
33626361366565316533663537343237316563343730363632663639623930313963316665663965
|
||||||
|
33386435663462626435383733383336343064333935356364623436626632356535333430343262
|
||||||
|
62363136353562633631613965353062363231343037626166363035376530646537646136363730
|
||||||
|
35303530343361616230383662333139333533333138613834323437636238656538656436623433
|
||||||
|
38353363336665346637643631663934633061626532376330633731316565336166313936393533
|
||||||
|
35323535376539633937376532333536323234376632306362633438626565376234353235353836
|
||||||
|
37663735366165393963313536356437653361306232313736356164656635616333306332356637
|
||||||
|
39353465633536313539366264646364343231653466346165313863623365333465623336376635
|
||||||
|
37396663333638356565306439636365653438623935363361356464316663613465303933346537
|
||||||
|
61303863323631343264613665323866363935383265323562326364346364343133393965333135
|
||||||
|
33306434646533333662613930666337646330303439333938326433376161613836663237303534
|
||||||
|
63636139636338656664333034356635653330666362633563366663616661303266326135643036
|
||||||
|
34383939613035323331366261356531343961303239626365383332313633393561623963643134
|
||||||
|
30353239356234336635616663313830396133643035663838653837613262616364623637616237
|
||||||
|
37363662663466396330323830343963366262643339316162643164353430663763613634346233
|
||||||
|
62303539336433313066346339363163336236373334613938613061613038613466636632336335
|
||||||
|
35326133373061323164623436623338316466396261393630623466313164393736353566356237
|
||||||
|
34396530383361613464643461313336663331643438313136353039386263633134616534666464
|
||||||
|
33373536326637316635326461656130383333613832386662643431666435663565343565616266
|
||||||
|
35303738656362663266653735373833613765356366626436336437326665396635636335616566
|
||||||
|
32663733396432656430356335383262613133623066636238623166613839393833616436653936
|
||||||
|
34306536343664643732356262663435623834313732373564613337373765373130653734386632
|
||||||
|
35623038623639346564393466393463613238363231663965633037353337353332663464336539
|
||||||
|
33616131353734663463336436303866306334336339316364313962346430383338306161636462
|
||||||
|
64303064313135346236346434316333346434303764356237636530663239633631383561393537
|
||||||
|
66383836326634666362613661353533363432303437663235393336396331356465633031326430
|
||||||
|
35333263633731626564326430613937343136633562386432396537363663653438333333366135
|
||||||
|
33333339376165303736643661343535356561353938346131653662363966643839653262363537
|
||||||
|
38373331353539313463363236383633326138366534313064303739626337343962653830653663
|
||||||
|
626263633730663932376165333438323835
|
22
inventory/hosts
Normal file
22
inventory/hosts
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
$ANSIBLE_VAULT;1.1;AES256
|
||||||
|
31336566376336626265653165306635633033376662656164383037383834653239656136333734
|
||||||
|
3833666339393037323035343565343235396163636166370a643933333933386133366564396465
|
||||||
|
30393637613164356564393337633361653432333232383664303739363736633435363764343530
|
||||||
|
3532313739363963660a343434356534316230623133636366386334323465376139363162616238
|
||||||
|
39396638366262313531653635326361616537396338363533303961623165343931373939306239
|
||||||
|
31336632643166633662653765333231393461643933306464303165633037343061323636313034
|
||||||
|
34376631656563646665373566633431366638383863666130323264316337663237343135306236
|
||||||
|
66323536346164663239343139623430303230333466633437643337343930363530653964626163
|
||||||
|
38336363633730393136333637383631636266396636646533356262376630646139303636666538
|
||||||
|
32366437353163663865623234643061313639646162643965393535353938313133326237313265
|
||||||
|
66646163333535396539646461356334633532313530653834623263386265383765356130333466
|
||||||
|
30373531306137393935363030313739666536363138363962646565306439393239303030643162
|
||||||
|
33333166663430393866666439653532623034396130313066383035396535646633366237303264
|
||||||
|
36356665366461323664373038366364623937386233313039323837666333653764616462333365
|
||||||
|
31326264633236373937313537633961633164323138356135633765663639323537656263633766
|
||||||
|
38653836323263386333376131333330326237393666363064326463663961633839393039323835
|
||||||
|
61306265333232623037356465393133323733363634646364336261326333366239346565366338
|
||||||
|
61646132333033373866623739343830336164316461646366666237313565626639323537623732
|
||||||
|
38323830656136323137323530343764666433633432366136643538323832653130376363653135
|
||||||
|
64376261386635636533353961613335663962306337353866616464613636303735336230623962
|
||||||
|
3336
|
@ -11,7 +11,6 @@ echo "# Install it before using this script, or simply create your own passwords
|
|||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
JICOFO_COMPONENT_SECRET=$(generatePassword)
|
|
||||||
JICOFO_AUTH_PASSWORD=$(generatePassword)
|
JICOFO_AUTH_PASSWORD=$(generatePassword)
|
||||||
JVB_AUTH_PASSWORD=$(generatePassword)
|
JVB_AUTH_PASSWORD=$(generatePassword)
|
||||||
JIBRI_RECORDER_PASSWORD=$(generatePassword)
|
JIBRI_RECORDER_PASSWORD=$(generatePassword)
|
||||||
@ -19,7 +18,6 @@ JIBRI_XMPP_PASSWORD=$(generatePassword)
|
|||||||
|
|
||||||
echo "# Paste these variables into your inventory/host_vars/matrix.DOMAIN/vars.yml file:"
|
echo "# Paste these variables into your inventory/host_vars/matrix.DOMAIN/vars.yml file:"
|
||||||
echo ""
|
echo ""
|
||||||
echo "matrix_jitsi_jicofo_component_secret: "$JICOFO_COMPONENT_SECRET
|
|
||||||
echo "matrix_jitsi_jicofo_auth_password: "$JICOFO_AUTH_PASSWORD
|
echo "matrix_jitsi_jicofo_auth_password: "$JICOFO_AUTH_PASSWORD
|
||||||
echo "matrix_jitsi_jvb_auth_password: "$JVB_AUTH_PASSWORD
|
echo "matrix_jitsi_jvb_auth_password: "$JVB_AUTH_PASSWORD
|
||||||
echo "matrix_jitsi_jibri_recorder_password: "$JIBRI_RECORDER_PASSWORD
|
echo "matrix_jitsi_jibri_recorder_password: "$JIBRI_RECORDER_PASSWORD
|
||||||
|
@ -16,4 +16,3 @@
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -128,18 +128,13 @@
|
|||||||
validate_certs: yes
|
validate_certs: yes
|
||||||
when: customise_base_domain_website is undefined
|
when: customise_base_domain_website is undefined
|
||||||
|
|
||||||
- name: Ensure group "sftp" exists
|
|
||||||
group:
|
|
||||||
name: sftp
|
|
||||||
state: present
|
|
||||||
|
|
||||||
- name: If user doesn't define a sftp_password, create a disabled 'sftp' account
|
- name: If user doesn't define a sftp_password, create a disabled 'sftp' account
|
||||||
user:
|
user:
|
||||||
name: sftp
|
name: sftp
|
||||||
comment: SFTP user to set custom web files and access servers export
|
comment: SFTP user to set custom web files and access servers export
|
||||||
shell: /bin/false
|
shell: /bin/false
|
||||||
home: /home/sftp
|
home: /home/sftp
|
||||||
group: sftp
|
group: matrix
|
||||||
password: '*'
|
password: '*'
|
||||||
update_password: always
|
update_password: always
|
||||||
when: sftp_password|length == 0
|
when: sftp_password|length == 0
|
||||||
@ -150,15 +145,20 @@
|
|||||||
comment: SFTP user to set custom web files and access servers export
|
comment: SFTP user to set custom web files and access servers export
|
||||||
shell: /bin/false
|
shell: /bin/false
|
||||||
home: /home/sftp
|
home: /home/sftp
|
||||||
group: sftp
|
group: matrix
|
||||||
password: "{{ sftp_password | password_hash('sha512') }}"
|
password: "{{ sftp_password | password_hash('sha512') }}"
|
||||||
update_password: always
|
update_password: always
|
||||||
when: sftp_password|length > 0
|
when: sftp_password|length > 0
|
||||||
|
|
||||||
|
- name: Ensure group "sftp" exists
|
||||||
|
group:
|
||||||
|
name: sftp
|
||||||
|
state: present
|
||||||
|
|
||||||
- name: adding existing user 'sftp' to group matrix
|
- name: adding existing user 'sftp' to group matrix
|
||||||
user:
|
user:
|
||||||
name: sftp
|
name: sftp
|
||||||
groups: matrix
|
groups: sftp
|
||||||
append: yes
|
append: yes
|
||||||
when: customise_base_domain_website is defined
|
when: customise_base_domain_website is defined
|
||||||
|
|
||||||
@ -214,14 +214,14 @@
|
|||||||
group: sftp
|
group: sftp
|
||||||
mode: '0644'
|
mode: '0644'
|
||||||
when: (sftp_public_key | length > 0) and (sftp_auth_method == "SSH Key")
|
when: (sftp_public_key | length > 0) and (sftp_auth_method == "SSH Key")
|
||||||
|
|
||||||
- name: Alter SSH Subsystem State 1
|
- name: Remove any existing Subsystem lines
|
||||||
lineinfile:
|
lineinfile:
|
||||||
path: /etc/ssh/sshd_config
|
path: /etc/ssh/sshd_config
|
||||||
line: "Subsystem sftp /usr/lib/openssh/sftp-server"
|
|
||||||
state: absent
|
state: absent
|
||||||
|
regexp: '^Subsystem'
|
||||||
|
|
||||||
- name: Alter SSH Subsystem State 2
|
- name: Set SSH Subsystem State
|
||||||
lineinfile:
|
lineinfile:
|
||||||
path: /etc/ssh/sshd_config
|
path: /etc/ssh/sshd_config
|
||||||
insertafter: "^# override default of no subsystems"
|
insertafter: "^# override default of no subsystems"
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
- name: Purge local media to specific date
|
- name: Purge local media to specific date
|
||||||
shell: |
|
shell: |
|
||||||
curl -X POST --header "Authorization: Bearer {{ janitors_token.stdout[1:-1] }}" '{{ synapse_container_ip.stdout }}:8008/_synapse/admin/v1/media/matrix.{{ matrix_domain }}/delete?before_ts={{ epoche_time.stdout }}'
|
curl -X POST --header "Authorization: Bearer {{ janitors_token.stdout[1:-1] }}" '{{ synapse_container_ip.stdout }}:8008/_synapse/admin/v1/media/matrix.{{ matrix_domain }}/delete?before_ts={{ epoche_time.stdout }}000'
|
||||||
register: purge_command
|
register: purge_command
|
||||||
|
|
||||||
- name: Print output of purge command
|
- name: Print output of purge command
|
||||||
|
@ -17,15 +17,16 @@
|
|||||||
- jq
|
- jq
|
||||||
state: present
|
state: present
|
||||||
|
|
||||||
- name: Collect access token for janitor user
|
|
||||||
shell: |
|
|
||||||
curl -XPOST -d '{"type":"m.login.password", "user":"janitor", "password":"{{ matrix_awx_janitor_user_password }}"}' "https://matrix.{{ matrix_domain }}/_matrix/client/r0/login" | jq '.access_token'
|
|
||||||
register: janitors_token
|
|
||||||
|
|
||||||
- name: Collect the internal IP of the matrix-synapse container
|
- name: Collect the internal IP of the matrix-synapse container
|
||||||
shell: "/usr/bin/docker inspect --format '{''{range.NetworkSettings.Networks}''}{''{.IPAddress}''}{''{end}''}' matrix-synapse"
|
shell: "/usr/bin/docker inspect --format '{''{range.NetworkSettings.Networks}''}{''{.IPAddress}''}{''{end}''}' matrix-synapse"
|
||||||
register: synapse_container_ip
|
register: synapse_container_ip
|
||||||
|
|
||||||
|
- name: Collect access token for janitor user
|
||||||
|
shell: |
|
||||||
|
curl -XPOST -d '{"type":"m.login.password", "user":"janitor", "password":"{{ matrix_awx_janitor_user_password }}"}' "{{ synapse_container_ip.stdout }}:8008/_matrix/client/r0/login" | jq '.access_token'
|
||||||
|
register: janitors_token
|
||||||
|
no_log: True
|
||||||
|
|
||||||
- name: Generate list of dates to purge to
|
- name: Generate list of dates to purge to
|
||||||
delegate_to: 127.0.0.1
|
delegate_to: 127.0.0.1
|
||||||
shell: "dateseq {{ matrix_purge_from_date }} {{ matrix_purge_to_date }}"
|
shell: "dateseq {{ matrix_purge_from_date }} {{ matrix_purge_to_date }}"
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
- name: Purge remote media to specific date
|
- name: Purge remote media to specific date
|
||||||
shell: |
|
shell: |
|
||||||
curl -X POST --header "Authorization: Bearer {{ janitors_token.stdout[1:-1] }}" '{{ synapse_container_ip.stdout }}:8008/_synapse/admin/v1/purge_media_cache?before_ts={{ epoche_time.stdout }}'
|
curl -X POST --header "Authorization: Bearer {{ janitors_token.stdout[1:-1] }}" '{{ synapse_container_ip.stdout }}:8008/_synapse/admin/v1/purge_media_cache?before_ts={{ epoche_time.stdout }}000'
|
||||||
register: purge_command
|
register: purge_command
|
||||||
|
|
||||||
- name: Print output of purge command
|
- name: Print output of purge command
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
|
|
||||||
- name: Limit max upload size to 100MB part 1
|
- name: Limit max upload size to 200MB part 1
|
||||||
set_fact:
|
set_fact:
|
||||||
matrix_synapse_max_upload_size_mb: "100"
|
matrix_synapse_max_upload_size_mb: "200"
|
||||||
when: matrix_synapse_max_upload_size_mb_raw|int >= 100
|
when: matrix_synapse_max_upload_size_mb_raw|int >= 200
|
||||||
|
|
||||||
- name: Limit max upload size to 100MB part 2
|
- name: Limit max upload size to 200MB part 2
|
||||||
set_fact:
|
set_fact:
|
||||||
matrix_synapse_max_upload_size_mb: "{{ matrix_synapse_max_upload_size_mb_raw }}"
|
matrix_synapse_max_upload_size_mb: "{{ matrix_synapse_max_upload_size_mb_raw }}"
|
||||||
when: matrix_synapse_max_upload_size_mb_raw|int < 100
|
when: matrix_synapse_max_upload_size_mb_raw|int < 200
|
||||||
|
|
||||||
- name: Record Synapse variables locally on AWX
|
- name: Record Synapse variables locally on AWX
|
||||||
delegate_to: 127.0.0.1
|
delegate_to: 127.0.0.1
|
||||||
@ -66,7 +66,7 @@
|
|||||||
delegate_to: 127.0.0.1
|
delegate_to: 127.0.0.1
|
||||||
lineinfile:
|
lineinfile:
|
||||||
path: '{{ awx_cached_matrix_vars }}'
|
path: '{{ awx_cached_matrix_vars }}'
|
||||||
regexp: "{{ item }}:"
|
regexp: "{{ item }}"
|
||||||
line: "{{ item }}"
|
line: "{{ item }}"
|
||||||
insertbefore: '# Synapse Extension End'
|
insertbefore: '# Synapse Extension End'
|
||||||
with_items:
|
with_items:
|
||||||
@ -78,7 +78,7 @@
|
|||||||
delegate_to: 127.0.0.1
|
delegate_to: 127.0.0.1
|
||||||
lineinfile:
|
lineinfile:
|
||||||
path: '{{ awx_cached_matrix_vars }}'
|
path: '{{ awx_cached_matrix_vars }}'
|
||||||
regexp: "{{ item }}:"
|
regexp: "{{ item }}"
|
||||||
line: "{{ item }}"
|
line: "{{ item }}"
|
||||||
insertbefore: '# Synapse Extension End'
|
insertbefore: '# Synapse Extension End'
|
||||||
state: absent
|
state: absent
|
||||||
|
@ -11,6 +11,9 @@ matrix_domain: ~
|
|||||||
# This and the Element FQN (see below) are expected to be on the same server.
|
# This and the Element FQN (see below) are expected to be on the same server.
|
||||||
matrix_server_fqn_matrix: "matrix.{{ matrix_domain }}"
|
matrix_server_fqn_matrix: "matrix.{{ matrix_domain }}"
|
||||||
|
|
||||||
|
# This is where you access federation API.
|
||||||
|
matrix_server_fqn_matrix_federation: '{{ matrix_server_fqn_matrix }}'
|
||||||
|
|
||||||
# This is where you access the Element web UI from (if enabled via matrix_client_element_enabled; enabled by default).
|
# This is where you access the Element web UI from (if enabled via matrix_client_element_enabled; enabled by default).
|
||||||
# This and the Matrix FQN (see above) are expected to be on the same server.
|
# This and the Matrix FQN (see above) are expected to be on the same server.
|
||||||
matrix_server_fqn_element: "element.{{ matrix_domain }}"
|
matrix_server_fqn_element: "element.{{ matrix_domain }}"
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
#jinja2: lstrip_blocks: "True"
|
#jinja2: lstrip_blocks: "True"
|
||||||
{
|
{
|
||||||
"m.server": "{{ matrix_server_fqn_matrix }}:{{ matrix_federation_public_port }}"
|
"m.server": "{{ matrix_server_fqn_matrix_federation }}:{{ matrix_federation_public_port }}"
|
||||||
}
|
}
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# See: https://github.com/anoadragon453/matrix-reminder-bot
|
# See: https://github.com/anoadragon453/matrix-reminder-bot
|
||||||
|
|
||||||
matrix_bot_matrix_reminder_bot_enabled: true
|
matrix_bot_matrix_reminder_bot_enabled: true
|
||||||
matrix_bot_matrix_reminder_bot_version: release-v0.2.0
|
matrix_bot_matrix_reminder_bot_version: release-v0.2.1
|
||||||
matrix_bot_matrix_reminder_bot_docker_image: "{{ matrix_container_global_registry_prefix }}anoa/matrix-reminder-bot:{{ matrix_bot_matrix_reminder_bot_version }}"
|
matrix_bot_matrix_reminder_bot_docker_image: "{{ matrix_container_global_registry_prefix }}anoa/matrix-reminder-bot:{{ matrix_bot_matrix_reminder_bot_version }}"
|
||||||
matrix_bot_matrix_reminder_bot_docker_image_force_pull: "{{ matrix_bot_matrix_reminder_bot_docker_image.endswith(':latest') }}"
|
matrix_bot_matrix_reminder_bot_docker_image_force_pull: "{{ matrix_bot_matrix_reminder_bot_docker_image.endswith(':latest') }}"
|
||||||
|
|
||||||
|
@ -2,13 +2,21 @@
|
|||||||
# See: https://github.com/matrix-org/mjolnir
|
# See: https://github.com/matrix-org/mjolnir
|
||||||
|
|
||||||
matrix_bot_mjolnir_enabled: true
|
matrix_bot_mjolnir_enabled: true
|
||||||
matrix_bot_mjolnir_version: "v0.1.17"
|
|
||||||
matrix_bot_mjolnir_docker_image: "{{ matrix_container_global_registry_prefix }}matrixdotorg/mjolnir:{{ matrix_bot_mjolnir_version }}"
|
matrix_bot_mjolnir_version: "v0.1.18"
|
||||||
|
|
||||||
|
matrix_bot_mjolnir_container_image_self_build: false
|
||||||
|
matrix_bot_mjolnir_container_image_self_build_repo: "https://github.com/matrix-org/mjolnir.git"
|
||||||
|
|
||||||
|
matrix_bot_mjolnir_docker_image: "{{ matrix_bot_mjolnir_docker_image_name_prefix }}matrixdotorg/mjolnir:{{ matrix_bot_mjolnir_version }}"
|
||||||
|
matrix_bot_mjolnir_docker_image_name_prefix: "{{ 'localhost/' if matrix_bot_mjolnir_container_image_self_build else matrix_container_global_registry_prefix }}"
|
||||||
|
|
||||||
matrix_bot_mjolnir_docker_image_force_pull: "{{ matrix_bot_mjolnir_docker_image.endswith(':latest') }}"
|
matrix_bot_mjolnir_docker_image_force_pull: "{{ matrix_bot_mjolnir_docker_image.endswith(':latest') }}"
|
||||||
|
|
||||||
matrix_bot_mjolnir_base_path: "{{ matrix_base_data_path }}/mjolnir"
|
matrix_bot_mjolnir_base_path: "{{ matrix_base_data_path }}/mjolnir"
|
||||||
matrix_bot_mjolnir_config_path: "{{ matrix_bot_mjolnir_base_path }}/config"
|
matrix_bot_mjolnir_config_path: "{{ matrix_bot_mjolnir_base_path }}/config"
|
||||||
matrix_bot_mjolnir_data_path: "{{ matrix_bot_mjolnir_base_path }}/data"
|
matrix_bot_mjolnir_data_path: "{{ matrix_bot_mjolnir_base_path }}/data"
|
||||||
|
matrix_bot_mjolnir_docker_src_files_path: "{{ matrix_bot_mjolnir_base_path }}/docker-src"
|
||||||
|
|
||||||
# A list of extra arguments to pass to the container
|
# A list of extra arguments to pass to the container
|
||||||
matrix_bot_mjolnir_container_extra_arguments: []
|
matrix_bot_mjolnir_container_extra_arguments: []
|
||||||
|
@ -1,3 +1,10 @@
|
|||||||
|
# See https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/1070
|
||||||
|
# and https://github.com/spantaleev/matrix-docker-ansible-deploy/commit/1ab507349c752042d26def3e95884f6df8886b74#commitcomment-51108407
|
||||||
|
- name: Fail if trying to self-build on Ansible < 2.8
|
||||||
|
fail:
|
||||||
|
msg: "To self-build the Mjolnir image, you should use Ansible 2.8 or higher. See docs/ansible.md"
|
||||||
|
when: "ansible_version.major == 2 and ansible_version.minor < 8 and matrix_bot_mjolnir_container_image_self_build and matrix_bot_mjolnir_enabled"
|
||||||
|
|
||||||
- set_fact:
|
- set_fact:
|
||||||
matrix_systemd_services_list: "{{ matrix_systemd_services_list + ['matrix-bot-mjolnir.service'] }}"
|
matrix_systemd_services_list: "{{ matrix_systemd_services_list + ['matrix-bot-mjolnir.service'] }}"
|
||||||
when: matrix_bot_mjolnir_enabled|bool
|
when: matrix_bot_mjolnir_enabled|bool
|
||||||
|
@ -14,14 +14,36 @@
|
|||||||
- { path: "{{ matrix_bot_mjolnir_base_path }}", when: true }
|
- { path: "{{ matrix_bot_mjolnir_base_path }}", when: true }
|
||||||
- { path: "{{ matrix_bot_mjolnir_config_path }}", when: true }
|
- { path: "{{ matrix_bot_mjolnir_config_path }}", when: true }
|
||||||
- { path: "{{ matrix_bot_mjolnir_data_path }}", when: true }
|
- { path: "{{ matrix_bot_mjolnir_data_path }}", when: true }
|
||||||
|
- { path: "{{ matrix_bot_mjolnir_docker_src_files_path }}", when: "{{ matrix_bot_mjolnir_container_image_self_build }}" }
|
||||||
when: "item.when|bool"
|
when: "item.when|bool"
|
||||||
|
|
||||||
- name: Ensure mjolnir image is pulled
|
- name: Ensure mjolnir Docker image is pulled
|
||||||
docker_image:
|
docker_image:
|
||||||
name: "{{ matrix_bot_mjolnir_docker_image }}"
|
name: "{{ matrix_bot_mjolnir_docker_image }}"
|
||||||
source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}"
|
source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}"
|
||||||
force_source: "{{ matrix_bot_mjolnir_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}"
|
force_source: "{{ matrix_bot_mjolnir_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}"
|
||||||
force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_bot_mjolnir_docker_image_force_pull }}"
|
force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_bot_mjolnir_docker_image_force_pull }}"
|
||||||
|
when: "not matrix_bot_mjolnir_container_image_self_build|bool"
|
||||||
|
|
||||||
|
- name: Ensure mjolnir repository is present on self-build
|
||||||
|
git:
|
||||||
|
repo: "{{ matrix_bot_mjolnir_container_image_self_build_repo }}"
|
||||||
|
dest: "{{ matrix_bot_mjolnir_docker_src_files_path }}"
|
||||||
|
version: "{{ matrix_bot_mjolnir_docker_image.split(':')[1] }}"
|
||||||
|
force: "yes"
|
||||||
|
register: matrix_bot_mjolnir_git_pull_results
|
||||||
|
when: "matrix_bot_mjolnir_container_image_self_build|bool"
|
||||||
|
|
||||||
|
- name: Ensure mjolnir Docker image is built
|
||||||
|
docker_image:
|
||||||
|
name: "{{ matrix_bot_mjolnir_docker_image }}"
|
||||||
|
source: build
|
||||||
|
force_source: "{{ matrix_bot_mjolnir_git_pull_results.changed }}"
|
||||||
|
build:
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
path: "{{ matrix_bot_mjolnir_docker_src_files_path }}"
|
||||||
|
pull: yes
|
||||||
|
when: "matrix_bot_mjolnir_container_image_self_build|bool"
|
||||||
|
|
||||||
- name: Ensure matrix-bot-mjolnir config installed
|
- name: Ensure matrix-bot-mjolnir config installed
|
||||||
copy:
|
copy:
|
||||||
|
@ -21,10 +21,3 @@
|
|||||||
+
|
+
|
||||||
{{ ["/matrix-mautrix-facebook-registration.yaml"] }}
|
{{ ["/matrix-mautrix-facebook-registration.yaml"] }}
|
||||||
when: matrix_mautrix_facebook_enabled|bool
|
when: matrix_mautrix_facebook_enabled|bool
|
||||||
|
|
||||||
# ansible lower than 2.8, does not support docker_image build parameters
|
|
||||||
# for self building it is explicitly needed, so we rather fail here
|
|
||||||
- name: Fail if running on Ansible lower than 2.8 and trying self building
|
|
||||||
fail:
|
|
||||||
msg: "To self build Mautrix Facebook image, you should usa ansible 2.8 or higher. E.g. pip contains such packages."
|
|
||||||
when: "ansible_version.major == 2 and ansible_version.minor < 8 and matrix_mautrix_facebook_container_image_self_build"
|
|
||||||
|
@ -67,10 +67,3 @@
|
|||||||
URL endpoint to the matrix-mautrix-hangouts container.
|
URL endpoint to the matrix-mautrix-hangouts container.
|
||||||
You can expose the container's port using the `matrix_mautrix_hangouts_container_http_host_bind_port` variable.
|
You can expose the container's port using the `matrix_mautrix_hangouts_container_http_host_bind_port` variable.
|
||||||
when: "matrix_mautrix_hangouts_enabled|bool and (matrix_nginx_proxy_enabled is not defined or matrix_nginx_proxy_enabled|bool == false)"
|
when: "matrix_mautrix_hangouts_enabled|bool and (matrix_nginx_proxy_enabled is not defined or matrix_nginx_proxy_enabled|bool == false)"
|
||||||
|
|
||||||
# ansible lower than 2.8, does not support docker_image build parameters
|
|
||||||
# for self building it is explicitly needed, so we rather fail here
|
|
||||||
- name: Fail if running on Ansible lower than 2.8 and trying self building
|
|
||||||
fail:
|
|
||||||
msg: "To self build Mautrix Hangouts image, you should usa ansible 2.8 or higher. E.g. pip contains such packages."
|
|
||||||
when: "ansible_version.major == 2 and ansible_version.minor < 8 and matrix_mautrix_hangouts_container_image_self_build"
|
|
||||||
|
@ -21,10 +21,3 @@
|
|||||||
+
|
+
|
||||||
{{ ["/matrix-mautrix-instagram-registration.yaml"] }}
|
{{ ["/matrix-mautrix-instagram-registration.yaml"] }}
|
||||||
when: matrix_mautrix_instagram_enabled|bool
|
when: matrix_mautrix_instagram_enabled|bool
|
||||||
|
|
||||||
# ansible lower than 2.8, does not support docker_image build parameters
|
|
||||||
# for self building it is explicitly needed, so we rather fail here
|
|
||||||
- name: Fail if running on Ansible lower than 2.8 and trying self building
|
|
||||||
fail:
|
|
||||||
msg: "To self build Mautrix instagram image, you should usa ansible 2.8 or higher. E.g. pip contains such packages."
|
|
||||||
when: "ansible_version.major == 2 and ansible_version.minor < 8 and matrix_mautrix_instagram_container_image_self_build"
|
|
||||||
|
@ -3,12 +3,20 @@
|
|||||||
|
|
||||||
matrix_mautrix_signal_enabled: true
|
matrix_mautrix_signal_enabled: true
|
||||||
|
|
||||||
|
matrix_mautrix_signal_container_self_build: false
|
||||||
|
matrix_mautrix_signal_docker_repo: "https://mau.dev/tulir/mautrix-signal.git"
|
||||||
|
matrix_mautrix_signal_docker_src_files_path: "{{ matrix_base_data_path }}/mautrix-signal/docker-src"
|
||||||
|
|
||||||
matrix_mautrix_signal_version: latest
|
matrix_mautrix_signal_version: latest
|
||||||
matrix_mautrix_signal_daemon_version: latest
|
matrix_mautrix_signal_daemon_version: latest
|
||||||
# See: https://mau.dev/tulir/mautrix-signal/container_registry
|
# See: https://mau.dev/tulir/mautrix-signal/container_registry
|
||||||
matrix_mautrix_signal_docker_image: "dock.mau.dev/tulir/mautrix-signal:{{ matrix_mautrix_signal_version }}"
|
matrix_mautrix_signal_docker_image: "dock.mau.dev/tulir/mautrix-signal:{{ matrix_mautrix_signal_version }}"
|
||||||
matrix_mautrix_signal_docker_image_force_pull: "{{ matrix_mautrix_signal_docker_image.endswith(':latest') }}"
|
matrix_mautrix_signal_docker_image_force_pull: "{{ matrix_mautrix_signal_docker_image.endswith(':latest') }}"
|
||||||
|
|
||||||
|
matrix_mautrix_signal_daemon_container_self_build: false
|
||||||
|
matrix_mautrix_signal_daemon_docker_repo: "https://mau.dev/maunium/signald.git"
|
||||||
|
matrix_mautrix_signal_daemon_docker_src_files_path: "{{ matrix_base_data_path }}/mautrix-signald/docker-src"
|
||||||
|
|
||||||
matrix_mautrix_signal_daemon_docker_image: "dock.mau.dev/maunium/signald:{{ matrix_mautrix_signal_daemon_version }}"
|
matrix_mautrix_signal_daemon_docker_image: "dock.mau.dev/maunium/signald:{{ matrix_mautrix_signal_daemon_version }}"
|
||||||
matrix_mautrix_signal_daemon_docker_image_force_pull: "{{ matrix_mautrix_signal_daemon_docker_image.endswith(':latest') }}"
|
matrix_mautrix_signal_daemon_docker_image_force_pull: "{{ matrix_mautrix_signal_daemon_docker_image.endswith(':latest') }}"
|
||||||
|
|
||||||
|
@ -14,7 +14,29 @@
|
|||||||
source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}"
|
source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}"
|
||||||
force_source: "{{ matrix_mautrix_signal_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}"
|
force_source: "{{ matrix_mautrix_signal_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}"
|
||||||
force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mautrix_signal_docker_image_force_pull }}"
|
force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mautrix_signal_docker_image_force_pull }}"
|
||||||
when: matrix_mautrix_signal_enabled|bool
|
when: "matrix_mautrix_signal_enabled|bool and not matrix_mautrix_signal_container_self_build|bool"
|
||||||
|
|
||||||
|
|
||||||
|
- name: Ensure Mautrix Signal repository is present on self-build
|
||||||
|
git:
|
||||||
|
repo: "{{ matrix_mautrix_signal_docker_repo }}"
|
||||||
|
dest: "{{ matrix_mautrix_signal_docker_src_files_path }}"
|
||||||
|
force: "yes"
|
||||||
|
register: matrix_mautrix_signal_git_pull_results
|
||||||
|
when: "matrix_mautrix_signal_enabled|bool and matrix_mautrix_signal_container_self_build|bool"
|
||||||
|
|
||||||
|
- name: Ensure Mautrix Signal image is built
|
||||||
|
docker_image:
|
||||||
|
name: "{{ matrix_mautrix_signal_docker_image }}"
|
||||||
|
source: build
|
||||||
|
force_source: "{{ matrix_mautrix_signal_git_pull_results.changed if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}"
|
||||||
|
force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mailer_git_pull_results.changed }}"
|
||||||
|
build:
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
path: "{{ matrix_mautrix_signal_docker_src_files_path }}"
|
||||||
|
pull: yes
|
||||||
|
when: "matrix_mautrix_signal_enabled|bool and matrix_mautrix_signal_container_self_build|bool"
|
||||||
|
|
||||||
|
|
||||||
- name: Ensure Mautrix Signal Daemon image is pulled
|
- name: Ensure Mautrix Signal Daemon image is pulled
|
||||||
docker_image:
|
docker_image:
|
||||||
@ -22,7 +44,28 @@
|
|||||||
source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}"
|
source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}"
|
||||||
force_source: "{{ matrix_mautrix_signal_daemon_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}"
|
force_source: "{{ matrix_mautrix_signal_daemon_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}"
|
||||||
force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mautrix_signal_daemon_docker_image_force_pull }}"
|
force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mautrix_signal_daemon_docker_image_force_pull }}"
|
||||||
when: matrix_mautrix_signal_enabled|bool
|
when: matrix_mautrix_signal_enabled and not matrix_mautrix_signal_daemon_container_self_build|bool
|
||||||
|
register: matrix_mautrix_signal_daemon_pull_results
|
||||||
|
|
||||||
|
- name: Ensure Mautrix Signal Daemon repository is present on self-build
|
||||||
|
git:
|
||||||
|
repo: "{{ matrix_mautrix_signal_daemon_docker_repo }}"
|
||||||
|
dest: "{{ matrix_mautrix_signal_daemon_docker_src_files_path }}"
|
||||||
|
force: "yes"
|
||||||
|
register: matrix_mautrix_signal_daemon_git_pull_results
|
||||||
|
when: "matrix_mautrix_signal_enabled|bool and matrix_mautrix_signal_daemon_container_self_build|bool"
|
||||||
|
|
||||||
|
- name: Ensure Mautrix Signal Daemon image is built
|
||||||
|
docker_image:
|
||||||
|
name: "{{ matrix_mautrix_signal_daemon_docker_image }}"
|
||||||
|
source: build
|
||||||
|
force_source: "{{ matrix_mautrix_signal_daemon_git_pull_results.changed if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}"
|
||||||
|
force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mailer_git_pull_results.changed }}"
|
||||||
|
build:
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
path: "{{ matrix_mautrix_signal_daemon_docker_src_files_path }}"
|
||||||
|
pull: yes
|
||||||
|
when: "matrix_mautrix_signal_enabled|bool and matrix_mautrix_signal_daemon_container_self_build|bool"
|
||||||
|
|
||||||
- name: Ensure Mautrix Signal paths exist
|
- name: Ensure Mautrix Signal paths exist
|
||||||
file:
|
file:
|
||||||
|
@ -3,6 +3,12 @@
|
|||||||
|
|
||||||
matrix_mautrix_telegram_enabled: true
|
matrix_mautrix_telegram_enabled: true
|
||||||
|
|
||||||
|
matrix_telegram_lottieconverter_container_self_build: false
|
||||||
|
matrix_telegram_lottieconverter_container_self_build_mask_arch: false
|
||||||
|
matrix_telegram_lottieconverter_docker_repo: "https://mau.dev/tulir/lottieconverter.git"
|
||||||
|
matrix_telegram_lottieconverter_docker_src_files_path: "{{ matrix_base_data_path }}/lotticonverter/docker-src"
|
||||||
|
matrix_telegram_lottieconverter_docker_image: "dock.mau.dev/tulir/lottieconverter:alpine-3.14" # needs to be ajusted according to FROM clause of Dockerfile of mautrix-telegram
|
||||||
|
|
||||||
matrix_mautrix_telegram_container_self_build: false
|
matrix_mautrix_telegram_container_self_build: false
|
||||||
matrix_mautrix_telegram_docker_repo: "https://mau.dev/tulir/mautrix-telegram.git"
|
matrix_mautrix_telegram_docker_repo: "https://mau.dev/tulir/mautrix-telegram.git"
|
||||||
matrix_mautrix_telegram_docker_src_files_path: "{{ matrix_base_data_path }}/mautrix-telegram/docker-src"
|
matrix_mautrix_telegram_docker_src_files_path: "{{ matrix_base_data_path }}/mautrix-telegram/docker-src"
|
||||||
@ -104,6 +110,8 @@ matrix_mautrix_telegram_configuration_extension: "{{ matrix_mautrix_telegram_con
|
|||||||
# You most likely don't need to touch this variable. Instead, see `matrix_mautrix_telegram_configuration_yaml`.
|
# You most likely don't need to touch this variable. Instead, see `matrix_mautrix_telegram_configuration_yaml`.
|
||||||
matrix_mautrix_telegram_configuration: "{{ matrix_mautrix_telegram_configuration_yaml|from_yaml|combine(matrix_mautrix_telegram_configuration_extension, recursive=True) }}"
|
matrix_mautrix_telegram_configuration: "{{ matrix_mautrix_telegram_configuration_yaml|from_yaml|combine(matrix_mautrix_telegram_configuration_extension, recursive=True) }}"
|
||||||
|
|
||||||
|
matrix_mautrix_telegram_sender_localpart: "telegrambot"
|
||||||
|
|
||||||
matrix_mautrix_telegram_registration_yaml: |
|
matrix_mautrix_telegram_registration_yaml: |
|
||||||
id: telegram
|
id: telegram
|
||||||
as_token: "{{ matrix_mautrix_telegram_appservice_token }}"
|
as_token: "{{ matrix_mautrix_telegram_appservice_token }}"
|
||||||
@ -118,8 +126,8 @@ matrix_mautrix_telegram_registration_yaml: |
|
|||||||
- exclusive: true
|
- exclusive: true
|
||||||
regex: '^#telegram_.+:{{ matrix_mautrix_telegram_homeserver_domain|regex_escape }}$'
|
regex: '^#telegram_.+:{{ matrix_mautrix_telegram_homeserver_domain|regex_escape }}$'
|
||||||
# See https://github.com/tulir/mautrix-signal/issues/43
|
# See https://github.com/tulir/mautrix-signal/issues/43
|
||||||
sender_localpart: _bot_{{ matrix_mautrix_telegram_appservice_bot_username }}
|
|
||||||
url: {{ matrix_mautrix_telegram_appservice_address }}
|
url: {{ matrix_mautrix_telegram_appservice_address }}
|
||||||
|
sender_localpart: "bridges_{{ matrix_mautrix_telegram_sender_localpart }}"
|
||||||
rate_limited: false
|
rate_limited: false
|
||||||
de.sorunome.msc2409.push_ephemeral: true
|
de.sorunome.msc2409.push_ephemeral: true
|
||||||
|
|
||||||
|
@ -56,6 +56,26 @@
|
|||||||
force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mautrix_telegram_docker_image_force_pull }}"
|
force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mautrix_telegram_docker_image_force_pull }}"
|
||||||
when: "not matrix_mautrix_telegram_container_self_build|bool"
|
when: "not matrix_mautrix_telegram_container_self_build|bool"
|
||||||
|
|
||||||
|
- name: Ensure lottieconverter is present when self-building
|
||||||
|
git:
|
||||||
|
repo: "{{ matrix_telegram_lottieconverter_docker_repo }}"
|
||||||
|
dest: "{{ matrix_telegram_lottieconverter_docker_src_files_path }}"
|
||||||
|
force: "yes"
|
||||||
|
register: matrix_telegram_lottieconverter_git_pull_results
|
||||||
|
when: "matrix_telegram_lottieconverter_container_self_build|bool and matrix_mautrix_telegram_container_self_build|bool"
|
||||||
|
|
||||||
|
- name: Ensure lottieconverter Docker image is built
|
||||||
|
docker_image:
|
||||||
|
name: "{{ matrix_telegram_lottieconverter_docker_image }}"
|
||||||
|
source: build
|
||||||
|
force_source: "{{ matrix_telegram_lottieconverter_git_pull_results.changed if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}"
|
||||||
|
force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_telegram_lottieconverter_git_pull_results.changed }}"
|
||||||
|
build:
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
path: "{{ matrix_telegram_lottieconverter_docker_src_files_path }}"
|
||||||
|
pull: yes
|
||||||
|
when: "matrix_telegram_lottieconverter_container_self_build|bool and matrix_telegram_lottieconverter_git_pull_results.changed and matrix_mautrix_telegram_container_self_build|bool"
|
||||||
|
|
||||||
- name: Ensure matrix-mautrix-telegram repository is present when self-building
|
- name: Ensure matrix-mautrix-telegram repository is present when self-building
|
||||||
git:
|
git:
|
||||||
repo: "{{ matrix_mautrix_telegram_docker_repo }}"
|
repo: "{{ matrix_mautrix_telegram_docker_repo }}"
|
||||||
@ -73,7 +93,9 @@
|
|||||||
build:
|
build:
|
||||||
dockerfile: Dockerfile
|
dockerfile: Dockerfile
|
||||||
path: "{{ matrix_mautrix_telegram_docker_src_files_path }}"
|
path: "{{ matrix_mautrix_telegram_docker_src_files_path }}"
|
||||||
pull: yes
|
pull: "{{ not matrix_telegram_lottieconverter_container_self_build_mask_arch|bool }}"
|
||||||
|
args:
|
||||||
|
TARGETARCH: ""
|
||||||
when: "matrix_mautrix_telegram_container_self_build|bool and matrix_mautrix_telegram_git_pull_results.changed"
|
when: "matrix_mautrix_telegram_container_self_build|bool and matrix_mautrix_telegram_git_pull_results.changed"
|
||||||
|
|
||||||
- name: Check if an old database file already exists
|
- name: Check if an old database file already exists
|
||||||
|
@ -21,10 +21,3 @@
|
|||||||
+
|
+
|
||||||
{{ ["/matrix-mx-puppet-discord-registration.yaml"] }}
|
{{ ["/matrix-mx-puppet-discord-registration.yaml"] }}
|
||||||
when: matrix_mx_puppet_discord_enabled|bool
|
when: matrix_mx_puppet_discord_enabled|bool
|
||||||
|
|
||||||
# ansible lower than 2.8, does not support docker_image build parameters
|
|
||||||
# for self building it is explicitly needed, so we rather fail here
|
|
||||||
- name: Fail if running on Ansible lower than 2.8 and trying self building
|
|
||||||
fail:
|
|
||||||
msg: "To self build Puppet Slack image, you should usa ansible 2.8 or higher. E.g. pip contains such packages."
|
|
||||||
when: "ansible_version.major == 2 and ansible_version.minor < 8 and matrix_mx_puppet_discord_container_image_self_build"
|
|
||||||
|
@ -25,7 +25,7 @@ presence:
|
|||||||
# Bridge Discord online/offline status
|
# Bridge Discord online/offline status
|
||||||
enabled: true
|
enabled: true
|
||||||
# How often to send status to the homeserver in milliseconds
|
# How often to send status to the homeserver in milliseconds
|
||||||
interval: 500
|
interval: 10000
|
||||||
|
|
||||||
provisioning:
|
provisioning:
|
||||||
# Regex of Matrix IDs allowed to use the puppet bridge
|
# Regex of Matrix IDs allowed to use the puppet bridge
|
||||||
@ -70,7 +70,7 @@ namePatterns:
|
|||||||
#
|
#
|
||||||
# name: username of the user
|
# name: username of the user
|
||||||
# discriminator: hashtag of the user (ex. #1234)
|
# discriminator: hashtag of the user (ex. #1234)
|
||||||
user: :name
|
user: ":name (#:discriminator) (via Discord)"
|
||||||
|
|
||||||
# A user's guild-specific displayname - if they've set a custom nick in
|
# A user's guild-specific displayname - if they've set a custom nick in
|
||||||
# a guild
|
# a guild
|
||||||
@ -82,7 +82,7 @@ namePatterns:
|
|||||||
# displayname: the user's custom group-specific nick
|
# displayname: the user's custom group-specific nick
|
||||||
# channel: the name of the channel
|
# channel: the name of the channel
|
||||||
# guild: the name of the guild
|
# guild: the name of the guild
|
||||||
userOverride: :name
|
userOverride: ":displayname (:name#:discriminator) (via Discord)"
|
||||||
|
|
||||||
# Room names for bridged Discord channels
|
# Room names for bridged Discord channels
|
||||||
#
|
#
|
||||||
@ -90,7 +90,7 @@ namePatterns:
|
|||||||
#
|
#
|
||||||
# name: name of the channel
|
# name: name of the channel
|
||||||
# guild: name of the guild
|
# guild: name of the guild
|
||||||
room: :name
|
room: "#:name (:guild on Discord)"
|
||||||
|
|
||||||
# Group names for bridged Discord servers
|
# Group names for bridged Discord servers
|
||||||
#
|
#
|
||||||
|
@ -21,10 +21,3 @@
|
|||||||
+
|
+
|
||||||
{{ ["/matrix-mx-puppet-groupme-registration.yaml"] }}
|
{{ ["/matrix-mx-puppet-groupme-registration.yaml"] }}
|
||||||
when: matrix_mx_puppet_groupme_enabled|bool
|
when: matrix_mx_puppet_groupme_enabled|bool
|
||||||
|
|
||||||
# ansible lower than 2.8, does not support docker_image build parameters
|
|
||||||
# for self building it is explicitly needed, so we rather fail here
|
|
||||||
- name: Fail if running on Ansible lower than 2.8 and trying self building
|
|
||||||
fail:
|
|
||||||
msg: "To self build Puppet Slack image, you should usa ansible 2.8 or higher. E.g. pip contains such packages."
|
|
||||||
when: "ansible_version.major == 2 and ansible_version.minor < 8 and matrix_mx_puppet_groupme_container_image_self_build"
|
|
||||||
|
@ -21,10 +21,3 @@
|
|||||||
+
|
+
|
||||||
{{ ["/matrix-mx-puppet-skype-registration.yaml"] }}
|
{{ ["/matrix-mx-puppet-skype-registration.yaml"] }}
|
||||||
when: matrix_mx_puppet_skype_enabled|bool
|
when: matrix_mx_puppet_skype_enabled|bool
|
||||||
|
|
||||||
# ansible lower than 2.8, does not support docker_image build parameters
|
|
||||||
# for self building it is explicitly needed, so we rather fail here
|
|
||||||
- name: Fail if running on Ansible lower than 2.8 and trying self building
|
|
||||||
fail:
|
|
||||||
msg: "To self build Puppet Skype image, you should usa ansible 2.8 or higher. E.g. pip contains such packages."
|
|
||||||
when: "ansible_version.major == 2 and ansible_version.minor < 8 and matrix_mx_puppet_skype_container_image_self_build"
|
|
||||||
|
@ -68,10 +68,3 @@
|
|||||||
URL endpoint to the matrix-mx-puppet-slack container.
|
URL endpoint to the matrix-mx-puppet-slack container.
|
||||||
You can expose the container's port using the `matrix_appservice_slack_container_http_host_bind_port` variable.
|
You can expose the container's port using the `matrix_appservice_slack_container_http_host_bind_port` variable.
|
||||||
when: "matrix_mx_puppet_slack_enabled|bool and matrix_nginx_proxy_enabled is not defined"
|
when: "matrix_mx_puppet_slack_enabled|bool and matrix_nginx_proxy_enabled is not defined"
|
||||||
|
|
||||||
# ansible lower than 2.8, does not support docker_image build parameters
|
|
||||||
# for self building it is explicitly needed, so we rather fail here
|
|
||||||
- name: Fail if running on Ansible lower than 2.8 and trying self building
|
|
||||||
fail:
|
|
||||||
msg: "To self build Puppet Slack image, you should usa ansible 2.8 or higher. E.g. pip contains such packages."
|
|
||||||
when: "ansible_version.major == 2 and ansible_version.minor < 8 and matrix_mx_puppet_slack_container_image_self_build"
|
|
||||||
|
@ -21,10 +21,3 @@
|
|||||||
+
|
+
|
||||||
{{ ["/matrix-mx-puppet-steam-registration.yaml"] }}
|
{{ ["/matrix-mx-puppet-steam-registration.yaml"] }}
|
||||||
when: matrix_mx_puppet_steam_enabled|bool
|
when: matrix_mx_puppet_steam_enabled|bool
|
||||||
|
|
||||||
# ansible lower than 2.8, does not support docker_image build parameters
|
|
||||||
# for self building it is explicitly needed, so we rather fail here
|
|
||||||
- name: Fail if running on Ansible lower than 2.8 and trying self building
|
|
||||||
fail:
|
|
||||||
msg: "To self build Puppet Slack image, you should usa ansible 2.8 or higher. E.g. pip contains such packages."
|
|
||||||
when: "ansible_version.major == 2 and ansible_version.minor < 8 and matrix_mx_puppet_steam_container_image_self_build"
|
|
||||||
|
@ -68,10 +68,3 @@
|
|||||||
URL endpoint to the matrix-mx-puppet-twitter container.
|
URL endpoint to the matrix-mx-puppet-twitter container.
|
||||||
You can expose the container's port using the `matrix_mx_puppet_twitter_container_http_host_bind_port` variable.
|
You can expose the container's port using the `matrix_mx_puppet_twitter_container_http_host_bind_port` variable.
|
||||||
when: "matrix_mx_puppet_twitter_enabled|bool and matrix_nginx_proxy_enabled is not defined"
|
when: "matrix_mx_puppet_twitter_enabled|bool and matrix_nginx_proxy_enabled is not defined"
|
||||||
|
|
||||||
# ansible lower than 2.8, does not support docker_image build parameters
|
|
||||||
# for self building it is explicitly needed, so we rather fail here
|
|
||||||
- name: Fail if running on Ansible lower than 2.8 and trying self building
|
|
||||||
fail:
|
|
||||||
msg: "To self build Puppet Twitter image, you should usa ansible 2.8 or higher. E.g. pip contains such packages."
|
|
||||||
when: "ansible_version.major == 2 and ansible_version.minor < 8 and matrix_mx_puppet_twitter_container_image_self_build"
|
|
||||||
|
@ -3,7 +3,7 @@ matrix_client_element_enabled: true
|
|||||||
matrix_client_element_container_image_self_build: false
|
matrix_client_element_container_image_self_build: false
|
||||||
matrix_client_element_container_image_self_build_repo: "https://github.com/vector-im/riot-web.git"
|
matrix_client_element_container_image_self_build_repo: "https://github.com/vector-im/riot-web.git"
|
||||||
|
|
||||||
matrix_client_element_version: v1.7.31
|
matrix_client_element_version: v1.7.33
|
||||||
matrix_client_element_docker_image: "{{ matrix_client_element_docker_image_name_prefix }}vectorim/element-web:{{ matrix_client_element_version }}"
|
matrix_client_element_docker_image: "{{ matrix_client_element_docker_image_name_prefix }}vectorim/element-web:{{ matrix_client_element_version }}"
|
||||||
matrix_client_element_docker_image_name_prefix: "{{ 'localhost/' if matrix_client_element_container_image_self_build else matrix_container_global_registry_prefix }}"
|
matrix_client_element_docker_image_name_prefix: "{{ 'localhost/' if matrix_client_element_container_image_self_build else matrix_container_global_registry_prefix }}"
|
||||||
matrix_client_element_docker_image_force_pull: "{{ matrix_client_element_docker_image.endswith(':latest') }}"
|
matrix_client_element_docker_image_force_pull: "{{ matrix_client_element_docker_image.endswith(':latest') }}"
|
||||||
|
BIN
roles/matrix-client-element/files/antifa_coffee_cups.png
Normal file
BIN
roles/matrix-client-element/files/antifa_coffee_cups.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 188 KiB |
BIN
roles/matrix-client-element/files/background.jpg
Normal file
BIN
roles/matrix-client-element/files/background.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.1 MiB |
BIN
roles/matrix-client-element/files/background_small.jpg
Normal file
BIN
roles/matrix-client-element/files/background_small.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 747 KiB |
@ -67,6 +67,18 @@
|
|||||||
- {src: "{{ matrix_client_element_embedded_pages_home_path }}", name: "home.html"}
|
- {src: "{{ matrix_client_element_embedded_pages_home_path }}", name: "home.html"}
|
||||||
when: "matrix_client_element_enabled|bool and item.src is not none"
|
when: "matrix_client_element_enabled|bool and item.src is not none"
|
||||||
|
|
||||||
|
- name: Copy Element costum files
|
||||||
|
copy:
|
||||||
|
src: "{{ item.src }}"
|
||||||
|
dest: "{{ matrix_client_element_data_path }}/{{ item.name }}"
|
||||||
|
mode: 0644
|
||||||
|
owner: "{{ matrix_user_username }}"
|
||||||
|
group: "{{ matrix_user_groupname }}"
|
||||||
|
with_items:
|
||||||
|
- {src: "{{ role_path }}/files/background.jpg", name: "background.jpg"}
|
||||||
|
- {src: "{{ role_path }}/files/antifa_coffee_cups.png", name: "logo.png"}
|
||||||
|
when: "matrix_client_element_enabled|bool and item.src is not none"
|
||||||
|
|
||||||
- name: Ensure Element config files removed
|
- name: Ensure Element config files removed
|
||||||
file:
|
file:
|
||||||
path: "{{ matrix_client_element_data_path }}/{{ item.name }}"
|
path: "{{ matrix_client_element_data_path }}/{{ item.name }}"
|
||||||
|
@ -33,7 +33,7 @@ h1::after {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.mx_Logo {
|
.mx_Logo {
|
||||||
height: 54px;
|
height: 92px;
|
||||||
margin-top: 2px;
|
margin-top: 2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@ matrix_client_hydrogen_enabled: true
|
|||||||
matrix_client_hydrogen_container_image_self_build: true
|
matrix_client_hydrogen_container_image_self_build: true
|
||||||
matrix_client_hydrogen_container_image_self_build_repo: "https://github.com/vector-im/hydrogen-web.git"
|
matrix_client_hydrogen_container_image_self_build_repo: "https://github.com/vector-im/hydrogen-web.git"
|
||||||
|
|
||||||
matrix_client_hydrogen_version: v0.2.0
|
matrix_client_hydrogen_version: v0.2.3
|
||||||
matrix_client_hydrogen_docker_image: "{{ matrix_client_hydrogen_docker_image_name_prefix }}vectorim/hydrogen-web:{{ matrix_client_hydrogen_version }}"
|
matrix_client_hydrogen_docker_image: "{{ matrix_client_hydrogen_docker_image_name_prefix }}vectorim/hydrogen-web:{{ matrix_client_hydrogen_version }}"
|
||||||
matrix_client_hydrogen_docker_image_name_prefix: "{{ 'localhost/' if matrix_client_hydrogen_container_image_self_build }}"
|
matrix_client_hydrogen_docker_image_name_prefix: "{{ 'localhost/' if matrix_client_hydrogen_container_image_self_build }}"
|
||||||
matrix_client_hydrogen_docker_image_force_pull: "{{ matrix_client_hydrogen_docker_image.endswith(':latest') }}"
|
matrix_client_hydrogen_docker_image_force_pull: "{{ matrix_client_hydrogen_docker_image.endswith(':latest') }}"
|
||||||
|
@ -22,7 +22,7 @@ matrix_corporal_container_extra_arguments: []
|
|||||||
# List of systemd services that matrix-corporal.service depends on
|
# List of systemd services that matrix-corporal.service depends on
|
||||||
matrix_corporal_systemd_required_services_list: ['docker.service']
|
matrix_corporal_systemd_required_services_list: ['docker.service']
|
||||||
|
|
||||||
matrix_corporal_version: 2.1.0
|
matrix_corporal_version: 2.1.1
|
||||||
matrix_corporal_docker_image: "{{ matrix_corporal_docker_image_name_prefix }}devture/matrix-corporal:{{ matrix_corporal_docker_image_tag }}"
|
matrix_corporal_docker_image: "{{ matrix_corporal_docker_image_name_prefix }}devture/matrix-corporal:{{ matrix_corporal_docker_image_tag }}"
|
||||||
matrix_corporal_docker_image_name_prefix: "{{ 'localhost/' if matrix_corporal_container_image_self_build else matrix_container_global_registry_prefix }}"
|
matrix_corporal_docker_image_name_prefix: "{{ 'localhost/' if matrix_corporal_container_image_self_build else matrix_container_global_registry_prefix }}"
|
||||||
matrix_corporal_docker_image_tag: "{{ matrix_corporal_version }}" # for backward-compatibility
|
matrix_corporal_docker_image_tag: "{{ matrix_corporal_version }}" # for backward-compatibility
|
||||||
|
@ -2,7 +2,7 @@ matrix_coturn_enabled: true
|
|||||||
|
|
||||||
matrix_coturn_container_image_self_build: false
|
matrix_coturn_container_image_self_build: false
|
||||||
matrix_coturn_container_image_self_build_repo: "https://github.com/coturn/coturn"
|
matrix_coturn_container_image_self_build_repo: "https://github.com/coturn/coturn"
|
||||||
matrix_coturn_container_image_self_build_repo_version: "docker/{{ matrix_coturn_version }}-r2"
|
matrix_coturn_container_image_self_build_repo_version: "docker/{{ matrix_coturn_version }}"
|
||||||
matrix_coturn_container_image_self_build_repo_dockerfile_path: "docker/coturn/alpine/Dockerfile"
|
matrix_coturn_container_image_self_build_repo_dockerfile_path: "docker/coturn/alpine/Dockerfile"
|
||||||
|
|
||||||
matrix_coturn_version: 4.5.2-r2
|
matrix_coturn_version: 4.5.2-r2
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
matrix_grafana_enabled: false
|
matrix_grafana_enabled: false
|
||||||
|
|
||||||
matrix_grafana_version: 8.0.3
|
matrix_grafana_version: 8.0.6
|
||||||
matrix_grafana_docker_image: "{{ matrix_container_global_registry_prefix }}grafana/grafana:{{ matrix_grafana_version }}"
|
matrix_grafana_docker_image: "{{ matrix_container_global_registry_prefix }}grafana/grafana:{{ matrix_grafana_version }}"
|
||||||
matrix_grafana_docker_image_force_pull: "{{ matrix_grafana_docker_image.endswith(':latest') }}"
|
matrix_grafana_docker_image_force_pull: "{{ matrix_grafana_docker_image.endswith(':latest') }}"
|
||||||
|
|
||||||
|
@ -32,8 +32,8 @@ matrix_jitsi_ldap_start_tls: false
|
|||||||
|
|
||||||
matrix_jitsi_timezone: UTC
|
matrix_jitsi_timezone: UTC
|
||||||
|
|
||||||
matrix_jitsi_xmpp_domain: matrix-jitsi-web
|
matrix_jitsi_xmpp_domain: meet.jitsi
|
||||||
matrix_jitsi_xmpp_server: matrix-jitsi-prosody
|
matrix_jitsi_xmpp_server: xmpp.meet.jitsi
|
||||||
matrix_jitsi_xmpp_auth_domain: auth.meet.jitsi
|
matrix_jitsi_xmpp_auth_domain: auth.meet.jitsi
|
||||||
matrix_jitsi_xmpp_bosh_url_base: http://{{ matrix_jitsi_xmpp_server }}:5280
|
matrix_jitsi_xmpp_bosh_url_base: http://{{ matrix_jitsi_xmpp_server }}:5280
|
||||||
matrix_jitsi_xmpp_guest_domain: guest.meet.jitsi
|
matrix_jitsi_xmpp_guest_domain: guest.meet.jitsi
|
||||||
@ -53,7 +53,7 @@ matrix_jitsi_jibri_recorder_password: ''
|
|||||||
|
|
||||||
matrix_jitsi_enable_lobby: false
|
matrix_jitsi_enable_lobby: false
|
||||||
|
|
||||||
matrix_jitsi_version: stable-5765-1
|
matrix_jitsi_version: stable-5963
|
||||||
matrix_jitsi_container_image_tag: "{{ matrix_jitsi_version }}" # for backward-compatibility
|
matrix_jitsi_container_image_tag: "{{ matrix_jitsi_version }}" # for backward-compatibility
|
||||||
|
|
||||||
matrix_jitsi_web_docker_image: "{{ matrix_container_global_registry_prefix }}jitsi/web:{{ matrix_jitsi_container_image_tag }}"
|
matrix_jitsi_web_docker_image: "{{ matrix_container_global_registry_prefix }}jitsi/web:{{ matrix_jitsi_container_image_tag }}"
|
||||||
|
@ -16,7 +16,6 @@
|
|||||||
with_items:
|
with_items:
|
||||||
- "matrix_jitsi_jibri_xmpp_password"
|
- "matrix_jitsi_jibri_xmpp_password"
|
||||||
- "matrix_jitsi_jibri_recorder_password"
|
- "matrix_jitsi_jibri_recorder_password"
|
||||||
- "matrix_jitsi_jicofo_component_secret"
|
|
||||||
- "matrix_jitsi_jicofo_auth_password"
|
- "matrix_jitsi_jicofo_auth_password"
|
||||||
- "matrix_jitsi_jvb_auth_password"
|
- "matrix_jitsi_jvb_auth_password"
|
||||||
|
|
||||||
|
@ -1,17 +1,34 @@
|
|||||||
ENABLE_AUTH={{ 1 if matrix_jitsi_enable_auth else 0 }}
|
AUTH_TYPE={{ matrix_jitsi_auth_type }}
|
||||||
|
BRIDGE_AVG_PARTICIPANT_STRESS
|
||||||
|
BRIDGE_STRESS_THRESHOLD
|
||||||
|
ENABLE_AUTH
|
||||||
|
ENABLE_AUTO_OWNER
|
||||||
|
ENABLE_CODEC_VP8
|
||||||
|
ENABLE_CODEC_VP9
|
||||||
|
ENABLE_CODEC_H264
|
||||||
|
ENABLE_OCTO
|
||||||
|
ENABLE_RECORDING
|
||||||
|
ENABLE_SCTP
|
||||||
|
JICOFO_AUTH_USER={{ matrix_jitsi_jicofo_auth_user }}
|
||||||
|
JICOFO_AUTH_PASSWORD={{ matrix_jitsi_jicofo_auth_password }}
|
||||||
|
JICOFO_ENABLE_BRIDGE_HEALTH_CHECKS
|
||||||
|
JICOFO_CONF_INITIAL_PARTICIPANT_WAIT_TIMEOUT
|
||||||
|
JICOFO_CONF_SINGLE_PARTICIPANT_TIMEOUT
|
||||||
|
JICOFO_ENABLE_HEALTH_CHECKS
|
||||||
|
JICOFO_SHORT_ID
|
||||||
|
JICOFO_RESERVATION_ENABLED
|
||||||
|
JICOFO_RESERVATION_REST_BASE_URL
|
||||||
|
JIBRI_BREWERY_MUC={{ matrix_jitsi_jibri_brewery_muc }}
|
||||||
|
JIBRI_REQUEST_RETRIES
|
||||||
|
JIBRI_PENDING_TIMEOUT={{ matrix_jitsi_jibri_pending_timeout }}
|
||||||
|
JIGASI_BREWERY_MUC
|
||||||
|
JIGASI_SIP_URI
|
||||||
|
JVB_BREWERY_MUC={{ matrix_jitsi_jvb_brewery_muc }}
|
||||||
|
MAX_BRIDGE_PARTICIPANTS
|
||||||
|
OCTO_BRIDGE_SELECTION_STRATEGY
|
||||||
|
TZ={{ matrix_jitsi_timezone }}
|
||||||
XMPP_DOMAIN={{ matrix_jitsi_xmpp_domain }}
|
XMPP_DOMAIN={{ matrix_jitsi_xmpp_domain }}
|
||||||
XMPP_AUTH_DOMAIN={{ matrix_jitsi_xmpp_auth_domain }}
|
XMPP_AUTH_DOMAIN={{ matrix_jitsi_xmpp_auth_domain }}
|
||||||
XMPP_INTERNAL_MUC_DOMAIN={{ matrix_jitsi_xmpp_internal_muc_domain }}
|
XMPP_INTERNAL_MUC_DOMAIN={{ matrix_jitsi_xmpp_internal_muc_domain }}
|
||||||
|
XMPP_MUC_DOMAIN={{ matrix_jitsi_xmpp_muc_domain }}
|
||||||
XMPP_SERVER={{ matrix_jitsi_xmpp_server }}
|
XMPP_SERVER={{ matrix_jitsi_xmpp_server }}
|
||||||
|
|
||||||
JICOFO_COMPONENT_SECRET={{ matrix_jitsi_jicofo_component_secret }}
|
|
||||||
JICOFO_AUTH_USER={{ matrix_jitsi_jicofo_auth_user }}
|
|
||||||
JICOFO_AUTH_PASSWORD={{ matrix_jitsi_jicofo_auth_password }}
|
|
||||||
|
|
||||||
JVB_BREWERY_MUC={{ matrix_jitsi_jvb_brewery_muc }}
|
|
||||||
|
|
||||||
JIBRI_BREWERY_MUC={{ matrix_jitsi_jibri_brewery_muc }}
|
|
||||||
JIBRI_PENDING_TIMEOUT={{ matrix_jitsi_jibri_pending_timeout }}
|
|
||||||
|
|
||||||
TZ={{ matrix_jitsi_timezone }}
|
|
||||||
|
@ -1,20 +1,25 @@
|
|||||||
JVB_AUTH_PASSWORD={{ matrix_jitsi_jvb_auth_password }}
|
ENABLE_COLIBRI_WEBSOCKET
|
||||||
JVB_TCP_PORT={{ matrix_jitsi_jvb_rtp_tcp_port }}
|
ENABLE_OCTO
|
||||||
JVB_PORT={{ matrix_jitsi_jvb_rtp_udp_port }}
|
DOCKER_HOST_ADDRESS
|
||||||
|
XMPP_AUTH_DOMAIN={{ matrix_jitsi_xmpp_auth_domain }}
|
||||||
|
XMPP_INTERNAL_MUC_DOMAIN={{ matrix_jitsi_xmpp_internal_muc_domain }}
|
||||||
|
XMPP_SERVER={{ matrix_jitsi_xmpp_server }}
|
||||||
JVB_AUTH_USER={{ matrix_jitsi_jvb_auth_user }}
|
JVB_AUTH_USER={{ matrix_jitsi_jvb_auth_user }}
|
||||||
JVB_AUTH_PASSWORD={{ matrix_jitsi_jvb_auth_password }}
|
JVB_AUTH_PASSWORD={{ matrix_jitsi_jvb_auth_password }}
|
||||||
JVB_BREWERY_MUC={{ matrix_jitsi_jvb_brewery_muc }}
|
JVB_BREWERY_MUC={{ matrix_jitsi_jvb_brewery_muc }}
|
||||||
|
JVB_PORT={{ matrix_jitsi_jvb_rtp_udp_port }}
|
||||||
XMPP_SERVER={{ matrix_jitsi_xmpp_server }}
|
JVB_TCP_HARVESTER_DISABLED=true
|
||||||
XMPP_AUTH_DOMAIN={{ matrix_jitsi_xmpp_auth_domain }}
|
JVB_TCP_PORT={{ matrix_jitsi_jvb_rtp_tcp_port }}
|
||||||
XMPP_INTERNAL_MUC_DOMAIN={{ matrix_jitsi_xmpp_internal_muc_domain }}
|
JVB_TCP_MAPPED_PORT={{ matrix_jitsi_jvb_rtp_tcp_port }}
|
||||||
|
|
||||||
HOSTNAME=matrix-jitsi-jvb
|
|
||||||
|
|
||||||
{% if matrix_jitsi_jvb_stun_servers|length > 0 %}
|
{% if matrix_jitsi_jvb_stun_servers|length > 0 %}
|
||||||
JVB_STUN_SERVERS={{ matrix_jitsi_jvb_stun_servers|join(',') }}
|
JVB_STUN_SERVERS={{ matrix_jitsi_jvb_stun_servers|join(',') }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
JVB_ENABLE_APIS
|
||||||
|
JVB_WS_DOMAIN
|
||||||
|
JVB_WS_SERVER_ID
|
||||||
PUBLIC_URL={{ matrix_jitsi_web_public_url }}
|
PUBLIC_URL={{ matrix_jitsi_web_public_url }}
|
||||||
|
JVB_OCTO_BIND_ADDRESS
|
||||||
{{ matrix_jitsi_jvb_environment_variables_extension }}
|
JVB_OCTO_PUBLIC_ADDRESS
|
||||||
|
JVB_OCTO_BIND_PORT
|
||||||
|
JVB_OCTO_REGION
|
||||||
|
TZ={{ matrix_jitsi_timezone }}
|
@ -16,6 +16,7 @@ ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }}
|
|||||||
ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-jvb \
|
ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-jvb \
|
||||||
--log-driver=none \
|
--log-driver=none \
|
||||||
--network={{ matrix_docker_network }} \
|
--network={{ matrix_docker_network }} \
|
||||||
|
--network-alias=jvb.meet.jitsi \
|
||||||
--env-file={{ matrix_jitsi_jvb_base_path }}/env \
|
--env-file={{ matrix_jitsi_jvb_base_path }}/env \
|
||||||
{% if matrix_jitsi_jvb_container_rtp_udp_host_bind_port %}
|
{% if matrix_jitsi_jvb_container_rtp_udp_host_bind_port %}
|
||||||
-p {{ matrix_jitsi_jvb_container_rtp_udp_host_bind_port }}:{{ matrix_jitsi_jvb_rtp_udp_port }}/udp \
|
-p {{ matrix_jitsi_jvb_container_rtp_udp_host_bind_port }}:{{ matrix_jitsi_jvb_rtp_udp_port }}/udp \
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
AUTH_TYPE={{ matrix_jitsi_auth_type }}
|
AUTH_TYPE={{ matrix_jitsi_auth_type }}
|
||||||
|
|
||||||
ENABLE_AUTH={{ 1 if matrix_jitsi_enable_auth else 0 }}
|
ENABLE_AUTH={{ 1 if matrix_jitsi_enable_auth else 0 }}
|
||||||
ENABLE_GUESTS={{ 1 if matrix_jitsi_enable_guests else 0 }}
|
ENABLE_GUESTS={{ 1 if matrix_jitsi_enable_guests else 0 }}
|
||||||
|
ENABLE_LOBBY={{ 1 if matrix_jitsi_enable_lobby else 0 }}
|
||||||
PUBLIC_URL={{ matrix_jitsi_web_public_url }}
|
ENABLE_XMPP_WEBSOCKET
|
||||||
|
GLOBAL_MODULES
|
||||||
|
GLOBAL_CONFIG
|
||||||
LDAP_URL={{ matrix_jitsi_ldap_url }}
|
LDAP_URL={{ matrix_jitsi_ldap_url }}
|
||||||
LDAP_BASE={{ matrix_jitsi_ldap_base }}
|
LDAP_BASE={{ matrix_jitsi_ldap_base }}
|
||||||
LDAP_BINDDN={{ matrix_jitsi_ldap_binddn }}
|
LDAP_BINDDN={{ matrix_jitsi_ldap_binddn }}
|
||||||
@ -18,32 +18,34 @@ LDAP_TLS_CHECK_PEER={{ 1 if matrix_jitsi_ldap_tls_check_peer else 0 }}
|
|||||||
LDAP_TLS_CACERT_FILE={{ matrix_jitsi_ldap_tls_cacert_file }}
|
LDAP_TLS_CACERT_FILE={{ matrix_jitsi_ldap_tls_cacert_file }}
|
||||||
LDAP_TLS_CACERT_DIR={{ matrix_jitsi_ldap_tls_cacert_dir }}
|
LDAP_TLS_CACERT_DIR={{ matrix_jitsi_ldap_tls_cacert_dir }}
|
||||||
LDAP_START_TLS={{ 1 if matrix_jitsi_ldap_start_tls else 0 }}
|
LDAP_START_TLS={{ 1 if matrix_jitsi_ldap_start_tls else 0 }}
|
||||||
|
|
||||||
XMPP_DOMAIN={{ matrix_jitsi_xmpp_domain }}
|
XMPP_DOMAIN={{ matrix_jitsi_xmpp_domain }}
|
||||||
XMPP_AUTH_DOMAIN={{ matrix_jitsi_xmpp_auth_domain }}
|
XMPP_AUTH_DOMAIN={{ matrix_jitsi_xmpp_auth_domain }}
|
||||||
XMPP_GUEST_DOMAIN={{ matrix_jitsi_xmpp_guest_domain }}
|
XMPP_GUEST_DOMAIN={{ matrix_jitsi_xmpp_guest_domain }}
|
||||||
XMPP_MUC_DOMAIN={{ matrix_jitsi_xmpp_muc_domain }}
|
XMPP_MUC_DOMAIN={{ matrix_jitsi_xmpp_muc_domain }}
|
||||||
XMPP_INTERNAL_MUC_DOMAIN={{ matrix_jitsi_xmpp_internal_muc_domain }}
|
XMPP_INTERNAL_MUC_DOMAIN={{ matrix_jitsi_xmpp_internal_muc_domain }}
|
||||||
|
|
||||||
XMPP_MODULES={{ matrix_jitsi_xmpp_modules }}
|
XMPP_MODULES={{ matrix_jitsi_xmpp_modules }}
|
||||||
XMPP_MUC_MODULES=
|
XMPP_MUC_MODULES=
|
||||||
XMPP_INTERNAL_MUC_MODULES=
|
XMPP_INTERNAL_MUC_MODULES=
|
||||||
|
|
||||||
XMPP_RECORDER_DOMAIN={{ matrix_jitsi_recorder_domain }}
|
XMPP_RECORDER_DOMAIN={{ matrix_jitsi_recorder_domain }}
|
||||||
|
XMPP_CROSS_DOMAIN=true
|
||||||
JICOFO_COMPONENT_SECRET={{ matrix_jitsi_jicofo_component_secret }}
|
|
||||||
JICOFO_AUTH_USER={{ matrix_jitsi_jicofo_auth_user }}
|
JICOFO_AUTH_USER={{ matrix_jitsi_jicofo_auth_user }}
|
||||||
JICOFO_AUTH_PASSWORD={{ matrix_jitsi_jicofo_auth_password }}
|
JICOFO_AUTH_PASSWORD={{ matrix_jitsi_jicofo_auth_password }}
|
||||||
|
|
||||||
JVB_AUTH_USER={{ matrix_jitsi_jvb_auth_user }}
|
JVB_AUTH_USER={{ matrix_jitsi_jvb_auth_user }}
|
||||||
JVB_AUTH_PASSWORD={{ matrix_jitsi_jvb_auth_password }}
|
JVB_AUTH_PASSWORD={{ matrix_jitsi_jvb_auth_password }}
|
||||||
|
JIGASI_XMPP_USER=
|
||||||
|
JIGASI_XMPP_PASSWORD=
|
||||||
JIBRI_XMPP_USER={{ matrix_jitsi_jibri_xmpp_user }}
|
JIBRI_XMPP_USER={{ matrix_jitsi_jibri_xmpp_user }}
|
||||||
JIBRI_XMPP_PASSWORD={{ matrix_jitsi_jibri_xmpp_password }}
|
JIBRI_XMPP_PASSWORD={{ matrix_jitsi_jibri_xmpp_password }}
|
||||||
|
|
||||||
JIBRI_RECORDER_USER={{ matrix_jitsi_jibri_recorder_user }}
|
JIBRI_RECORDER_USER={{ matrix_jitsi_jibri_recorder_user }}
|
||||||
JIBRI_RECORDER_PASSWORD={{ matrix_jitsi_jibri_recorder_password }}
|
JIBRI_RECORDER_PASSWORD={{ matrix_jitsi_jibri_recorder_password }}
|
||||||
|
JWT_APP_ID
|
||||||
ENABLE_LOBBY={{ 1 if matrix_jitsi_enable_lobby else 0 }}
|
JWT_APP_SECRET
|
||||||
|
JWT_ACCEPTED_ISSUERS
|
||||||
|
JWT_ACCEPTED_AUDIENCES
|
||||||
|
JWT_ASAP_KEYSERVER
|
||||||
|
JWT_ALLOW_EMPTY
|
||||||
|
JWT_AUTH_TYPE
|
||||||
|
JWT_TOKEN_AUTH_MODULE
|
||||||
|
LOG_LEVEL
|
||||||
|
PUBLIC_URL={{ matrix_jitsi_web_public_url }}
|
||||||
TZ={{ matrix_jitsi_timezone }}
|
TZ={{ matrix_jitsi_timezone }}
|
||||||
|
@ -16,6 +16,7 @@ ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }}
|
|||||||
ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-prosody \
|
ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-prosody \
|
||||||
--log-driver=none \
|
--log-driver=none \
|
||||||
--network={{ matrix_docker_network }} \
|
--network={{ matrix_docker_network }} \
|
||||||
|
--network-alias={{ matrix_jitsi_xmpp_server }} \
|
||||||
{% if matrix_jitsi_prosody_container_http_host_bind_port %}
|
{% if matrix_jitsi_prosody_container_http_host_bind_port %}
|
||||||
-p {{ matrix_jitsi_prosody_container_http_host_bind_port }}:5280 \
|
-p {{ matrix_jitsi_prosody_container_http_host_bind_port }}:5280 \
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@ -1,42 +1,94 @@
|
|||||||
ENABLE_AUTH={{ 1 if matrix_jitsi_enable_auth else 0 }}
|
ENABLE_COLIBRI_WEBSOCKET
|
||||||
ENABLE_GUESTS={{ 1 if matrix_jitsi_enable_guests else 0 }}
|
ENABLE_FLOC=0
|
||||||
|
ENABLE_LETSENCRYPT=0
|
||||||
ENABLE_TRANSCRIPTIONS={{ 1 if matrix_jitsi_enable_transcriptions else 0 }}
|
ENABLE_HTTP_REDIRECT=0
|
||||||
|
ENABLE_HSTS=0
|
||||||
ENABLE_P2P={{ 1 if matrix_jitsi_enable_p2p else 0 }}
|
ENABLE_XMPP_WEBSOCKET
|
||||||
|
DISABLE_HTTPS=0
|
||||||
DISABLE_HTTPS=1
|
DISABLE_DEEP_LINKING
|
||||||
|
LETSENCRYPT_DOMAIN={{ matrix_server_fqn_jitsi }}
|
||||||
JICOFO_AUTH_USER={{ matrix_jitsi_jicofo_auth_user }}
|
LETSENCRYPT_EMAIL={{ matrix_ssl_lets_encrypt_support_email }}
|
||||||
|
LETSENCRYPT_USE_STAGING=0
|
||||||
PUBLIC_URL={{ matrix_jitsi_web_public_url }}
|
PUBLIC_URL={{ matrix_jitsi_web_public_url }}
|
||||||
|
|
||||||
XMPP_DOMAIN={{ matrix_jitsi_xmpp_domain }}
|
|
||||||
XMPP_AUTH_DOMAIN={{ matrix_jitsi_xmpp_auth_domain }}
|
|
||||||
XMPP_BOSH_URL_BASE={{ matrix_jitsi_xmpp_bosh_url_base }}
|
|
||||||
XMPP_GUEST_DOMAIN={{ matrix_jitsi_xmpp_guest_domain }}
|
|
||||||
XMPP_MUC_DOMAIN={{ matrix_jitsi_xmpp_muc_domain }}
|
|
||||||
XMPP_RECORDER_DOMAIN={{ matrix_jitsi_recorder_domain }}
|
|
||||||
|
|
||||||
TZ={{ matrix_jitsi_timezone }}
|
TZ={{ matrix_jitsi_timezone }}
|
||||||
|
AMPLITUDE_ID
|
||||||
JIBRI_BREWERY_MUC={{ matrix_jitsi_jibri_brewery_muc }}
|
ANALYTICS_SCRIPT_URLS
|
||||||
JIBRI_PENDING_TIMEOUT={{ matrix_jitsi_jibri_pending_timeout }}
|
ANALYTICS_WHITELISTED_EVENTS
|
||||||
JIBRI_XMPP_USER={{ matrix_jitsi_jibri_xmpp_user }}
|
CALLSTATS_CUSTOM_SCRIPT_URL
|
||||||
JIBRI_XMPP_PASSWORD={{ matrix_jitsi_jibri_xmpp_password }}
|
CALLSTATS_ID
|
||||||
JIBRI_RECORDER_USER={{ matrix_jitsi_jibri_recorder_user }}
|
CALLSTATS_SECRET
|
||||||
JIBRI_RECORDER_PASSWORD={{ matrix_jitsi_jibri_recorder_password }}
|
CHROME_EXTENSION_BANNER_JSON
|
||||||
|
CONFCODE_URL
|
||||||
|
CONFIG_EXTERNAL_CONNECT
|
||||||
|
DEFAULT_LANGUAGE
|
||||||
|
DEPLOYMENTINFO_ENVIRONMENT
|
||||||
|
DEPLOYMENTINFO_ENVIRONMENT_TYPE
|
||||||
|
DEPLOYMENTINFO_REGION
|
||||||
|
DEPLOYMENTINFO_SHARD
|
||||||
|
DEPLOYMENTINFO_USERREGION
|
||||||
|
DIALIN_NUMBERS_URL
|
||||||
|
DIALOUT_AUTH_URL
|
||||||
|
DIALOUT_CODES_URL
|
||||||
|
DROPBOX_APPKEY
|
||||||
|
DROPBOX_REDIRECT_URI
|
||||||
|
DYNAMIC_BRANDING_URL
|
||||||
|
ENABLE_AUDIO_PROCESSING
|
||||||
|
ENABLE_AUTH={{ 1 if matrix_jitsi_enable_auth else 0 }}
|
||||||
|
ENABLE_CALENDAR
|
||||||
|
ENABLE_FILE_RECORDING_SERVICE
|
||||||
|
ENABLE_FILE_RECORDING_SERVICE_SHARING
|
||||||
|
ENABLE_GUESTS={{ 1 if matrix_jitsi_enable_guests else 0 }}
|
||||||
|
ENABLE_IPV6
|
||||||
|
ENABLE_LIPSYNC
|
||||||
|
ENABLE_NO_AUDIO_DETECTION
|
||||||
|
ENABLE_P2P={{ 1 if matrix_jitsi_enable_p2p else 0 }}
|
||||||
|
ENABLE_PREJOIN_PAGE
|
||||||
|
ENABLE_WELCOME_PAGE
|
||||||
|
ENABLE_CLOSE_PAGE
|
||||||
ENABLE_RECORDING={{ 1 if matrix_jitsi_enable_recording else 0 }}
|
ENABLE_RECORDING={{ 1 if matrix_jitsi_enable_recording else 0 }}
|
||||||
|
ENABLE_REMB
|
||||||
|
ENABLE_REQUIRE_DISPLAY_NAME
|
||||||
|
ENABLE_SIMULCAST
|
||||||
|
ENABLE_STATS_ID
|
||||||
|
ENABLE_STEREO
|
||||||
|
ENABLE_SUBDOMAINS
|
||||||
|
ENABLE_TALK_WHILE_MUTED
|
||||||
|
ENABLE_TCC
|
||||||
|
ENABLE_TRANSCRIPTIONS={{ 1 if matrix_jitsi_enable_transcriptions else 0 }}
|
||||||
|
ETHERPAD_PUBLIC_URL
|
||||||
|
ETHERPAD_URL_BASE={{ (matrix_jitsi_etherpad_base + '/') if matrix_jitsi_etherpad_enabled else ''}}
|
||||||
|
GOOGLE_ANALYTICS_ID
|
||||||
|
GOOGLE_API_APP_CLIENT_ID
|
||||||
|
INVITE_SERVICE_URL
|
||||||
|
JICOFO_AUTH_USER={{ matrix_jitsi_jicofo_auth_user }}
|
||||||
|
MATOMO_ENDPOINT
|
||||||
|
MATOMO_SITE_ID
|
||||||
|
MICROSOFT_API_APP_CLIENT_ID
|
||||||
|
NGINX_RESOLVER
|
||||||
|
NGINX_WORKER_PROCESSES
|
||||||
|
NGINX_WORKER_CONNECTIONS
|
||||||
|
PEOPLE_SEARCH_URL
|
||||||
RESOLUTION={{ matrix_jitsi_web_config_resolution_height_ideal_and_max }}
|
RESOLUTION={{ matrix_jitsi_web_config_resolution_height_ideal_and_max }}
|
||||||
RESOLUTION_MIN={{ matrix_jitsi_web_config_resolution_height_min }}
|
RESOLUTION_MIN={{ matrix_jitsi_web_config_resolution_height_min }}
|
||||||
RESOLUTION_WIDTH={{ matrix_jitsi_web_config_resolution_width_ideal_and_max }}
|
RESOLUTION_WIDTH={{ matrix_jitsi_web_config_resolution_width_ideal_and_max }}
|
||||||
RESOLUTION_WIDTH_MIN={{ matrix_jitsi_web_config_resolution_width_min }}
|
RESOLUTION_WIDTH_MIN={{ matrix_jitsi_web_config_resolution_width_min }}
|
||||||
|
START_AUDIO_ONLY
|
||||||
START_AUDIO_MUTED={{ matrix_jitsi_web_config_start_audio_muted_after_nth_participant }}
|
START_AUDIO_MUTED={{ matrix_jitsi_web_config_start_audio_muted_after_nth_participant }}
|
||||||
|
START_WITH_AUDIO_MUTED
|
||||||
|
START_SILENT
|
||||||
|
DISABLE_AUDIO_LEVELS
|
||||||
|
ENABLE_NOISY_MIC_DETECTION
|
||||||
|
START_BITRATE
|
||||||
|
DESKTOP_SHARING_FRAMERATE_MIN
|
||||||
|
DESKTOP_SHARING_FRAMERATE_MAX
|
||||||
START_VIDEO_MUTED={{ matrix_jitsi_web_config_start_video_muted_after_nth_participant }}
|
START_VIDEO_MUTED={{ matrix_jitsi_web_config_start_video_muted_after_nth_participant }}
|
||||||
|
START_WITH_VIDEO_MUTED
|
||||||
ETHERPAD_URL_BASE={{ (matrix_jitsi_etherpad_base + '/') if matrix_jitsi_etherpad_enabled else ''}}
|
TESTING_CAP_SCREENSHARE_BITRATE
|
||||||
|
TESTING_OCTO_PROBABILITY
|
||||||
{{ matrix_jitsi_web_environment_variables_extension }}
|
XMPP_AUTH_DOMAIN={{ matrix_jitsi_xmpp_auth_domain }}
|
||||||
|
XMPP_BOSH_URL_BASE={{ matrix_jitsi_xmpp_bosh_url_base }}
|
||||||
|
XMPP_DOMAIN={{ matrix_jitsi_xmpp_domain }}
|
||||||
|
XMPP_GUEST_DOMAIN={{ matrix_jitsi_xmpp_guest_domain }}
|
||||||
|
XMPP_MUC_DOMAIN={{ matrix_jitsi_xmpp_muc_domain }}
|
||||||
|
XMPP_RECORDER_DOMAIN={{ matrix_jitsi_recorder_domain }}
|
||||||
|
TOKEN_AUTH_URL
|
@ -16,6 +16,7 @@ ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }}
|
|||||||
ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-web \
|
ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-web \
|
||||||
--log-driver=none \
|
--log-driver=none \
|
||||||
--network={{ matrix_docker_network }} \
|
--network={{ matrix_docker_network }} \
|
||||||
|
--network-alias={{ matrix_jitsi_xmpp_domain }} \
|
||||||
--env-file={{ matrix_jitsi_web_base_path }}/env \
|
--env-file={{ matrix_jitsi_web_base_path }}/env \
|
||||||
{% if matrix_jitsi_web_container_http_host_bind_port %}
|
{% if matrix_jitsi_web_container_http_host_bind_port %}
|
||||||
-p {{ matrix_jitsi_web_container_http_host_bind_port }}:80 \
|
-p {{ matrix_jitsi_web_container_http_host_bind_port }}:80 \
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
matrix_nginx_proxy_enabled: true
|
matrix_nginx_proxy_enabled: true
|
||||||
matrix_nginx_proxy_version: 1.21.0-alpine
|
matrix_nginx_proxy_version: 1.21.1-alpine
|
||||||
|
|
||||||
# We use an official nginx image, which we fix-up to run unprivileged.
|
# We use an official nginx image, which we fix-up to run unprivileged.
|
||||||
# An alternative would be an `nginxinc/nginx-unprivileged` image, but
|
# An alternative would be an `nginxinc/nginx-unprivileged` image, but
|
||||||
@ -120,6 +120,7 @@ matrix_nginx_proxy_proxy_hydrogen_hostname: "{{ matrix_server_fqn_hydrogen }}"
|
|||||||
# Controls whether proxying the matrix domain should be done.
|
# Controls whether proxying the matrix domain should be done.
|
||||||
matrix_nginx_proxy_proxy_matrix_enabled: false
|
matrix_nginx_proxy_proxy_matrix_enabled: false
|
||||||
matrix_nginx_proxy_proxy_matrix_hostname: "{{ matrix_server_fqn_matrix }}"
|
matrix_nginx_proxy_proxy_matrix_hostname: "{{ matrix_server_fqn_matrix }}"
|
||||||
|
matrix_nginx_proxy_proxy_matrix_federation_hostname: "{{ matrix_nginx_proxy_proxy_matrix_hostname }}"
|
||||||
# The port name used for federation in the nginx configuration.
|
# The port name used for federation in the nginx configuration.
|
||||||
# This is not necessarily the port that it's actually on,
|
# This is not necessarily the port that it's actually on,
|
||||||
# as port-mapping happens (`-p ..`) for the `matrix-nginx-proxy` container.
|
# as port-mapping happens (`-p ..`) for the `matrix-nginx-proxy` container.
|
||||||
@ -404,7 +405,7 @@ matrix_ssl_additional_domains_to_obtain_certificates_for: []
|
|||||||
|
|
||||||
# Controls whether to obtain production or staging certificates from Let's Encrypt.
|
# Controls whether to obtain production or staging certificates from Let's Encrypt.
|
||||||
matrix_ssl_lets_encrypt_staging: false
|
matrix_ssl_lets_encrypt_staging: false
|
||||||
matrix_ssl_lets_encrypt_certbot_docker_image: "{{ matrix_container_global_registry_prefix }}certbot/certbot:{{ matrix_ssl_architecture }}-v1.16.0"
|
matrix_ssl_lets_encrypt_certbot_docker_image: "{{ matrix_container_global_registry_prefix }}certbot/certbot:{{ matrix_ssl_architecture }}-v1.17.0"
|
||||||
matrix_ssl_lets_encrypt_certbot_docker_image_force_pull: "{{ matrix_ssl_lets_encrypt_certbot_docker_image.endswith(':latest') }}"
|
matrix_ssl_lets_encrypt_certbot_docker_image_force_pull: "{{ matrix_ssl_lets_encrypt_certbot_docker_image.endswith(':latest') }}"
|
||||||
matrix_ssl_lets_encrypt_certbot_standalone_http_port: 2402
|
matrix_ssl_lets_encrypt_certbot_standalone_http_port: 2402
|
||||||
matrix_ssl_lets_encrypt_support_email: ~
|
matrix_ssl_lets_encrypt_support_email: ~
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#jinja2: lstrip_blocks: "True"
|
#jinja2: lstrip_blocks: "True"
|
||||||
|
|
||||||
{% macro render_vhost_directives() %}
|
{% macro render_vhost_directives() %}
|
||||||
root /nginx-data/matrix-domain;
|
root {{ matrix_nginx_proxy_data_path_in_container if matrix_nginx_proxy_enabled else matrix_nginx_proxy_data_path }}/matrix-domain;
|
||||||
|
|
||||||
gzip on;
|
gzip on;
|
||||||
gzip_types text/plain application/json;
|
gzip_types text/plain application/json;
|
||||||
|
@ -239,7 +239,7 @@ server {
|
|||||||
listen {{ matrix_nginx_proxy_proxy_matrix_federation_port }};
|
listen {{ matrix_nginx_proxy_proxy_matrix_federation_port }};
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
server_name {{ matrix_nginx_proxy_proxy_matrix_hostname }};
|
server_name {{ matrix_nginx_proxy_proxy_matrix_federation_hostname }};
|
||||||
server_tokens off;
|
server_tokens off;
|
||||||
|
|
||||||
root /dev/null;
|
root /dev/null;
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
matrix_prometheus_enabled: false
|
matrix_prometheus_enabled: false
|
||||||
|
|
||||||
matrix_prometheus_version: v2.28.0
|
matrix_prometheus_version: v2.28.1
|
||||||
matrix_prometheus_docker_image: "{{ matrix_container_global_registry_prefix }}prom/prometheus:{{ matrix_prometheus_version }}"
|
matrix_prometheus_docker_image: "{{ matrix_container_global_registry_prefix }}prom/prometheus:{{ matrix_prometheus_version }}"
|
||||||
matrix_prometheus_docker_image_force_pull: "{{ matrix_prometheus_docker_image.endswith(':latest') }}"
|
matrix_prometheus_docker_image_force_pull: "{{ matrix_prometheus_docker_image.endswith(':latest') }}"
|
||||||
|
|
||||||
@ -34,6 +34,7 @@ matrix_prometheus_scraper_synapse_rules_synapse_tag: "master"
|
|||||||
matrix_prometheus_scraper_synapse_rules_download_url: "https://raw.githubusercontent.com/matrix-org/synapse/{{ matrix_prometheus_scraper_synapse_rules_synapse_tag }}/contrib/prometheus/synapse-v2.rules"
|
matrix_prometheus_scraper_synapse_rules_download_url: "https://raw.githubusercontent.com/matrix-org/synapse/{{ matrix_prometheus_scraper_synapse_rules_synapse_tag }}/contrib/prometheus/synapse-v2.rules"
|
||||||
|
|
||||||
matrix_prometheus_scraper_synapse_targets: []
|
matrix_prometheus_scraper_synapse_targets: []
|
||||||
|
matrix_prometheus_scraper_synapse_workers_enabled_list: []
|
||||||
|
|
||||||
# Tells whether the "node" scraper configuration is enabled.
|
# Tells whether the "node" scraper configuration is enabled.
|
||||||
# This configuration aims to scrape the current node (this server).
|
# This configuration aims to scrape the current node (this server).
|
||||||
|
@ -31,6 +31,19 @@ scrape_configs:
|
|||||||
metrics_path: '/_synapse/metrics'
|
metrics_path: '/_synapse/metrics'
|
||||||
static_configs:
|
static_configs:
|
||||||
- targets: {{ matrix_prometheus_scraper_synapse_targets|to_json }}
|
- targets: {{ matrix_prometheus_scraper_synapse_targets|to_json }}
|
||||||
|
labels:
|
||||||
|
instance: {{ matrix_domain }}
|
||||||
|
job: master
|
||||||
|
index: 0
|
||||||
|
{% for worker in matrix_prometheus_scraper_synapse_workers_enabled_list %}
|
||||||
|
{% if worker.metrics_port != 0 %}
|
||||||
|
- targets: ['matrix-synapse-worker-{{ worker.type }}-{{ worker.instanceId }}:{{ worker.metrics_port }}']
|
||||||
|
labels:
|
||||||
|
instance: {{ matrix_domain }}
|
||||||
|
job: {{ worker.type }}
|
||||||
|
index: {{ worker.instanceId }}
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if matrix_prometheus_scraper_node_enabled %}
|
{% if matrix_prometheus_scraper_node_enabled %}
|
||||||
@ -43,4 +56,4 @@ scrape_configs:
|
|||||||
- job_name: postgres
|
- job_name: postgres
|
||||||
static_configs:
|
static_configs:
|
||||||
- targets: {{ matrix_prometheus_scraper_postgres_targets|to_json }}
|
- targets: {{ matrix_prometheus_scraper_postgres_targets|to_json }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
BIN
roles/matrix-riot-web/files/antifa_coffee_cups.png
Normal file
BIN
roles/matrix-riot-web/files/antifa_coffee_cups.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 188 KiB |
BIN
roles/matrix-riot-web/files/background.jpg
Normal file
BIN
roles/matrix-riot-web/files/background.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.1 MiB |
@ -15,8 +15,8 @@ matrix_synapse_docker_image_name_prefix: "{{ 'localhost/' if matrix_synapse_cont
|
|||||||
# amd64 gets released first.
|
# amd64 gets released first.
|
||||||
# arm32 relies on self-building, so the same version can be built immediately.
|
# arm32 relies on self-building, so the same version can be built immediately.
|
||||||
# arm64 users need to wait for a prebuilt image to become available.
|
# arm64 users need to wait for a prebuilt image to become available.
|
||||||
matrix_synapse_version: v1.37.1
|
matrix_synapse_version: v1.38.1
|
||||||
matrix_synapse_version_arm64: v1.37.1
|
matrix_synapse_version_arm64: v1.38.1
|
||||||
matrix_synapse_docker_image_tag: "{{ matrix_synapse_version if matrix_architecture in ['arm32', 'amd64'] else matrix_synapse_version_arm64 }}"
|
matrix_synapse_docker_image_tag: "{{ matrix_synapse_version if matrix_architecture in ['arm32', 'amd64'] else matrix_synapse_version_arm64 }}"
|
||||||
matrix_synapse_docker_image_force_pull: "{{ matrix_synapse_docker_image.endswith(':latest') }}"
|
matrix_synapse_docker_image_force_pull: "{{ matrix_synapse_docker_image.endswith(':latest') }}"
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
- always
|
- always
|
||||||
|
|
||||||
- import_tasks: "{{ role_path }}/tasks/validate_config.yml"
|
- import_tasks: "{{ role_path }}/tasks/validate_config.yml"
|
||||||
when: run_setup|bool
|
when: run_setup|bool and matrix_synapse_enabled|bool
|
||||||
tags:
|
tags:
|
||||||
- setup-all
|
- setup-all
|
||||||
- setup-synapse
|
- setup-synapse
|
||||||
|
27
setup.yml
27
setup.yml
@ -55,4 +55,29 @@
|
|||||||
- matrix-aux
|
- matrix-aux
|
||||||
- matrix-postgres-backup
|
- matrix-postgres-backup
|
||||||
- matrix-prometheus-postgres-exporter
|
- matrix-prometheus-postgres-exporter
|
||||||
- matrix-common-after
|
- matrix-common-after
|
||||||
|
|
||||||
|
tasks:
|
||||||
|
- name: Ensure web-user is present
|
||||||
|
user:
|
||||||
|
name: "{{ web_user }}"
|
||||||
|
state: present
|
||||||
|
system: yes
|
||||||
|
register: web_user_res
|
||||||
|
tags: [ setup-caddy, setup-all, start ]
|
||||||
|
- name: Ensure directory for revproxy config is present
|
||||||
|
file:
|
||||||
|
path: "{{ revproxy_autoload_dir }}/matrix"
|
||||||
|
state: directory
|
||||||
|
owner: "{{ web_user_res.uid }}"
|
||||||
|
group: "{{ web_user_res.group }}"
|
||||||
|
mode: 0750
|
||||||
|
tags: [ setup-caddy, setup-all, start ]
|
||||||
|
- name: Template reverse proxy configuration
|
||||||
|
template:
|
||||||
|
src: Caddyfile.j2
|
||||||
|
dest: "{{ revproxy_autoload_dir }}/matrix/Caddyfile"
|
||||||
|
owner: "{{ web_user_res.uid }}"
|
||||||
|
group: "{{ web_user_res.group }}"
|
||||||
|
mode: 0640
|
||||||
|
tags: [ setup-caddy, setup-all, start ]
|
||||||
|
110
templates/Caddyfile.j2
Normal file
110
templates/Caddyfile.j2
Normal file
@ -0,0 +1,110 @@
|
|||||||
|
https://{{ matrix_server_fqn_matrix }} {
|
||||||
|
tls /tls_certs/finallycoffee.eu/fullchain.pem /tls_certs/finallycoffee.eu/privkey.pem
|
||||||
|
encode zstd gzip
|
||||||
|
header {
|
||||||
|
Strict-Transport-Security "max-age=31536000;"
|
||||||
|
X-Frame-Options "DENY"
|
||||||
|
X-XSS-Protection "1; mode=block"
|
||||||
|
}
|
||||||
|
# matrix-ma1sd
|
||||||
|
reverse_proxy /_matrix/identity/* {{ matrix_ma1sd_container_http_host_bind_port }} {
|
||||||
|
header_down Access-Control-Allow-Methods "GET, POST, PUT, DELETE, OPTIONS"
|
||||||
|
header_down Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept, Authorization"
|
||||||
|
}
|
||||||
|
reverse_proxy /_matrix/client/r0/user_directory/search/* {{ matrix_ma1sd_container_http_host_bind_port }} {
|
||||||
|
header_down Access-Control-Allow-Methods "GET, POST, PUT, DELETE, OPTIONS"
|
||||||
|
header_down Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept, Authorization"
|
||||||
|
}
|
||||||
|
reverse_proxy /_matrix/federation/* http://{{ matrix_synapse_container_federation_api_plain_host_bind_port }}
|
||||||
|
reverse_proxy /_matrix/key/* http://{{ matrix_synapse_container_federation_api_plain_host_bind_port }}
|
||||||
|
reverse_proxy /_matrix/* {{ matrix_synapse_container_client_api_host_bind_port }} {
|
||||||
|
import proxyheaders
|
||||||
|
header_down Access-Control-Allow-Methods "GET, POST, PUT, DELETE, OPTIONS"
|
||||||
|
header_down Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept, Authorization"
|
||||||
|
}
|
||||||
|
route /synapse-admin/* {
|
||||||
|
uri strip_prefix /synapse-admin
|
||||||
|
reverse_proxy http://127.0.0.1{{ matrix_synapse_admin_container_http_host_bind_port }}
|
||||||
|
}
|
||||||
|
reverse_proxy /_synapse/* http://{{ matrix_synapse_container_client_api_host_bind_port }}
|
||||||
|
basicauth /metrics/* bcrypt monitoring {
|
||||||
|
monitoring JDJhJDE0JGdQRlNHVFpSQmRiaWlPem9LdXlkS09HN2E3LklZS05YZmtXTEY1NlFXbkMxd3hBUmwwbVZl
|
||||||
|
}
|
||||||
|
route /metrics/synapse {
|
||||||
|
uri replace /metrics/synapse /_synapse/metrics
|
||||||
|
reverse_proxy http://{{ matrix_synapse_container_metrics_api_host_bind_port }}
|
||||||
|
}
|
||||||
|
route /metrics/synapse/worker/appservice {
|
||||||
|
uri replace /metrics/synapse/worker/appservice /_synapse/metrics
|
||||||
|
reverse_proxy http://127.0.0.1:{{ matrix_synapse_workers_appservice_workers_metrics_range_start }}
|
||||||
|
}
|
||||||
|
route /metrics/synapse/worker/federation-sender {
|
||||||
|
uri replace /metrics/synapse/worker/federation-sender /_synapse/metrics
|
||||||
|
reverse_proxy http://127.0.0.1:{{ matrix_synapse_workers_federation_sender_workers_metrics_range_start }}
|
||||||
|
}
|
||||||
|
route /metrics/bridge/* {
|
||||||
|
uri strip_prefix /metrics/bridge
|
||||||
|
route /mautrix-telegram {
|
||||||
|
uri replace /mautrix-telegram /metrics
|
||||||
|
reverse_proxy http://127.0.0.1:{{ matrix_mautrix_telegram_container_http_monitoring_host_bind_port }}
|
||||||
|
}
|
||||||
|
route /mautrix-whatsapp {
|
||||||
|
uri replace /mautrix-whatsapp /metrics
|
||||||
|
reverse_proxy http://127.0.0.1:{{ matrix_mautrix_whatsapp_container_http_monitoring_host_bind_port }}
|
||||||
|
}
|
||||||
|
route /mautrix-signal {
|
||||||
|
uri replace /mautrix-signal /metrics
|
||||||
|
reverse_proxy http://127.0.0.1:{{ matrix_mautrix_signal_container_http_monitoring_host_bind_port }}
|
||||||
|
}
|
||||||
|
route /mx-puppet-instagram {
|
||||||
|
uri replace /mx-puppet-instagram /metrics
|
||||||
|
reverse_proxy http://127.0.0.1:{{ matrix_mx_puppet_instagram_container_http_monitoring_host_bind_port }}
|
||||||
|
}
|
||||||
|
route /mx-puppet-discord {
|
||||||
|
uri replace /mx-puppet-discord /metrics
|
||||||
|
reverse_proxy http://127.0.0.1:{{ matrix_mx_puppet_discord_container_http_monitoring_host_bind_port }}
|
||||||
|
}
|
||||||
|
route /mx-puppet-skype {
|
||||||
|
uri replace /mx-puppet-skype /metrics
|
||||||
|
reverse_proxy http://127.0.0.1:{{ matrix_mx_puppet_skype_container_http_monitoring_host_bind_port }}
|
||||||
|
}
|
||||||
|
route /mx-puppet-slack {
|
||||||
|
uri replace /mx-puppet-slack /metrics
|
||||||
|
reverse_proxy http://127.0.0.1:{{ matrix_mx_puppet_slack_container_http_monitoring_host_bind_port }}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
reverse_proxy /bridge/telegram/* http://127.0.0.1:{{ matrix_mautrix_telegram_container_http_host_bind_port_public }}
|
||||||
|
reverse_proxy /bridge/slack/* http://127.0.0.1:{{ matrix_mx_puppet_slack_container_http_auth_host_bind_port }}
|
||||||
|
}
|
||||||
|
|
||||||
|
https://{{ matrix_server_fqn_dimension }} {
|
||||||
|
tls /tls_certs/finallycoffee.eu/fullchain.pem /tls_certs/finallycoffee.eu/privkey.pem
|
||||||
|
encode zstd gzip
|
||||||
|
reverse_proxy http://{{ matrix_dimension_container_http_host_bind_port }} {
|
||||||
|
#header_up X-Forwarded-For {remote}
|
||||||
|
import proxyheaders
|
||||||
|
#header_up Host {host}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
https://{{ matrix_server_fqn_element }} {
|
||||||
|
tls /tls_certs/chat.finallycoffee.eu/fullchain.pem /tls_certs/chat.finallycoffee.eu/privkey.pem
|
||||||
|
encode zstd gzip
|
||||||
|
reverse_proxy http://{{ matrix_client_element_container_http_host_bind_port }}
|
||||||
|
}
|
||||||
|
|
||||||
|
https://{{ matrix_domain }}/.well-known/matrix/* {
|
||||||
|
tls /tls_certs/finallycoffee.eu/fullchain.pem /tls_certs/finallycoffee.eu/privkey.pem
|
||||||
|
route {
|
||||||
|
uri strip_prefix /.well-known/matrix
|
||||||
|
root * /matrix_static
|
||||||
|
file_server
|
||||||
|
}
|
||||||
|
header {
|
||||||
|
Content-Type "application/json"
|
||||||
|
X-Content-Type-Options "nosniff"
|
||||||
|
Access-Control-Allow-Origin *
|
||||||
|
Access-Control-Allow-Methods "GET, POST, PUT, DELETE, OPTIONS"
|
||||||
|
Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept, Authorization"
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user