1.8 KiB
AIM --- Ansible Inventory Manager
AIM is an operator-focused Python application for managing Ansible customer inventories, access configuration, Vaults and curated playbook execution.
Source layout
/etc/ansible/scripts/
├── README.md
├── install.md
├── CHANGELOG.md
├── docs/
├── pyproject.toml
└── src/
└── aim/
AIM uses /etc/ansible/inventories/<customer>/hosts.yml as the
inventory source of truth.
Supported platform groups
linuxwindowssophosxgspfsense
A host can belong to multiple groups/subgroups. Platform groups remain the top-level groups because they define Ansible connection semantics.
Quick start
See install.md for installation, virtual-environment setup, authorization-group configuration and recovery of Git-ignored runtime data.
Start AIM with:
aim
Useful UI troubleshooting modes:
aim --no-clear
aim --plain
aim --live-output
Documentation
- Installation
- Operations
- Inventory
- Windows / WinRM / AD
- Recovery
- Security and sensitive data
- Development
- Changelog
Important operational rules
AIM does not use .hosts.tsv as inventory state. hosts.yml is
authoritative.
Routine host changes use local YAML validation and do not unnecessarily
prompt for the Vault password. Explicit inventory validation may invoke
ansible-inventory and request the customer Vault password when a Vault
exists.
Existing customer-specific values and arbitrary valid YAML structures should be preserved unless an operator explicitly requests an operation that changes them.