ARA Records Ansible playbooks and makes them easier to understand and troubleshoot.
ARA saves playbook results to a local or remote database by using an Ansible callback plugin and provides an API to integrate this data in tools and interfaces.
Simplicity is a core feature in ARA. It does one thing and it does it well: reporting on your Ansible playbooks.
Here's how you can get started from scratch with sane defaults:
# Create a python3 virtual environment and activate it so we don't conflict # with system or distribution packages python3 -m venv ~/.ara/virtualenv source ~/.ara/virtualenv/bin/activate # Install Ansible, ARA and it's API server dependencies pip install ansible ara[server] # Tell Ansible to use the ARA callback plugin export ANSIBLE_CALLBACK_PLUGINS="$(python -m ara.setup.callback_plugins)" # Run your playbook as usual ansible-playbook playbook.yml
If nothing went wrong, your playbook data should have been saved in a local
You can browse this data through the API by executing
and pointing your browser at http://127.0.0.1:8000/.
That's it !
ARA is free and open source under the GPLv3 license.
The code review and CI infrastructure is hosted by OpenDev.
Each new commit to ARA is gated against a series of unit and integration tests against different Linux distributions and versions of Ansible in order to prevent regressions.
ARA is used to record more than a million playbooks a month from the OpenStack community alone.
Running Ansible from your laptop ? No problem.
You can browse your ARA reports locally from a sqlite database without ever leaving the comfort of localhost.
Need to aggregate data from multiple locations ? You can run an API server and hook it up to a database engine like PostgreSQL or MySQL.