Repository navigation
Development
Rui edited this page Nov 3, 2026
·
1 revision
CI runs the same:
yamllint .
ansible-lint
ansible-playbook --syntax-check daily-driver.yml
pytest tests/-
tests/test_consistency.pychecks that the README lists every runnable tag, every role has a row inroles/README.md, the zsh / tmux plugins are pinned to a full commit and Renovate's regex finds each one, and the Galaxy and CI versions are pinned. -
.ansible-linthas askip_listof rules deliberately deferred rather than turned off; each entry says what it covers.
- Lint (Ubuntu): yamllint, ansible-lint, syntax check, pytest.
-
Check mode (macOS): clones the dotfiles, runs the
tapstag for real (a tap isn't added in check mode, and installing from it would then fail), then the whole playbook with--checkand no sudo password. It catches what the syntax check can't: an undefined variable, awhenon a missing result. - The Galaxy collections are cached on
requirements.yml, so CI downloads them only when it changes: Galaxy now and then answers 500, sometimes for hours.scripts/install-collections.shdownloads them, and when Galaxy fails installs the same versions from their GitHub repos (ansible-collections/<name>at the tag<version>).
Renovate (renovate.json, the Renovate GitHub app), on the 1st and 15th:
- the GitHub Actions (pinned to a commit, the version in a comment)
- the CI lint tools in
requirements-ci.txt - the zsh and tmux plugins pinned to a commit (
zsh_plugins,tmux_plugins), in one PR, moved to master's newest commit
The Galaxy collections in requirements.yml are not updated automatically.
- A new tool: in the role and task file that fits, with its own tag; if it adds a runnable tag (a new task file), list it in the README's tags section (the test fails otherwise).
-
A new role: a row in
roles/README.md, with a link to its README if it has one. -
Something the dotfiles install: in the dotfiles'
install.sh, not here; a file copied to~goes in the dotfiles'home-fileslist. -
A pinned plugin: a full commit in
zsh_plugins/tmux_plugins, in the layout Renovate's regex expects.