A collection of generic ansible playbooks for the Validation Framework
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Zuul a92482d2ed Merge "Add new metadata keys to the validation playbooks" 2 weeks ago
.config/molecule Remove workaround for tox-ansible and global molecule config 5 months ago
doc Dependency reorganization 1 month ago
playbooks Update validations for Ansible 2.11 1 month ago
releasenotes Fix pygments style 1 year ago
roles Test validations for false positives 2 months ago
scripts [Testing Infra] Apply here the improvements done to tripleo-validations 7 months ago
tests [Testing Infra] Apply here the improvements done to tripleo-validations 7 months ago
tools File validation extended to callback_plugins, main loop optimized 5 months ago
validations_common Merge "Add new metadata keys to the validation playbooks" 2 weeks ago
.ansible-lint Update validations for Ansible 2.11 1 month ago
.coveragerc Cover report omits test files 7 months ago
.dockerignore Adds dockerignore to the repo 5 months ago
.gitignore .gitignore now excludes JSON molecule logs 7 months ago
.gitreview Migrate molecule jobs from centos 7 to 8 2 years ago
.pre-commit-config.yaml Update validations for Ansible 2.11 1 month ago
.reqcheck_override.yaml Reqcheck job for upstream validations-common 5 months ago
.stestr.conf Make the measuring code coverage test working 8 months ago
.yamllint Enabling indentation rule for yamllint. 4 months ago
.zuul.yaml reqcheck job is now voting 4 months ago
CONTRIBUTING.rst Reorganize CONTRIBUTING information 4 months ago
LICENSE Add License File 2 years ago
MANIFEST.in Initialization of validations-common 2 years ago
README.rst Reorganize CONTRIBUTING information 4 months ago
ansible-collections-requirements.yml Update validations for Ansible 2.11 1 month ago
ansible-test-env.rc [Testing Infra] Apply here the improvements done to tripleo-validations 7 months ago
bindep.txt Add missing font for PDF generation 3 months ago
molecule-requirements.txt Update validations for Ansible 2.11 1 month ago
requirements.txt Licences are now listed for all requirements. 5 months ago
setup.cfg Removing lookup_plugins data file directive 4 months ago
setup.py Fix pbr installation issues 2 years ago
test-requirements.txt Update validations for Ansible 2.11 1 month ago
tox.ini Update validations for Ansible 2.11 1 month ago

README.rst

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.

$ python3 -m pip install validations-common

Or, if you have virtualenvwrapper installed.

$ mkvirtualenv validations-common
$ python3 -m pip install validations-common

Installation with package manager

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

Such as yum or dnf...

$ yum|dnf 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.

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.