Skip to content

@dmsimard dmsimard tagged this Dec 3, 2019 · 23 commits to master since this tag

This is the 1.3.0 stable release of ARA.

Changes since 1.2.0:

General
-------

- Removed hard requirement on python 3.6 due to the usage of f-strings.
  ARA should also work on python 3.5 now.

Web user interface
------------------

- Added a tab at the top of the playbook list to search, sort and filter by date
  - Search can be based on the playbook's name, path, or status
  - Sort can be ascending or descending for start date, end date or duration
  - Filter can show playbooks in the last 60 minutes, 24 hours, 7 days or 30 days
- Fixed a bad link to the task file in the detailed result view

API
---

- Added support for searching date fields for playbooks, plays, tasks and results [1]
  For example:

    /api/v1/playbooks?started_before=2019-10-01T09:57:36.489016
    /api/v1/results?created_after=2019-10-01T09:57:36.489016

- The duration of items is now calculated and stored in the database model
  instead of being calculated on demand by the API. This provides the ability to
  easily sort objects based on their duration.
  A SQL migration has been added as a result of this change.

- Added support for ordering objects by most fields [2]
  For example:

    /api/v1/playbooks?order=id (ascending, oldest first)
    /api/v1/playbooks?order=-id (descending, most recent first)

  The currently supported fields available for sorting are:
    - created
    - updated
    - started (for playbooks, plays, tasks, results)
    - ended (for playbooks plays, tasks, results)
    - duration (for playbooks, plays, tasks, results)
    - path (for files)
    - key (for records)
    - ok, skipped, changed, failed and unreachable (for hosts)

- Added support for searching playbooks by their full path or only part of it.
  For example, a playbook with the path ``/home/user/ansible/playbook.yml``
  can be found by searching for either ``user`` or the full path.

- Searching for playbook names now also supports partial search.

- Improved handling of non-ascii/binary output to prevent UnicodeEncodeError
  exceptions [3]

- Standardized the search by status for playbooks, plays, tasks and results

- The built-in development server now checks if psycopg2 or mysqlclient are
  installed before launching when using the postgresql or mysql database backend. [4]

API client
----------

- Added support for ignoring SSL verification [5]

Plugins
-------

- Added the ``ARA_API_INSECURE`` setting to the callback plugin to ignore SSL
  verification.

CLI
---

- Added an ``ara-manage prune`` command to delete playbooks older than a specified
  amount of days. [6]

Documentation
-------------

- Refreshed docs on installation
- First iteration of documentation for the ``ara-manage`` commands
- Docs now require the API server dependencies to be installed so CLI snippets
  can be included automatically with sphinxcontrib-programoutput.

Upgrade notes
-------------

- 1.3.0 introduces a new SQL migration to move durations from the API to the
  database model. If upgrading from a previous version, you will need to run
  SQL migrations with ``ara-manage migrate``.

Referenced or fixed issues
--------------------------

[1]: https://github.com/ansible-community/ara/issues/30
[2]: https://github.com/ansible-community/ara/issues/68
[3]: https://github.com/ansible-community/ara/issues/48
[4]: https://github.com/ansible-community/ara/issues/63
[5]: https://github.com/ansible-community/ara/issues/90
[6]: https://github.com/ansible-community/ara/issues/31
Assets 2
You can’t perform that action at this time.