RETIRED, A collection of generic ansible playbooks for the Validation Framework
Go to file
Jiri Podivin d57f09298d Removing superfluous imports from tests
Several unnecessary imports were removed from test modules.
Imports of the validations_common.tests.fakes were kept.

Signed-off-by: Jiri Podivin <jpodivin@redhat.com>
Change-Id: I8d6d5057fa08be1ccd84c01837d6e4c93ce01b89
2021-06-17 08:31:36 +02:00
.config/molecule Remove workaround for tox-ansible and global molecule config 2021-05-17 09:34:32 +02:00
doc Update Validations Framework IRC channels 2021-06-04 10:04:39 +02:00
playbooks Reqcheck job for upstream validations-common 2021-05-19 15:20:08 +02:00
releasenotes Fix pygments style 2020-06-24 11:58:39 +08:00
roles Rename local variable component to validation_component for Upstream CI 2021-05-26 15:03:02 +02:00
scripts [Testing Infra] Apply here the improvements done to tripleo-validations 2021-04-01 10:16:07 +02:00
tests [Testing Infra] Apply here the improvements done to tripleo-validations 2021-04-01 10:16:07 +02:00
tools File validation extended to callback_plugins, main loop optimized 2021-05-17 15:29:27 +02:00
validations_common Removing superfluous imports from tests 2021-06-17 08:31:36 +02:00
.ansible-lint Remove RoleNames ansible-lint custom rule 2021-04-30 08:29:08 +00:00
.coveragerc Cover report omits test files 2021-04-06 15:34:18 +02:00
.dockerignore Adds dockerignore to the repo 2021-05-20 05:01:28 +00:00
.gitignore .gitignore now excludes JSON molecule logs 2021-03-31 08:38:40 +02:00
.gitreview Migrate molecule jobs from centos 7 to 8 2020-03-13 12:23:25 +01:00
.pre-commit-config.yaml Bump pre-commit repositories 2021-05-05 15:47:54 +02:00
.reqcheck_override.yaml Reqcheck job for upstream validations-common 2021-05-19 15:20:08 +02:00
.stestr.conf Make the measuring code coverage test working 2021-02-08 13:25:46 +01:00
.yamllint Move Ansible components to validations_common directory 2020-03-05 14:53:02 +01:00
.zuul.yaml Trigger molecule jobs when modifying the following files 2021-05-27 09:35:40 +00:00
ansible-test-env.rc [Testing Infra] Apply here the improvements done to tripleo-validations 2021-04-01 10:16:07 +02:00
bindep.txt [Testing Infra] Apply here the improvements done to tripleo-validations 2021-04-01 10:16:07 +02:00
CONTRIBUTING.rst Add validation-common documentation structure 2021-02-15 14:58:05 +01:00
LICENSE Add License File 2020-03-10 15:41:26 +01:00
MANIFEST.in Initialization of validations-common 2020-03-04 15:54:39 +01:00
molecule-requirements.txt Bump molecule to 3.3.1 2021-05-27 09:36:14 +00:00
README.rst Re-add documentation for http_json callback 2021-03-31 14:06:58 +00:00
requirements.txt Licences are now listed for all requirements. 2021-05-20 09:33:32 +00:00
setup.cfg Merge "Use new CLI for functionnal tests and remove validation.py script" 2021-04-30 12:52:59 +00:00
setup.py Fix pbr installation issues 2020-03-05 10:44:48 +01:00
test-requirements.txt Tests for validation.py module and helper classes 2021-04-07 15:10:23 +02:00
tox.ini Merge "Python 2.7 environment, mimicking the one used by RDO" 2021-06-04 07:10:36 +00:00

Validations-common

image

A collection of Ansible roles and playbooks to detect and report potential issues during deployments.

The validations will help detect issues early in the deployment process and prevent field engineers from wasting time on misconfiguration or hardware issues in their environments.

Installation

There are several different ways to install validations-common. However it is recommended to both install and use the package inside python virtual environment.

At the command line using pip.

$ pip install validations-common

Or, if you have virtualenvwrapper installed.

$ mkvirtualenv validations-common
$ pip install validations-common

Installation with package manager

Alternativelly it is possible to install validations-common using package manager.

Such as yum...

$ yum install validations-common

or the more modern dnf.

$ dnf install validations-common

Usage

Once the validations-common project has been installed, navigate to the chosen share path, usually /usr/share/ansible to access the installed roles, playbooks, and libraries.

While the validations-common can be run by itself, it nonetheless depends on Ansible and validations-libs. Therefore it isn't recommended to use only validations-common.

The validations included with validations-common are intended to be demonstrations, capable of running on most setups. But they are not meant for production environment.

Validations Callbacks

http_json callback

The callback http_json sends Validations logs and information to an HTTP server as a JSON format in order to get caught and analysed with external tools for log parsing (as Fluentd or others).

This callback inherits from validation_json the format of the logging remains the same as the other logger that the Validation Framework is using by default.

To enable this callback, you need to add it to the callback whitelist. Then you need to export your http server url and port:

export HTTP_JSON_SERVER=http://localhost
export HTTP_JSON_PORT=8989

The callback will post JSON log to the URL provided. This repository has a simple HTTP server for testing purpose under:

tools/http_server.py

The default host and port are localhost and 8989, feel free to adjust those values to your needs.