This new command will allow to change the status of objects that have
been running for more than 24 hours (by default) without being updated
and so we are expecting these to never finish.
Change-Id: Iedbac84188fc4202f51e405d2fae0a35d34b3a1d
Related: https://github.com/ansible-community/ara/issues/26
- ara isn't openstack specific
- ara is known to work and is tested with 3.8, add it
- definitely not beta software anymore, it's stable and used in production
Change-Id: I89445dc9febdd59da57fc7abb01ce89aa49ab3e7
Back when ara-manage prune was implemented, we didn't yet have a CLI
framework for running commands and so it was implemented using django.
Now that we have a CLI framework, move the command where it belongs.
Fixes: https://github.com/ansible-community/ara/issues/162
Change-Id: Ia3169f4966808611728bb7a70813a66423e54caf
The new release of dynaconf has changed how settings are loaded and this
is causing issues. Pin it while we figure out the fix.
Change-Id: If0c25fbb207ec78ff30e62cafa7c077b10a3f90a
This provides a detailed view about a specific result.
The content isn't included by default but it can be by specifying
"--with-content" and it's recommended to use with
'-f json' or '-f yaml'.
Change-Id: Idc5227f9d92d6610a84665ee463be36c2e5a1fe8
This allows to return a list of results based on provided arguments.
The provides the general framework that works but we'll iterate on
both the API and the command in the future.
Change-Id: I82228aec62d8eec3522b0c210c5bc9629d0338c7
This command returns stats for a specified host as well as a link to the
playbook report it is involved in.
Facts can also be returned optionally by specifying "--with-facts".
Change-Id: I2623381a1e15e665badd3cbd7e8a98852bd196f1
This is the first command being ported and so it includes the base
framework for integrating other commands with cliff.
The docs are also re-arranged to include the new commands, some
examples, as well as the existing ara-manage commands.
Change-Id: Ia758e4b70ec0a6821e97b5b66d123dfe33cc63d3
This is a small change that removes the hard requirement for python>=3.6.
We can reconsider it in the future but for now this makes it easier for
certain users to deploy for their environment.
This also fixes wrong indentation on the settings file comment.
Change-Id: Iab84818e5e50aa1e3a0951be154718be04fb53f5
This adds support for specifying the "django.db.backends.postgresql"
django database engine, installing the required dependencies and setting
up the necessary configuration.
We're also adding a new package extras [postgresql] which will take care
of installing psycopg2 automatically.
This is self tested by integration tests which creates a postgresql
Docker container and runs the ara_api role configured to run against the
postgresql container. The tests are designed to run either locally or on Zuul.
Change-Id: I9bb7166d01c96d8b39361a55b1c9952de8fa9798
This makes it so "pip install ara" would only install a minimal
amount of dependencies (pbr and requests as of this commit) required
for running the Ansible callback plugin as well as ara_record.
The server dependencies can be installed by running
"pip install ara[server]".
Fixes: https://github.com/ansible-community/ara/issues/36
Change-Id: I67769d28ec24cade7753230dffd0b049358af29a
This follows the fusion of the ara-{server,plugins,clients} reporitories
into a branch of the ara repository.
There are other references to clean up that will require a bit more
work (e.g, documentation) so this is a first step.
This changes the configuration engine from everett to dynaconf.
dynaconf allows loading configuration from files (json, ini, yaml, toml)
as well as environment variables prefixed by ARA_.
Our usage of dynaconf is similar to the use case from the Pulp [1]
project and they have documented an issue when loading database
parameters [2]. This issue is worked around by importing dynaconf in the
different entry points.
This introduces some other changes as well:
- We're now creating a default configuration and data directory at
~/.ara. The location of this directory is controlled with the
ARA_BASE_DIR environment variable.
- We're now creating a default configuration template in
~/.ara/default_config.yaml.
- The default database is now located at ~/.ara/ara.sqlite. The location
of this database can be customized with the ARA_DATABASE_NAME
environment variable.
Note that ARA 0.x used "~/.ara/ansible.sqlite" -- the file name change
is deliberate in order to avoid user databases clashing between
versions.
More documentation on this will be available in an upcoming patch.
[1]: https://github.com/pulp/pulp
[2]: https://github.com/rochacbruno/dynaconf/issues/89
Change-Id: I8178b4ca9f2b4d7f4c45c296c08391e84e8b990d
This moves manage.py inside the package and sets up an "ara-manage"
console entry point for doing something like "ara-manage runserver"
instead of "python manage.py runserver".
Putting this under __main__ also allows users to do "python -m
ara.server".
Change-Id: I86b57f11fed2fea0295b1980e2734e35289d84f3
This is a structure that will allow us to install everything under
"ara" as separate packages but inside the same module.
For example, installing ara-server will provide ara.server and
ara.api.
Installing ara-clients will provide ara.clients, ara-plugins will
supply ara.plugins, etc.
Change-Id: I27ee431c4e5d946f558befc12937ba2f3c0d020b
- Make the project installable with pbr
- Use tox to run tests, build docs, runserver
- Flesh out the README a little bit
- Real docs is WIP.
Change-Id: I3dc92250cd93add0cdf11c6a67d8f1081560d4e1