ansible/ansible
Systems
The internal building blocks of ansible-core. These are the cross-cutting subsystems that the apps sit on top of and the plugins hook into. They don't map to a single user-facing CLI; they're the shared machinery.
What's in this section
| Page | Subsystem | Code path |
|---|---|---|
| Executor | Task scheduler: PlaybookExecutor → TQM → strategies → workers → TaskExecutor | lib/ansible/executor/ + lib/ansible/plugins/strategy/ |
| Plugin loader | Discovers and instantiates plugins across built-in, collections, and user paths | lib/ansible/plugins/loader.py + lib/ansible/utils/collection_loader/ |
| Templating | Hardened Jinja2 with trust tagging — the {{ ... }} engine |
lib/ansible/_internal/_templating/ + lib/ansible/template/ |
| Module execution and AnsiBallZ | Wraps a module + its module_utils into a self-contained Python archive shipped to remote hosts | lib/ansible/executor/module_common.py + lib/ansible/_internal/_ansiballz/ |
| Vault encryption | AES-encrypted variables and files at rest | lib/ansible/parsing/vault/ |
| Configuration | Layered config from defaults, ansible.cfg, env, and CLI | lib/ansible/config/ + lib/ansible/utils/path.py |
How they relate
graph TD
CLI["CLI base<br/>lib/ansible/cli/__init__.py"] --> CFG[Configuration]
CLI --> PL[Plugin loader]
CLI --> EX[Executor]
EX --> PL
EX --> AZ[AnsiBallZ]
EX --> TPL[Templating]
AZ --> PL
TPL --> PL
CLI --> VLT[Vault]
PL --> CL[Collection loader]- Configuration runs first. Almost every other system reads it.
- Plugin loader is initialized early by every CLI; it imports the collection loader.
- Templating is consulted whenever a value is rendered (which is constantly).
- Executor drives the playbook lifecycle; it talks to the plugin loader to find action/connection/strategy plugins.
- AnsiBallZ is invoked from action plugins inside the executor's worker children.
- Vault is loaded by the dataloader, also early.
Cross-links
- Apps for what sits on top.
- Plugins for the user-extensible interfaces these systems expose.
- Primitives for the playbook objects the executor walks.
Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.