Commit Graph
12340 Commits
Author SHA1 Message Date
mdad-renovate[bot]andGitHub 12af530673 Update ghcr.io/etkecc/ketesa Docker tag to v1.5.2 2026-10-25 16:19:48 +00:00
Slavi PantaleevandClaude Opus 5.5 8e50e589a7 Update links to the MASH playbook's service documentation
The MASH playbook moved each service's documentation from
docs/services/<service>.md to components/<component>/README.md.
The Jitsi link now points at the section with the subpath notes
(the `#url` anchor no longer existed).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-25 16:20:30 +02:00
Slavi PantaleevandClaude Opus 5.5 415d784ca0 Find Ansible's interpreter also behind python-exec and wrapper scripts
On Gentoo, the shebang of `ansible-playbook` is the python-exec
dispatcher (`#!/usr/bin/python-exec2c`), which bin/ansible-python.sh
took for an interpreter, because its name starts with `python`.
python-exec only runs the programs it wraps, so every `just run…`
recipe failed with "no python-exec wrapped executable found".

Now only names like `python`, `python3` or `python3.14` are trusted.
For anything else (python-exec, wrapper scripts as on Nix), Ansible is
asked which interpreter it runs on (`ansible-playbook --version`),
before falling back to `python3`, which may lack PyYAML (e.g. in an
active virtualenv).

Same as https://github.com/mother-of-all-self-hosting/mash-playbook/commit/a685940a

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-25 13:33:34 +02:00
mdad-renovate[bot]andGitHub c4eee6cb62 Update docker.io/livekit/livekit-server Docker tag to v1.13.11 2026-10-25 11:29:38 +00:00
Slavi PantaleevandClaude Opus 5.5 3d20ddf8df i18n: call just through just_executable()
The i18n justfile's default recipe ran `just` by name, which fails where
`just` is installed as `rust-just` (e.g. with pip or npm). The main
justfile already uses `just_executable()`.

Related to https://github.com/mother-of-all-self-hosting/mash-playbook/issues/3728

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-25 10:46:41 +02:00
Slavi PantaleevandClaude Opus 5.5 8c38b79856 Ignore Python bytecode caches
Importing the playbook's Python scripts or tests (e.g. with
`python -m unittest`) creates __pycache__ directories, which show up
as untracked files and fail the REUSE pre-commit hook.

The same change in mash-playbook:
https://github.com/mother-of-all-self-hosting/mash-playbook/commit/53bb9f27

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-25 10:45:50 +02:00
Slavi PantaleevandClaude Opus 5.5 5274815c62 Install missing and outdated roles before running the playbook
Pulling a playbook update which adds roles or bumps their versions
required running `just roles` before the playbook could use them.
Otherwise, the run failed on a missing role or used an outdated one.

`just run`, and so `just install-all`, `just setup-all` and the other
recipes based on it, as well as `just register-user`, now first install
missing and outdated roles, the same way `just roles` does: roles with
local changes are kept (with a warning), as are symlinked roles and
roles containing a `.git` directory. When all roles are up to date,
nothing is downloaded and nothing is printed.

The same change in mash-playbook:
https://github.com/mother-of-all-self-hosting/mash-playbook/commit/75b1c3ac

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-25 09:42:48 +02:00
Slavi PantaleevandClaude Opus 5.5 bcb862c7ff Install roles without throwing away local changes
agru replaces an installed role whenever its version differs from the
pinned one, and also when the role has no install information. It
replaces a symlinked role with a fresh copy. ansible-galaxy was run on
an emptied roles/galaxy every time. Roles being worked on in
roles/galaxy could thus silently lose their changes.

bin/install-roles.py (run through bin/ansible-python.sh, so PyYAML
needs no separate installation) now decides which roles need to be
(re)installed and only passes those to agru or ansible-galaxy:

- missing roles are installed, and outdated roles are replaced
- outdated roles which were changed since they were installed are kept,
  with a warning. Changes are detected by comparing the role's contents
  with a checksum recorded at installation, in run/installed-roles.yml.
  Roles installed before (without a checksum) are considered unchanged.
- outdated roles which were not installed by agru or ansible-galaxy
  are kept, with a warning
- symlinked roles and roles containing a `.git` directory are never
  touched

`just roles --force` replaces changed roles too. `just update -u` now
only updates the pinned versions with agru and leaves installing the
roles to the script, so that it keeps changed roles as well.

The same script in mash-playbook (where its tests live, and where it
also deletes the roles of services no longer in use):
https://github.com/mother-of-all-self-hosting/mash-playbook/commit/d5c5e0ce
https://github.com/mother-of-all-self-hosting/mash-playbook/commit/608a7943

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-25 09:41:34 +02:00
Slavi PantaleevandClaude Opus 5.5 a029d6f336 Add a way to run Python scripts with the interpreter which runs Ansible
bin/ansible-python.sh runs Python with the interpreter named in the
first line of `ansible-playbook`. That interpreter has PyYAML, since
Ansible depends on it, even when Ansible is installed in an environment
of its own (e.g. with pipx), where the system's `python3` may lack it.
If it is not a Python interpreter (e.g. `ansible-playbook` is a wrapper
script), or Ansible is missing, `python3` is used.

Role installation, which needs PyYAML, is the first to use it in the
next commit, so that it works without installing PyYAML separately.

The same script in mash-playbook (where its tests live):
https://github.com/mother-of-all-self-hosting/mash-playbook/commit/1fe0f90f

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-25 09:40:02 +02:00
artidezi-etke-cc[bot]andGitHub cccf423e51 Merge pull request #5695 from spantaleev/renovate/etherpad-3.x
Update dependency etherpad to v3.3.11-0
2026-10-25 06:15:53 +00:00
mdad-renovate[bot]andGitHub 218c4bcd8e Update ghcr.io/etkecc/baibot Docker tag to v1.29.1 2026-10-25 06:09:22 +00:00
mdad-renovate[bot]andGitHub 2b22fac9eb Update dependency etherpad to v3.3.11-0 2026-10-25 06:09:15 +00:00
Slavi PantaleevandClaude Opus 5.5 87815d5bf7 Check just update flags before pulling the playbook
`just update` pulled the playbook first and only then looked at its
flags. An unknown flag printed a message and was then passed to agru
anyway, and `-u` without agru was silently ignored.

Both now stop `just update` with an error, before anything is pulled.

The same change in mash-playbook:
https://github.com/mother-of-all-self-hosting/mash-playbook/commit/0598aa82

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-25 08:02:02 +02:00
Slavi PantaleevandClaude Opus 5.5 3d711ab33f Install roles on just update through _install-roles
`just update` had its own copy of the agru and ansible-galaxy calls.
It now installs roles through `_install-roles`, like `just roles`.
With `-u` (and agru), it still updates the role versions pinned in
requirements.yml, which also installs them.

The same change in mash-playbook (which additionally regenerates its
optimized files there):
https://github.com/mother-of-all-self-hosting/mash-playbook/commit/32db6a41

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-25 08:00:28 +02:00
Slavi PantaleevandClaude Opus 5.5 ee7da45e1f Install roles through a shared _install-roles recipe
`just roles` and `just update` each had their own copy of the agru and
ansible-galaxy calls. Move them to a private `_install-roles` recipe,
used by `just roles` for now, so that `just update` can use it too.

The same change in mash-playbook:
https://github.com/mother-of-all-self-hosting/mash-playbook/commit/6433a355

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-25 07:59:05 +02:00
artidezi-etke-cc[bot]andGitHub 21ade85a08 Merge pull request #5694 from spantaleev/renovate/ntfy-2.x
Update dependency ntfy to v2.34.0-0
2026-10-24 23:26:58 +00:00
mdad-renovate[bot]andGitHub e7213c3b94 Update dependency ntfy to v2.34.0-0 2026-10-24 23:15:31 +00:00
mdad-renovate[bot]andGitHub 504f158cd1 Update ghcr.io/etkecc/fluffychat-web Docker tag to v2.11.3 2026-10-24 23:15:26 +00:00
artidezi-etke-cc[bot]andGitHub f02eca3d2b Merge pull request #5693 from spantaleev/renovate/etherpad-3.x
Update dependency etherpad to v3.3.10-0
2026-10-23 22:18:54 +00:00
mdad-renovate[bot]andGitHub 885d42e1b4 Update ghcr.io/element-hq/synapse Docker tag to v1.163.2 2026-10-23 22:11:52 +00:00
mdad-renovate[bot]andGitHub 239eafd96d Update dependency etherpad to v3.3.10-0 2026-10-23 22:11:44 +00:00
QEDeDandSlavi Pantaleev a52e987652 Fix renamed Postgres process argument variables in tuning docs
ansible-role-postgres v18.6-2 renamed the
`postgres_postgres_process_extra_arguments_*` variables to
`postgres_process_extra_arguments_*`. Its validation now stops the
playbook when an old name is set, so a configuration copied from the
"Tuning PostgreSQL" section fails.
2026-10-23 19:22:06 +03:00
artidezi-etke-cc[bot]andGitHub 7ce016c63a Merge pull request #5691 from spantaleev/renovate/ntfy-2.x
Update dependency ntfy to v2.33.1-0
2026-10-23 13:42:44 +00:00
artidezi-etke-cc[bot]andGitHub 73e7bde72d Merge pull request #5690 from spantaleev/renovate/etherpad-3.x
Update dependency etherpad to v3.3.9-1
2026-10-23 13:40:27 +00:00
mdad-renovate[bot]andGitHub 540b9def7b Update dependency ntfy to v2.33.1-0 2026-10-23 13:28:03 +00:00
mdad-renovate[bot]andGitHub f3e9ed6e52 Update dependency etherpad to v3.3.9-1 2026-10-23 13:27:55 +00:00
mdad-renovate[bot]andGitHub 6c81120c44 Update dependency certifi to v2026.10.23 2026-10-23 13:27:51 +00:00
mdad-renovate[bot]andGitHub 2a60175505 Update ghcr.io/etkecc/fluffychat-web Docker tag to v2.11.2 2026-10-23 07:33:11 +00:00
artidezi-etke-cc[bot]andGitHub 935bfa6558 Merge pull request #5689 from spantaleev/renovate/exim_relay-4.x
Update dependency exim_relay to v4.99.5-r0-2-0
2026-10-23 06:36:33 +00:00
mdad-renovate[bot]andGitHub 2f8477ec5f Update ghcr.io/element-hq/synapse Docker tag to v1.163.1 2026-10-22 22:21:51 +00:00
mdad-renovate[bot]andGitHub d780c7103c Update ghcr.io/element-hq/matrix-authentication-service Docker tag to v1.27.1 2026-10-22 18:34:09 +00:00
mdad-renovate[bot]andGitHub 175c46bfa2 Update dependency exim_relay to v4.99.5-r0-2-0 2026-10-22 18:34:00 +00:00
Suguru Hirahara f86f8fe191 Set default database for Etherpad on the playbook
Its default value on ansible-role-etherpad is soon to be removed.

Signed-off-by: Suguru Hirahara <did:key:z6MkvVZk1A3KBApWJXv2Ju4H14ErDfRGxh8zxdXSZ4vACDg5>
2026-10-22 09:36:10 -07:00
mdad-renovate[bot]andGitHub a4b9dc640b Update oci.element.io/element-admin Docker tag to v0.1.18 2026-10-22 13:52:35 +00:00
mdad-renovate[bot]andGitHub b70a5b60f7 Update astral-sh/setup-uv action to v10.3.2 2026-10-22 13:49:21 +00:00
artidezi-etke-cc[bot]andGitHub 8623dc4134 Merge pull request #5688 from spantaleev/renovate/ghcr.io-devture-ansible-14.x
Update ghcr.io/devture/ansible Docker tag to v14.0.0-r0-10
2026-10-22 07:49:29 +00:00
mdad-renovate[bot]andGitHub bc72aa9b88 Update ghcr.io/devture/ansible Docker tag to v14.0.0-r0-10 2026-10-22 07:36:38 +00:00
mdad-renovate[bot]andGitHub ca8e81075f Update actions/setup-python digest to 6d4fd22 2026-10-22 07:36:33 +00:00
Suguru Hirahara 752dba8f68 Update docs/installing.md: mention the MASH playbook
Signed-off-by: Suguru Hirahara <did:key:z6MkvVZk1A3KBApWJXv2Ju4H14ErDfRGxh8zxdXSZ4vACDg5>
2026-10-21 20:18:40 -07:00
mdad-renovate[bot]andGitHub 7c0750c6b7 Update nginx Docker tag to v1.31.8 2026-10-22 01:33:08 +00:00
artidezi-etke-cc[bot]andGitHub 76fdf3a521 Merge pull request #5687 from spantaleev/renovate/prometheus-3.x
Update dependency prometheus to v3.15.1-0
2026-10-21 22:31:39 +00:00
mdad-renovate[bot]andGitHub 9ab90ee39a Update dependency prometheus to v3.15.1-0 2026-10-21 22:22:36 +00:00
mdad-renovate[bot]andGitHub afec2eb041 Update astral-sh/setup-uv action to v10.3.1 2026-10-21 22:22:31 +00:00
Andrew KvalheimandSlavi Pantaleev 712513f1cd Use portable shebang in pre-commit hook
Resolves:

    $ pre-commit run --all-files
    […]
    Check examples/vars.yml migration version matches expected....................................Failed
    - hook id: check-examples-vars-migration-version
    - exit code: 1

    Executable `/bin/bash` not found
2026-10-21 21:58:24 +03:00
Slavi PantaleevandGitHub ee950159c7 Merge pull request #5685 from spantaleev/fix/molecule-python-renovate-cap
Keep Molecule Python updates within Ansible support
2026-10-21 16:09:33 +03:00
Slavi Pantaleev 4da1b09c64 Keep Molecule Python updates within Ansible support 2026-10-21 16:03:31 +03:00
Slavi PantaleevandQEDeD 053ee6a755 Check group-vars Jinja syntax in pre-commit
Port the syntax-only checker from MASH PR #3613, including its hook triggers and YAML diagnostics. Check both group_vars/matrix_servers and group_vars/jitsi_jvb_servers when either file, the checker, or the hook configuration changes.

Source: https://github.com/mother-of-all-self-hosting/mash-playbook/pull/3613

Co-authored-by: QEDeD <pope-jellied-hull@duck.com>
2026-10-21 15:59:25 +03:00
artidezi-etke-cc[bot]andGitHub 8a2968670e Merge pull request #5681 from spantaleev/renovate/oci.element.io-element-admin-0.x
Update oci.element.io/element-admin Docker tag to v0.1.17
2026-10-21 12:19:06 +00:00
Slavi PantaleevandGitHub d9c9400b4a Merge branch 'master' into renovate/oci.element.io-element-admin-0.x 2026-10-21 14:59:17 +03:00
Slavi PantaleevandGitHub d8e7384161 Merge pull request #5682 from spantaleev/fix/molecule-python-314
Pin Molecule CI to supported Python 3.14
2026-10-21 14:59:14 +03:00