mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-13 22:26:49 +00:00
disable= now drops providers left with no surviving parent, not only the named provider roles. Compose (init) and swarm (derive_includes) share one reachability cut: BFS from the surviving primaries over dependency + service edges with disabled roles as cut-nodes. No-disable deploys stay byte-identical. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Role Utilities 🧩
Helpers under utils/roles/ operate on Ansible role artefacts and the dictionaries that mirror them at runtime.
Scope 📋
Modules in utils/roles/ MUST stay focused on data that originates from roles/<role>/ (meta/services.yml, meta/main.yml, vars/, defaults/) or the runtime dictionary that mirrors those files (applications).
Modules in utils/roles/ MUST NOT depend on Ansible plugin loader internals at import time so the same code can be imported from filter plugins, lookup plugins, library modules, the CLI, and tests.
Subpackages 📦
- applications/ helpers around the central
applicationsdict and the role config that feeds it.