Commit Graph

47 Commits

Author SHA1 Message Date
Slavi Pantaleev 3ee7deb2d7 Rename variable (matrix_user_groupname -> matrix_group_name) 2025-04-29 10:39:41 +03:00
Slavi Pantaleev 9fc5cdab33 Rename variable (matrix_user_username -> matrix_user_name) 2025-04-29 10:39:41 +03:00
Slavi Pantaleev 98e4f369b7 Add receive_ephemeral everywhere de.sorunome.msc2409.push_ephemeral is used
Matrix CI / yamllint (push) Waiting to run
Matrix CI / ansible-lint (push) Waiting to run
REUSE Compliance Check / reuse-compliance-check (push) Waiting to run
Ref:

- https://github.com/mautrix/go/blob/33f3ccd6aef0a3ef3a37fefead208c6249169142/CHANGELOG.md#L134-L136
- https://github.com/mautrix/go/blob/7165d3fa583444352ea770b5c003c93a7fc6989c/appservice/registration.go#L30

Intentionally not removing the old configuration setting yet, as some bridges may/do not support
the new setting name. It's likely just bridgev2 mautrix bridges that have been updated and support both right now.
2025-04-25 17:13:38 +03:00
Suguru Hirahara d4c007dffd Re-run reuse annotate for roles/
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2025-03-05 16:03:16 +09:00
Slavi Pantaleev bf0918ae58 Merge branch 'master' into patch-2 2025-03-05 08:29:35 +02:00
Suguru Hirahara c18fc93a22 Update validate_config.yml files: edit the banner message for variables name
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2025-03-05 13:30:50 +09:00
Suguru Hirahara c385bee7af Re-run "reuse annotate" to sort statements
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2025-03-05 12:43:41 +09:00
Suguru Hirahara b0d53d1b53 Add license information to files for matrix-bridge-go-skype-bridge
This commit adds copyright attributions in SPDX to the files for go-skype-bridge, following REUSE's specification.

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2025-02-26 15:52:43 +09:00
Suguru Hirahara 2a3fee7b80 Fix some of the spacing warnings with ansible-lint
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2025-02-25 03:48:09 +09:00
Slavi Pantaleev c47eca389b Rework all roles to include component_(docker|container)_image_registry_prefix* variables
This:

- brings consistency - no more mixing `_name_prefix` and `_registry_prefix`
- adds extensibility - a future patch will allow reconfiguring all registry prefixes for all roles in the playbook

We still have `_docker_` vs `_container_` inconsistencies.
These may be worked on later.
2025-02-24 11:38:47 +02:00
Slavi Pantaleev d6bf789710 Remove matrix_container_global_registry_prefix variable
This is done for a few reasons:

- less globals and more indepdendence for each role is better. We rely
  on various externally-hosted roles and they don't rely on this global
  either.

- `matrix_container_global_registry_prefix` could make people think they
  could just override this variable and have all their images pull from
  elsewhere. This is rarely the case, unless you've taken special care
  to mirror all the various components (from their respective
  registries) to your own. In such a case, you probably know what you're
  mirroring and can adjust individual variables.

- nowadays, various components live on different registries.
  With Docker Inc tightening rate limits for Docker Hub, it's even more
  likely that we'll see increased diversity in where images are hosted
2025-02-23 10:15:41 +02:00
Slavi Pantaleev d12643eb91 Do not use docker stop --time (deprecated in Docker v28 in favor of --timeout or just -t)
`-t` works on both old and new Docker versions, so it's best to use that.
2025-02-22 21:42:18 +02:00
Suguru Hirahara da378b75da Update files for go-skype-bridge: common comments for log levels
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2025-01-30 02:07:36 +09:00
Suguru Hirahara aaa6335053 Replace !someRoom with !qporfwt
!qporfwt is used as an example of a room ID on https://spec.matrix.org/v1.12/#room-structure

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-10-21 21:47:52 +09:00
Suguru Hirahara 1e8030810f Update internal room ID: !someRoom
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-10-21 21:47:02 +09:00
Suguru Hirahara 55fcaac1f1 Fix capitalization: matrix → Matrix
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-10-18 23:35:10 +09:00
Slavi Pantaleev ec5e379672 Update old references to com.devture.ansible.role.postgres & com.devture.ansible.role.traefik
Provoked by https://github.com/mother-of-all-self-hosting/mash-playbook/pull/280
2024-10-07 08:46:33 +03:00
Slavi Pantaleev 8445843562 Switch postgres/postgres-backup Ansible role sources and adjust variable names (devture_postgres_ -> postgres_) 2024-09-27 09:37:24 +03:00
David Mehren c89c356e53 Add a global config option for Docker network MTU (#3502)
* Add a global config option for Docker network MTU

* Upgrade systemd_docker_base (v1.2.0-0 -> v1.3.0-0)

The new version includes `devture_systemd_docker_base_container_networks_driver_options`
due to https://github.com/devture/com.devture.ansible.role.systemd_docker_base/commit/3cc7d1239654752da3e8f65760783a280a2b92f7

Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3502

* Switch from passing matrix_playbook_docker_network_mtu to respecting devture_systemd_docker_base_container_networks_driver_options

Related to:
- https://github.com/devture/com.devture.ansible.role.systemd_docker_base/commit/3cc7d1239654752da3e8f65760783a280a2b92f7
- https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3502

* Update all roles to versions that respect `devture_systemd_docker_base_container_networks_driver_options`

---------

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2024-09-18 16:20:27 +03:00
Slavi Pantaleev 9f2eff2ac7 Respect devture_systemd_docker_base_docker_service_name
Related to https://github.com/devture/com.devture.ansible.role.systemd_docker_base/commit/0241c71a4c08ff5e203b55d50a424387e3b077c8

Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3270#issuecomment-2143782962

With this change, it should be possible for people to adjust the Docker
dependency from `docker.service` to something else (e.g. `pkg-ContainerManager-dockerd.service`),
or to completely eliminate it by setting `devture_systemd_docker_base_docker_service_name` to an empty string.

This makes it easier for people to use the playbook against a Synology DSM server.
2024-06-04 13:14:34 +03:00
Slavi Pantaleev 3758b0cfeb Squashed commit of the following:
commit cf8637efaca0a0be3609fd6add0dff893a0a9194
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Sun Mar 24 19:14:57 2024 +0200

    Make devture_systemd_docker_base_ipv6_enabled automatically reconfigure geerlingguy/ansible-role-docker

    Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3218

commit dc7af3bc7d25f321bf409477d823e43ea8a05803
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Sun Mar 24 19:10:31 2024 +0200

    Replace matrix_ipv6_enabled with devture_systemd_docker_base_ipv6_enabled

    Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3218

commit 07e900d6a2
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Sun Mar 24 19:01:51 2024 +0200

    Improve matrix_ipv6_enabled comments

commit 3f03ca7f69
Author: Tilo Spannagel <development@tilosp.de>
Date:   Sat Mar 9 19:27:50 2024 +0000

    Add setting to enable ipv6
2024-03-24 19:15:43 +02:00
gardar 23aee07cf4 feat: global option to configure all bridges encryption default
Signed-off-by: gardar <gardar@users.noreply.github.com>
2024-03-24 02:58:03 +00:00
Slavi Pantaleev c0308307e2 Make homeserver services sleep after startup, instead of all dependencies sleeping separately
This is an attempt at optimizing service startup.

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

When services are all stopped fully and then started, the effect is not so pronounced, because
`matrix-synapse.service` starts first and pulls all worker services (defined as `Wants=` for it).
Later on, when the systemd service manager role "starts" these worker services, they're started already.
Even if they had a 5-second wait each, it would have happened in parallel.
2024-01-12 12:45:18 +02:00
Slavi Pantaleev 7ec6fd3dfe Make bridges/bots use matrix_addons_homeserver_client_api_url (instead of matrix_homeserver_container_url) 2024-01-07 17:04:23 +02:00
Slavi Pantaleev 493a9abafa Move matrix-bridge-go-skype-bridge to its own container network 2024-01-07 14:48:21 +02:00
Slavi Pantaleev 2511b34a7c Stop containers gracefully, instead of outright killing them 2023-12-06 11:52:23 +02:00
Samuel Meenzen c846ed199b Annotate version numbers with renovate metadata 2023-10-06 14:14:03 +02:00
Slavi Pantaleev 6427397486 Do not hardcode sslmode=disable to Postgres connection strings - make it configurable
This is backward-compatible with what we had before. We're not changing
the SSL mode - just making it configurable.

Most components are defaulting to `sslmode=disable`, while some
(`matrix-bot-matrix-reminder-bot` and others) do not specify an `sslmode` at all.

We're making sslmode configurable, because certain external Postgres
servers may be configured to require SSL encryption.
In such cases `sslmode=disable` does not work and needs to be changed to
`sslmode=require` or something else (`verify-ca`, `verify-full`, etc).
2023-08-22 19:40:50 +03:00
Aine 7399496d33 one var to control encryption across all bridges (#2629)
* one var to control encryption across all bridges

* move var to matrix-base
2023-04-05 14:59:48 +03:00
Slavi Pantaleev dddfee16bc Fix all 300+ ansible-lint-reported errors 2023-03-07 17:28:15 +02:00
Slavi Pantaleev 4b111d05d5 Pass devture_postgres_db_migration_request to com.devture.ansible.role.postgres in a cleaner way 2022-11-28 07:44:59 +02:00
Slavi Pantaleev 910cd9adf0 Replace import_role calls with include_role calls 2022-11-27 11:27:01 +02:00
Slavi Pantaleev 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
Slavi Pantaleev 7b43ef34b7 Remove more hardcoded matrix-postgres references 2022-11-27 09:16:18 +02:00
Slavi Pantaleev 04b9483f0d Switch from matrix-postgres to com.devture.ansible.role.postgres 2022-11-27 08:04:31 +02:00
Slavi Pantaleev fa523c6472 Remove blank lines 2022-11-25 17:36:42 +02:00
Slavi Pantaleev 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
Slavi Pantaleev 61f67d8f0a Add install-* tags for quicker runs 2022-11-25 16:02:51 +02:00
Slavi Pantaleev 7c2a7a8eb6 Replace most import_tasks calls with include_tasks for improved performance 2022-11-24 11:33:45 +02:00
Slavi Pantaleev 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
Slavi Pantaleev 0ea7cb5d18 Remove various init.yml files - initialize systemd services, etc., statically (not at runtime) 2022-11-23 11:45:46 +02:00
Slavi Pantaleev d3bd1ca024 matrix_*_retries_{count,delay} -> devture_playbook_help_*_retries_{count,delay} 2022-11-04 16:44:29 +02:00
Slavi Pantaleev 7086c0ebe3 matrix_host_command_sh -> devture_systemd_docker_base_host_command_sh (via com.devture.ansible.role.systemd_docker_base) 2022-11-04 16:40:25 +02:00
Slavi Pantaleev a9a81460ec matrix_host_command_docker -> devture_systemd_docker_base_host_command_docker (via com.devture.ansible.role.systemd_docker_base) 2022-11-04 16:39:35 +02:00
Slavi Pantaleev 835d2e9581 matrix_systemd_path -> devture_systemd_docker_base_systemd_path (via com.devture.ansible.role.systemd_docker_base) 2022-11-04 16:38:38 +02:00
Slavi Pantaleev f03f716989 matrix_systemd_unit_home_path -> devture_systemd_docker_base_systemd_unit_home_path (via com.devture.ansible.role.systemd_docker_base) 2022-11-04 16:37:47 +02:00
Slavi Pantaleev 410a915a8a Move roles/matrix* to roles/custom/matrix*
This paves the way for installing other roles into `roles/galaxy` using `ansible-galaxy`,
similar to how it's done in:

- https://github.com/spantaleev/gitea-docker-ansible-deploy
- https://github.com/spantaleev/nextcloud-docker-ansible-deploy

In the near future, we'll be removing a lot of the shared role code from here
and using upstream roles for it. Some of the core `matrix-*` roles have
already been extracted out into other reusable roles:

- https://github.com/devture/com.devture.ansible.role.postgres
- https://github.com/devture/com.devture.ansible.role.systemd_docker_base
- https://github.com/devture/com.devture.ansible.role.timesync
- https://github.com/devture/com.devture.ansible.role.vars_preserver
- https://github.com/devture/com.devture.ansible.role.playbook_runtime_messages
- https://github.com/devture/com.devture.ansible.role.playbook_help

We just need to migrate to those.
2022-11-03 09:11:29 +02:00