Revisions of python-ara

Ana Guerrero's avatar Ana Guerrero (anag+factory) accepted request 1128740 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 16)
- update to 1.7.0:
  * Update bootstrap CSS from 4.6.0 to 5.3.0 and fix broken layout
    and components as a result of the update
  * Removed separate light/dark themes via bootstrap-darkly and
    bootstrap-flatly: bootstrap 5.3 features a new built-in dark
    theme
  * Re-worked the dark/light theme selection to match the new
    bootstrap built-in dark theme including pygments highlighting
    for pretty-printed output
  * Removed jquery, it is no longer required with bootstrap
  * Re-worked implementation of file line highlighting since it
    relied on jquery
  * Fixed tooltip implementation (i.e, for task tags) since the
    implementation in bootstrap had changed
  * Large chunks of templating were moved out to partials/tables and
    partials/search in order to improve readability.
  * Round of template cleanups and fixes as reported by djlint
  * Will continue to be a work in progress to simplify and standardize
    templates.
  * Raised the requirement on django from >=3.2,<3.3 to >=3.2,<4.3 to
    allow installation with the latest LTS release of django.
   * Raised the requirement on python from >=3.6 to >=3.8 to accomodate
    django 4.2.
  * Ignored Django warning about the lack of a STATIC_ROOT directory.
    ara uses whitenoise for serving static files which makes the warning
    superfluous. (#492)

  --
  --
  ---
Ana Guerrero's avatar Ana Guerrero (anag+factory) accepted request 1099400 from Matej Cepl's avatar Matej Cepl (mcepl) (revision 15)
- Update to 1.6.1 (2022-12-12):
  - callback: Changed how ANSIBLE_TMP is found to work around a
    behavior change in ansible-core 2.14 that ended up creating a
    directory named {{ ANSIBLE_HOME ~ "
  - Added a mysql extra to the python packaging for installing
    the mysqlclient library. This is in addition to the existing
    server and postgresql extra. They are used like this: pip
    install ara[server,mysql,postgresql]
- Update 1.6.0 (2022-12-01):
  It features a new "tasks" page to browse and search for
  tasks across playbook runs as well as many updates, fixes and
  improvements.
  - UI
    - Added a new "Tasks" page similar to the existing pages
      for Playbooks and Hosts. It provides a browseable and
      searchable overview of tasks across playbook runs.
    - Refreshed the host index page:
      - Added a column as well as search arguments for playbook
        name (or path)
      - Replaced the playbook status by a concise summary of task
        status for the host
    - Updated the playbook summary card to include the playbook
      id, the version of ara as well as the version of python.
    - Re-ordered and resized columns in tables to optimize width
      and improve consistency
    - Resized and aligned fields in search forms to use the full
      width available
    - Improved how task tags are displayed
    - Updated HTML page titles to be consistent across pages
    - Replaced fields for searching by task ID and host ID by
      task name and host name
    - Truncate name fields to prevent exceedinly large names to
      distort entire tables
    - Corrected card header font sizes in the host report page
  - callback plugin
    - Added support for recording the user who ran the playbook
    - Added support for recording the version of ara as well as
      the version of python used when running the playbook
    - Added options ARA_RECORD_USER and ARA_RECORD_CONTROLLER
      that can be set to false to avoid recording the user and
      controller hostname
    - Added support for specifying a SSL key, certificate and
      certificate authority for authenticating with a remote ara
      API server using ARA_API_KEY, ARA_API_CERT and ARA_API_CA
      respectively.
    - Fixed host fact recording to ensure it works when using
      FQCN-style tasks (ex: setup & ansible.builtin.setup)
    - Increased reliability and accuracy when recording results
      that can arrive out of order when using multi-threading
      or the free strategy by using the task uuid provided by
      Ansible
    - Truncate playbook, play, host and label names in
      circumstances where their length exceeds 255 characters
    - Ignore and don't record files in ~/.ansible/tmp by default
  - API Server
    - Bumped django requirement from 2.2 LTS to 3.2 LTS and
      removed the pin on the version of psycopg2 accordingly
    - Added a new configuration option, ARA_BASE_PATH, to let
      the server listen on an alternate path. It will continue
      to default to "/" but it could, for example, be set to
      "/ara/".
    - Lifted requirement on tzlocal, improve timezone detection
      and mitigate when the timezone can't be found by defaulting
      to UTC
  - Several new database model and API fields:
    - Added client_version and server_version fields to
      playbooks, meant to represent the version of the ara
      callback and server used in recording the playbook
    - Added python_version field to playbooks to save the version
      of python used by Ansible and the callback plugin when
      recording a playbook
    - Added a new "failed" status for tasks that is used by the
      callback plugin when there is at least one failed result
      for a given task
    - Added a new "uuid" field for tasks which is the uuid
      provided by Ansible for a task. It is used by the callback
      plugin to increase the reliability and accuracy when
      recording results even if they arrive out of order.
  - Several fixes and improvements for the distributed sqlite
    database backend:
    - Added a new index page for listing and linking to available
      databases. This is a work in progress that is intended to
      be improved in the future.
    - Return a HTTP 405 error when trying to write to read-only
      endpoints
    - Fixed the /healthcheck/ endpoint to make sure it is routed
      properly
    - Improved database engine settings and WSGI application
      configuration The WSGI application should now always
      be "ara.server.wsgi" instead of needing to specify
      "ara.server.wsgi.distributed_sqlite"
  - API client
    - Added support for specifying a SSL key, certificate and
      certificate authority for authenticating with a remote ara
      API server
    - Remove InsecureRequestWarning for insecure requests when
      SSL verification is not enabled.
  - CLI
    - Fixed wrong parsing of durations longer than 24 hours
    - Added support for searching playbooks by user
    - Added support for specifying a SSL key, certificate and
      certificate authority for authenticating with a remote ara
      API server using ARA_API_KEY, ARA_API_CERT and ARA_API_CA
      respectively.
  - Docs
    - Refreshed and improved the README, reformatted it from rst
      to markdown
    - Added a CONTRIBUTING.md file and refreshed contribution
      documentation
    - Explicitly call out and recommend setting up authentication
      for production use in order to prevent leaking sensitive
      information
    - Improved troubleshooting documentation and tips to improve
      playbook recording performance
Ana Guerrero's avatar Ana Guerrero (anag+factory) accepted request 1098405 from Matej Cepl's avatar Matej Cepl (mcepl) (revision 14)
- Clean up the SPEC file.
Richard Brown's avatar Richard Brown (RBrownSUSE) accepted request 879105 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 11)
- update to 1.5.4:
  - ara playbook metrics: provides stats aggregated by name, path, ansible version or controller
  - ara host metrics: provides task result stats for hosts across playbooks
  - ara task metrics: provides duration stats aggregated by task name, action/module or path
  - Threading is now disabled by default to avoid running into sqlite locking contention
    For details, see: https://github.com/ansible-community/ara/issues/195
  - The callback didn't provide a timezone for timestamps which could result in a wrong
    interpretation by the API server. Timestamps are now provided as UTC.
  - The hostname of the controller that ran the playbook is now recorded by ara
  - ARA API server container images are now published to quay.io/recordsansible/ara-api
    in addition to hub.docker.com/r/recordsansible/ara-api.
  - The 'which' package is now installed as a dependency
  - Removed a temporary workaround for dynaconf switching from PyYAML to ruamel.yaml
  - Added missing information about the play when browsing details for a task result
- switch to single build, this is a ansible plugin and cli tool
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 847969 from Steve Kowalik's avatar Steve Kowalik (StevenK) (revision 10)
- Update to 1.5.3:
  * Significant performance improvement by running non-blocking API calls in threads
  * Handler tasks are now also recorded in addition to regular tasks
  * API
    + Add support for searching handler tasks (ex: /api/v1/tasks?handler=true)
  * UI
    + Hosts in the playbook report are now sorted alphabetically by hostname
    + Added a column to display the number of tasks in the playbook summary
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 838632 from Steve Kowalik's avatar Steve Kowalik (StevenK) (revision 9)
- Update to 1.5.1:
  * A new 'ara' CLI API client is now available.
  * New settings have been added:
    + ARA_EXTERNAL_AUTH for enabling Django's external authentication.
    + ARA_DATABASE_OPTIONS for passing options to the Django database
      backend such as SSL.
  * Nested children resources are no longer returned, improving performance
    considerably for larger playbooks.
  * A new status was added for playbooks, plays and tasks: "expired".
  * URLs have been pluralized to match the endpoints provided by the API.
  * The introduction of the new CLI adds a requirement on the cliff python
    library.
  * ara 1.5.0 introduces significant API changes, some of which aren't
    backwards compatible such as no longer returning nested resources.
  * Two small SQL migrations have been added to remove result statuses and
    add the expired status for playbooks, plays and tasks. Run them with
    "ara-manage migrate".
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 835981 from Factory Maintainer's avatar Factory Maintainer (factory-maintainer) (revision 8)
Automatic submission by obs-autosubmit
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 800936 from Steve Kowalik's avatar Steve Kowalik (StevenK) (revision 6)
- Update to 1.4.0:
  * Added support for searching plays, tasks and hosts by name
  * Added support for searching playbooks by label
  * Fixed label representation to be consistent through different calls
  * Reversed the default sort order for playbooks, plays, tasks and results
  * Validate that settings.yaml (or ARA_SETTINGS) exists before launching (thank you @zswanson!)
  * Template the default settings file without objects generated by python-box
  * Added a default robots.txt to prevent crawling
  * Added support for searching by label
  * Improved the display of labels in the playbook list
  * Added pagination support when browsing the playbook report list
  * Use relative links for pagination (thank you @flowerysong !)
  * Bumped included patternfly CSS from 2.21.5 to 2.56.3
  * Provide sensible PATH defaults when virtualenvs are not used
  * Added support for installing from Fedora packages
  * Only run SQL migrations once when necessary
  * Allow retries when attempting to run SQL migrations
  * Ensure settings.yaml permissions are 0640
  * Added "ara_api_secure_logging" variable to control behavior of sensitive tasks with no_log
  * Properly default to IPv6 when no IPv4 is available
  * Default gunicorn worker count based on number of available CPU cores
  * Added support for deploying on EL8
  * New Ansible plugins: ara_playbook and ara_api
  * Improved consistency of stored task results (thank you @flowerysong!)
  * Fix bad logic when determining if labels should be updated
  * Added support for not saving files based on patterns (thank you @LaurentDumont!)
  * Added support for specifying default playbook labels
  * 1.4 introduces a new SQL migration to ensure labels are unique. If upgrading
    from a previous version, you will need to run SQL migrations with ``ara-manage migrate``.
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 711290 from Thomas Bechtold's avatar Thomas Bechtold (tbechtold) (revision 1)
new package useful for ansible
Displaying all 17 revisions
openSUSE Build Service is sponsored by