Commit Graph
14 Commits
Author SHA1 Message Date
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 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
mcnesiumandSlavi Pantaleev aa6f6a89e6 add option to source local envs 2026-10-09 17:43:51 +03:00
Slavi Pantaleev 312cfe9b41 Add prek-based pre-commit workflow 2026-03-22 16:44:04 +02:00
Samuel MeenzenandGitHub 0afc4f1427 chore: fix nix flake (#3259) 2024-04-09 10:22:45 +03:00
Slavi Pantaleev 2f457b2a23 Remove inventory/ directory tree to allow people to manage it as a git repository (etc.)
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3086
2024-01-09 19:08:43 +02:00
Alexis Yushin ba1d665bd9 make smtp tls configurable / optional 2023-07-27 11:26:15 +02:00
Lilith Schier e323ab31d5 Added a nix flake 2023-04-16 19:04:35 +00:00
Slavi Pantaleev a3319b1dc2 Adjust .gitignore
Related to 410a915a8a
2022-11-03 09:16:54 +02:00
dhose 1f9c173a7e Adding '.python-version' to .gitignore 2020-10-06 11:42:32 +02:00
Olaf Schoenwald 48a6525aca Removes DS_Store 2020-09-12 23:26:27 +02:00
teutat3s f9d39f1c0c update Jitsi, add generate-jitsi-passwords script 2020-04-08 02:07:52 +02:00
Slavi Pantaleev 37f3a2d5a8 Add support for themes to riot-web 2020-02-26 08:40:35 +02:00
Slavi Pantaleev 87f5883f24 Initial commit 2017-07-31 23:08:20 +03:00