Commit Graph

159 Commits

Author SHA1 Message Date
1d1fd7053c ewoutp/goofys:latest -> docker.io/ewoutp/goofys:latest 2023-01-09 18:55:22 +02:00
7e5e1712f5 Encode s3 sse-c key for utf-8 2023-01-03 17:53:33 -05:00
f5390562ed Fix synapse s3 storage provider container indentation 2023-01-03 16:13:09 -05:00
6d96bcee1d Allow 'git' as a version for s3 storage provider 2023-01-03 15:18:49 -05:00
4d44f7b49e Use base64 encoded string for sse-c key 2023-01-03 15:18:09 -05:00
4c60b1dabf Merge branch 'master' into synapse-s3-sse-c 2023-01-03 14:31:02 -05:00
40aa42e982 Add reference to push.enabled to homeserver.yaml
Related to:

- https://github.com/matrix-org/synapse/pull/14551/files
- https://github.com/matrix-org/synapse/pull/14619/files
2022-12-21 06:43:43 +02:00
deabd79452 Upgrade Synapse (1.73.0 -> 1.74.0)
Signed-off-by: Joe Kappus <joe@wt.gd>
2022-12-20 14:07:14 -05:00
dd51ad2ba2 fail if matrix_synapse_ext_synapse_s3_storage_provider_config_endpoint_url 'not' startswith('http') 2022-12-10 08:13:55 -05:00
d81e7d6328 Make matrix_synapse_ext_synapse_s3_storage_provider_config_endpoint_url required
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2330
2022-12-10 10:37:01 +02:00
3824139908 Rename inject_into_nginx_proxy.yml to init.yml when it does more than injection 2022-12-09 10:18:40 +02:00
f186d6236d Add some missing tags to Synapse role
Without these:

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

- `--tags=install-synapse-reverse-proxy-companion` and
  `--tags=setup-synapse-reverse-proxy-companion` would not contain
  Synapse worker configuration
2022-12-09 10:15:40 +02:00
9edc7da67d Do not specify now-unnecessary worker_main_http_uri Synapse worker setting
Related to

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

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

Source: 6acb6d772a
2022-12-06 15:49:28 +02:00
84d529b542 Upgrade Synapse (v1.72.0 -> v1.73.0)
Synapse Worker configuration updates are coming later.
2022-12-06 15:47:07 +02:00
7464604ddd Make use of matrix_synapse_ext_s3_storage_provider_data_path in a few more places 2022-12-04 10:17:55 +02:00
b31731ebf8 fix s3 storage provider not ensuring data dir
This path is accessed by the s3 storage provider stuff and needs to be
ensured.

Broken by 7c5c3aedc
2022-12-04 01:16:58 -05:00
910cd9adf0 Replace import_role calls with include_role calls 2022-11-27 11:27:01 +02:00
2688e8bfc3 Optimize initial installation by not reloading systemd after each .service install
We expect `--tags=start` to handle systemd reloading, so we don't need
to do it manually each time we install/uninstall a .service file.
2022-11-27 10:02:45 +02:00
c928148261 Make uninstall tasks for Synapse delete bin/ 2022-11-27 09:43:25 +02:00
7c5c3aedc4 Put s3-storage-provider scripts under /matrix/synapse/ext/s3-storage-provider/bin, not /usr/local/bin 2022-11-27 09:38:34 +02:00
735e7355a5 Rename variable (matrix_synapse_ext_s3_storage_provider_path -> matrix_synapse_ext_s3_storage_provider_base_path) 2022-11-27 09:28:29 +02:00
72744f9db9 /usr/local/bin/matrix-synapse-register-user -> /matrix/synapse/bin/register-user 2022-11-27 09:26:18 +02:00
3d5d843418 Replace some devture_postgres_identifier instances with devture_postgres_connection_hostname 2022-11-27 08:31:54 +02:00
04b9483f0d Switch from matrix-postgres to com.devture.ansible.role.postgres 2022-11-27 08:04:31 +02:00
dd9ae0d25c Fix accidentally swapped tags (rust-synapse-compress-state and update-user-password) 2022-11-27 07:24:39 +02:00
a04f6f4e3d Optimize uninstall tasks a bit
- forego removing Docker images - it's not effective anyway, because it
  only removes the last version.. which is a drop in the bucket, usually

- do not reload systemd - it's none of our business. `--tags=start`,
  etc., handle this

- combine all uninstall tasks under a single block, which only runs if
  we detect traces (a leftover systemd .service file) of the component.
  If no such .service is detected, we skip them all. This may lead to
  incorect cleanup in rare cases, but is good enough for the most part.
2022-11-25 17:28:57 +02:00
61f67d8f0a Add install-* tags for quicker runs 2022-11-25 16:02:51 +02:00
663a17ea10 Fix ansible-lint-reported errors 2022-11-24 17:39:34 +02:00
c37cf42427 Do not delete and re-create Synapse worker configs needlessly
We had checks to avoid stopping/deleting systemd services for workers
that used to exist and will continue to exist, but we were deleting
config files for workers each time.. Only to recreate them again later.

This lead to:

- too many misleading "changed" tasks
- too much unnecessary work
- potential failures during playbook execution possibly leaving the
  system in a bad state (no worker config files)
2022-11-24 17:06:31 +02:00
2e7b5c7b02 Untangle the setup import/include mess in matrix-synapse 2022-11-24 16:27:11 +02:00
d29b0aeddb Replace even more import_tasks calls with include_tasks 2022-11-24 15:19:42 +02:00
7c2a7a8eb6 Replace most import_tasks calls with include_tasks for improved performance 2022-11-24 11:33:45 +02:00
07c23b7cb0 Remove matrix_synapse_role_executed and various tasks that check it
This was useful when the order of these roles in relation to Synapse
mattered (when we were injecting stuff into Synapse variables during
runtime). This is no longer the case since 0ea7cb5d18, so all of
this can be removed.
2022-11-23 16:13:07 +02:00
735bacca89 Do not run matrix-nginx-proxy config injection tasks unless necessary
These `init.yml` (now `inject_into_nginx_proxy.yml`) tasks do not need
to `always` run. They only need to run for `setup-all` and
`setup-nginx-proxy`. Unless we're dealing with these 2 tags, we can
spare ourselves a lot of work.

This patch also moves the `when` statement from `init.yml` into
`main.yml` in an effort to further optimize things by potentially
avoiding the extra file include.
2022-11-23 15:52:58 +02:00
ccfaefa4d2 Add service groups 2022-11-23 11:45:47 +02:00
93d4f8d425 Replace matrix-common-after systemd service management with com.devture.ansible.role.systemd_service_manager 2022-11-23 11:45:46 +02:00
360e643f84 Add service priorities - try to stop/start them in an optimal order 2022-11-23 11:45:46 +02:00
0ea7cb5d18 Remove various init.yml files - initialize systemd services, etc., statically (not at runtime) 2022-11-23 11:45:46 +02:00
e37db0c888 Upgrade Synapse (v1.71.0 -> v1.72.0) 2022-11-22 16:41:14 +02:00
b6bb5731cd Remove leftover sse-c enabled cmd check 2022-11-13 03:20:30 -05:00
a7320e02ff Adjust sse-c template formatting 2022-11-13 03:18:53 -05:00
384da4f34f Add S3 SSE-C support to synapse-s3-storage-provider 2022-11-09 16:16:33 -05:00
51674887ff Fix Synapse pusher_instances not being populated correctly
This caused push notifications to be delivered more than once
if multiple `pusher` workers were enabled.
2022-11-08 17:40:44 +02:00
7871a92b04 Upgrade Synapse (v1.70.1 -> v1.71.0) 2022-11-08 16:25:52 +02:00
5ef70015cb Ensure git is installed using ansible.builtin.package, not using a distro-specific package manager module
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2228
2022-11-05 12:09:32 +02:00
2473cd655b Include ensure_openssl_installed and ensure_fuse_installed utils in a more reliable way
This fixes a regression since the change done in c1c152f7ac.
When another role (say `matrix-jitsi`) included `roles/custom/matrix-base/tasks/util/ensure_openssl_installed.yml`,
which then included `{{ role_path }}/tasks/util/ensure_openssl_installed_DISTRO.yml`,
that `role_path` variable would end up being the parent role
(`matrix-jitsi`) and not the `matrix-base` role, so we'd get a failure.

An alternative solution may have been to avoid using `role_path`, but
importing roles properly (like we've done in this patch) sounds like a better way.

Unfortunately, `import_role` fails if `tasks_from` is something like
`util/ensure_openssl_installed` (containing a `/`), so I had to move
these utils out of `util/`.

Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2228
2022-11-05 09:18:58 +02:00
6c524302d6 Add intentionally-ignored-endpoints to intentionally-ignored-endpoints for completeness 2022-11-05 07:40:56 +02:00