Skip to main content

ARA Records Ansible

Project description

ARA Records Ansible

doc/source/_static/ara-with-icon.png

ARA Records Ansible playbook runs and makes the recorded data available and intuitive for users and systems.

The project provides several distinct components in order to make this happen:

  • An API server for sending and querying data relative to playbook execution results

  • An API client library for communicating with the API

  • An Ansible callback plugin to record events as they happen throughout the execution

  • An Ansible action module to associate arbitrary key/values to your playbook reports

Quickstart

Here’s how you can get started from scratch with default settings:

# Create a 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 and the required ARA projects
pip install ansible git+https://github.com/openstack/ara@feature/1.0

# Tell Ansible to use the ARA callback plugin
export ANSIBLE_CALLBACK_PLUGINS="$(python -m ara.setup.callback_plugins)"

# Run your playbook as your normally would
ansible-playbook playbook.yml

The data will be saved in real time throughout the execution of the Ansible playbook.

What happens behind the scenes is that the ARA Ansible callback plugin used the built-in API client to send the data to the API which then saved it to a database located by default at ~/.ara/server/ansible.sqlite.

You’re now ready to start poking at the API with the built-in API clients !

If you’d like to have the ARA web reporting interface, take a look at ara-web.

Documentation

Documentation for installing, configuring, running and using ara is available on readthedocs.io.

Community and getting help

You can chat with the ARA community on Slack and IRC. The two are transparently bridged with teamchat which broadcasts messages from one platform to the other.

In addition, you can also find ARA on Twitter: @ARecordsAnsible

IRC

Slack

Development and testing

# Retrieve the source and check out the 1.0 branch
git clone https://github.com/openstack/ara
cd ara
git checkout feature/1.0

# Install tox from pip or from your distro packages
pip install tox

# Run Ansible integration tests with the latest version of Ansible
tox -e ansible-integration

# Run integration tests with a specific version of Ansible
# Note: tox will always use the latest version of Ansible to run the playbook which runs the tests.
# For example, if the latest version of Ansible is 2.7.9, it will use Ansible 2.7.9
# to install Ansible==2.6.15 in a virtual environment and 2.6.15 is what will be tested.
tox -e ansible-integration -- -e ara_tests_ansible_version=2.6.15

# Run integration tests with Ansible from source
tox -e ansible-integration -- -e "ara_tests_ansible_name=git+https://github.com/ansible/ansible"

# Run unit tests
tox -e py3

# Run linters (pep8, black, isort)
tox -e linters

# Run test server -> http://127.0.0.1:8000/api/v1/
tox -e runserver

# Build docs
tox -e docs

Contributors

See contributors on GitHub.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ara-1.0.0.0a4.tar.gz (513.0 kB view details)

Uploaded Source

Built Distribution

ara-1.0.0.0a4-py2.py3-none-any.whl (64.8 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file ara-1.0.0.0a4.tar.gz.

File metadata

  • Download URL: ara-1.0.0.0a4.tar.gz
  • Upload date:
  • Size: 513.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.5.2

File hashes

Hashes for ara-1.0.0.0a4.tar.gz
Algorithm Hash digest
SHA256 6ef20e0f234c7e5fe97e6803037842bb7f5206bf43d8c37b69a3ac6b181c7e96
MD5 970d5f7e15dcf40718ee8b0cc1ebc55a
BLAKE2b-256 9fce341e8fcc173ba9c8b309d9f8496e0d9be6d412ef56e31500da47e93f78e2

See more details on using hashes here.

File details

Details for the file ara-1.0.0.0a4-py2.py3-none-any.whl.

File metadata

  • Download URL: ara-1.0.0.0a4-py2.py3-none-any.whl
  • Upload date:
  • Size: 64.8 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.5.2

File hashes

Hashes for ara-1.0.0.0a4-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 3f1c1a98f25010f8f12e5e5d914c3368c6bc8eb25e3c040b8acee6372bd5d3cc
MD5 7401761ab404479e90694bad1baea7c5
BLAKE2b-256 a9fd1acb72cf28932a5f6a8974e31ed1cb3e58e67a6de6d7e2fd7235a87421e1

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page