
Add a first bit of documentation around the workflow for recording data. Change-Id: I9456b71c94e9097ea93394f8f7c33cd272586cc5
1.4 KiB
1.4 KiB
Architecture and Workflows
Recording data from Ansible
- A human (or a system, script, etc.) installs ARA and configures Ansible to use the ARA callback
- A human (or a system, script, etc.) executes an
ansible-playbook
command - Ansible sends hooks for every event to callback
plugins (
v2_playbook_on_start
,v2_runner_on_failed
, etc.) - The callback plugin, provided by ara-plugins, organizes the data sent by Ansible and sends it to the API client
- The API client, provided by ara-clients, takes care of actually sending the data to the API over HTTP or locally offline through an internal implementation
- The API server, provided by ara-server, receives the POST from the client, validates it and sends it to the database model backend
- The API server sends a response back to the client with the results
- The API client sends the response back to the callback with the results
- The callback plugin returns, ending the callback hook
- Ansible continues running until it is complete (back to step 2)