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.
This project provides the ARA API as well as the Ansible components.
For the web client interface, see ara-web.
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
database at ~/.ara/server/ansible.sqlite
.
You can browse this data through the API by executing ara-manage runserver
and pointing your browser at http://127.0.0.1:8000/.
That's it !
You can find live demos deployed by the built-in ara_api and ara_web Ansible roles at https://api.demo.recordsansible.org and https://web.demo.recordsansible.org.
Documentation for installing, configuring, running and using ARA is available on readthedocs.io.
- Bugs, issues and enhancements: https://github.com/ansible-community/ara/issues
- IRC: #ara on Freenode
- Slack: https://arecordsansible.slack.com (invitation link)
- Website and blog: https://ara.recordsansible.org
- Twitter: https://twitter.com/arecordsansible
See contributors on GitHub.
Copyright (c) 2019 Red Hat, Inc. ARA Records Ansible is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. ARA Records Ansible is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with ARA Records Ansible. If not, see <http://www.gnu.org/licenses/>.