Commit Graph
52 Commits
Author SHA1 Message Date
Slavi PantaleevandClaude Opus 5.5 bff3f54d53 Harden pre-start container cleanup against name-release races
Containers are created with `--rm`, so Docker removes them asynchronously after they stop.
The pre-start `docker rm` returns immediately while that removal is still in progress
(its error is suppressed), and the following `docker create --name` can fail with
"The container name ... is already in use".

This is easy to hit since systemd_service_manager switched its default restart mode to `all-at-once`:
many containers stop and start at the same time and Docker falls behind on removals.
The playbook then fails at "Restart systemd services needing restart at once",
even though the services recover on their own (`Restart=always`) a little later.

The external roles (MASH, devture) were hardened against this in 2026-03
(see mother-of-all-self-hosting/ansible-role-valkey@0ba79c0), but the roles in `roles/custom` never were.
This ports the same bounded cleanup loop to them: stop, force-remove,
and wait until Docker releases the name, failing explicitly after a timeout.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-16 19:04:04 +03:00
mdad-renovate[bot]andGitHub 3b0dd68394 Update ghcr.io/element-hq/element-call Docker tag to v0.28.0 2026-10-13 19:27:02 +00:00
mdad-renovate[bot]andGitHub 2e1641ea84 Update ghcr.io/element-hq/element-call Docker tag to v0.27.0 2026-10-06 15:18:50 +00:00
mdad-renovate[bot]andGitHub c1353344cd Update ghcr.io/element-hq/element-call Docker tag to v0.26.1 2026-09-28 15:29:13 +00:00
mdad-renovate[bot]andGitHub da84b38c6d Update ghcr.io/element-hq/element-call Docker tag to v0.26.0 2026-09-17 07:41:09 +00:00
mdad-renovate[bot]andGitHub 145b39c6df Update ghcr.io/element-hq/element-call Docker tag to v0.25.0 2026-09-01 18:45:17 +00:00
Slavi Pantaleev 9dc72e45a8 Test matrix-element-call with Molecule 2026-08-31 08:32:52 +03:00
renovate[bot]andSlavi Pantaleev 0023616d69 Update ghcr.io/element-hq/element-call Docker tag to v0.24.0 2026-08-19 08:07:01 +03:00
renovate[bot]andSlavi Pantaleev 6a17ec91d6 Update ghcr.io/element-hq/element-call Docker tag to v0.23.0 2026-08-04 16:29:58 +03:00
renovate[bot]andSlavi Pantaleev c22fc41aae Update ghcr.io/element-hq/element-call Docker tag to v0.22.0 2026-07-20 21:50:01 +03:00
renovate[bot]andSlavi Pantaleev d1d116b519 Update ghcr.io/element-hq/element-call Docker tag to v0.21.0 2026-07-07 20:19:59 +03:00
renovate[bot]andSlavi Pantaleev b897b45191 Update ghcr.io/element-hq/element-call Docker tag to v0.20.3 2026-06-29 19:26:21 +03:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
37d8cf4f2c Update ghcr.io/element-hq/element-call Docker tag to v0.20.2 (#5351)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-22 18:13:17 +01:00
bd6e08a93e Allow host network mode for MDAD-managed containers (#5310)
* feat: support container_network=host across all roles + systemd templates

Mirror the pattern Slavi introduced for matrix-coturn (aafa8f0) across the
fork: every 'Ensure X container network is created' task gets a
'when: <var> not in ["", "host"]' guard so MDAD does not try to
docker_network create a network literally named 'host' (returns 403,
since host is a pre-defined Docker network).

Mirror the same guard in every systemd unit template that does
'ExecStartPre=docker network connect <addnet> <container>' loops over
matrix_<role>_container_additional_networks: skip the connects when the
container is on host networking (where additional --network attaches
are invalid).

Unblocks DiD setups where MDAD-managed containers share their host's
network namespace (matrix-mdad outer compose service joined to central
postgres/openldap networks) to reach external services on the outer
Docker daemon.

* Simplify container network guards (!= 'host') and fix duplicate when

Guarding on the empty string ('') as well was misleading: systemd unit
templates still render an unconditional --network= flag, so an empty
network value produces a broken docker create command. Only 'host' is
actually supported, so only guard on that. This also matches the
existing convention in the Traefik role
(when: traefik_container_network != 'host').

Also fix a duplicate when key in the meshtastic-relay role, where the
network-creation task already had a when condition - the two are now
combined into a list.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

---------

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 23:48:03 +03:00
renovate[bot]andSlavi Pantaleev 9342507f8a Update ghcr.io/element-hq/element-call Docker tag to v0.20.1 2026-06-08 14:53:02 +03:00
renovate[bot]andSlavi Pantaleev c93bdba01c Update ghcr.io/element-hq/element-call Docker tag to v0.20.0 2026-05-26 15:14:05 +03:00
renovate[bot]andSlavi Pantaleev 9bd9d1af07 Update ghcr.io/element-hq/element-call Docker tag to v0.19.4 2026-05-21 13:52:28 +03:00
renovate[bot]andSlavi Pantaleev ca74857835 Update ghcr.io/element-hq/element-call Docker tag to v0.19.3 2026-05-11 18:44:10 +03:00
Slavi PantaleevandClaude Opus 4.7 a721125568 matrix-element-call: switch to modern community.docker docker_image modules
Replaces `community.docker.docker_image` with the modern
`docker_image_pull` module. Drops the `ansible_version` compatibility
ladder and the now-redundant `_container_image_force_pull` variable
(the new pull module handles registry refresh natively via `pull: always`).

Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/5191.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-04 22:14:21 +03:00
renovate[bot]andSlavi Pantaleev e155ac3f94 Update ghcr.io/element-hq/element-call Docker tag to v0.19.2 2026-04-27 13:26:22 +03:00
renovate[bot]andSlavi Pantaleev 83808b391b chore(deps): update ghcr.io/element-hq/element-call docker tag to v0.19.1 2026-04-16 16:41:19 +03:00
renovate[bot]andSlavi Pantaleev 1eba43043b chore(deps): update ghcr.io/element-hq/element-call docker tag to v0.19.0 2026-04-06 15:56:28 +03:00
Slavi PantaleevandClaude Opus 4.6 d3241588e3 Add conditional restart support to 7 roles that previously always restarted
Replace hardcoded restart_necessary: true with computed values for:
conduit, continuwuity, dendrite, element-call, media-repo,
appservice-kakaotalk, and wechat.

Each role now registers results from config, support files, systemd service,
and docker image pull tasks, then computes a restart_necessary variable
from their combined .changed state. group_vars/matrix_servers is updated
to reference these variables instead of hardcoding true.

For dendrite, the systemd service template was also separated out of the
combined support-files with_items loop so it can be independently tracked.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 06:45:58 +02:00
renovate[bot]andSlavi Pantaleev c3156a1a99 chore(deps): update ghcr.io/element-hq/element-call docker tag to v0.18.0 2026-03-16 23:19:11 +02:00
renovate[bot]andSlavi Pantaleev b98a6d39c9 chore(deps): update ghcr.io/element-hq/element-call docker tag to v0.17.0 2026-02-24 22:55:31 +02:00
QEDeDandSlavi Pantaleev f0f496b6ba Quote YAML mode values to satisfy octal lint rules 2026-02-16 13:19:10 +02:00
Kim BroseandSlavi Pantaleev f8f7406c51 Stop using deprecated vars variable for matrix-element-call 2025-12-02 20:10:35 +02:00
renovate[bot]andSlavi Pantaleev d5709e4596 chore(deps): update ghcr.io/element-hq/element-call docker tag to v0.16.3 2025-12-02 18:07:14 +02:00
renovate[bot]andSlavi Pantaleev 93e45e6173 chore(deps): update ghcr.io/element-hq/element-call docker tag to v0.16.1 2025-10-24 06:23:44 +03:00
Slavi Pantaleev 3bf56e931d Add support for Element Admin 2025-10-02 14:58:48 +03:00
renovate[bot]andSlavi Pantaleev 90d3cf78b3 chore(deps): update ghcr.io/element-hq/element-call docker tag to v0.16.0 2025-09-24 18:24:48 +03:00
renovate[bot]andSlavi Pantaleev 5deead45cd Update ghcr.io/element-hq/element-call Docker tag to v0.15.0 2025-08-27 08:27:01 +03:00
renovate[bot]andSlavi Pantaleev e395857a14 Update ghcr.io/element-hq/element-call Docker tag to v0.14.1 2025-08-05 09:14:23 +03:00
renovate[bot]andSlavi Pantaleev 2f429411f3 Update ghcr.io/element-hq/element-call Docker tag to v0.14.0 2025-07-31 14:46:23 +03:00
Slavi Pantaleev d4c168daa9 Do not use docker stop --time (deprecated in Docker v28 in favor of --timeout or just -t) 2025-07-30 06:48:33 +03:00
Slavi Pantaleev f2524902af Cast variables to string before running length on them when checking if a variable contains a value
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/4445
2025-07-26 18:13:07 +03:00
Slavi Pantaleev 51ab9ed9ff Adjust lstrip_blocks to use a bool value for compatibility with ansible-core>=2.19.0
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/4445
2025-07-26 17:58:12 +03:00
renovate[bot]andSlavi Pantaleev 5987bc5b5e Update ghcr.io/element-hq/element-call Docker tag to v0.13.1 2025-07-03 20:27:45 +03:00
renovate[bot]andSlavi Pantaleev 9adfd8fc0d Update ghcr.io/element-hq/element-call Docker tag to v0.13.0 2025-07-01 20:14:38 +03:00
renovate[bot]andSlavi Pantaleev 9b8dab89df Update ghcr.io/element-hq/element-call Docker tag to v0.12.2 2025-06-06 08:26:08 +03:00
Suguru HiraharaandSlavi Pantaleev 17e14a4b89 Enable pre-commit
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2025-06-03 10:36:00 +03:00
renovate[bot]andSlavi Pantaleev 2087c13a4e Update ghcr.io/element-hq/element-call Docker tag to v0.12.0 2025-05-28 17:06:43 +03:00
renovate[bot]andSlavi Pantaleev 3c08f008bc Update ghcr.io/element-hq/element-call Docker tag to v0.11.1 2025-05-19 15:42:30 +03:00
renovate[bot]andSlavi Pantaleev 31effafc08 Update ghcr.io/element-hq/element-call Docker tag to v0.11.0 2025-05-16 19:06:57 +03:00
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
renovate[bot]andSlavi Pantaleev 41ac053912 Update ghcr.io/element-hq/element-call Docker tag to v0.10.0 2025-04-26 06:44:24 +03:00
Slavi PantaleevandGitHub 7cb33c5519 Add support for easily installing the Matrix RTC stack, without the Element Call frontend (#4242) 2025-04-09 16:49:18 +03:00
renovate[bot]andSlavi Pantaleev 64b3aeb1e0 Update ghcr.io/element-hq/element-call Docker tag to v0.9.0 2025-03-28 21:52:44 +02:00
Benjamin BlacherandSlavi Pantaleev 01760a3ef7 Add renovate to element-call 2025-03-26 10:56:37 +02:00