This repository contains installation and test setup playbooks (along with
other ansible code such as roles) for usm qe system tests (aka
usmqe-tests
) of Tendrl project.
Ansible code here is build on top of official upstream ansible playbooks/roles for Tendrl: tendrl-ansible. If you need to just install Tendrl, just use tendrl-ansible instead of this QE only repository.
We follow ansible best practices here.
Main top level directories:
group_vars
: ansible group variables (file for each inventory group)library
: ansible modulesroles
: ansible roles
All *.yml
files in the root of the repository are ansible playbooks.
Playbooks starting with qe_
prefix are not meant for direct Tendrl
deployment, but for other tasks which QE team needed to automate, eg.:
qe_server.yml
playbook automates deployment of QE Server machine, where usm qe system tests are installed and executed/managed fromqe_evidence*.yml
playbooks automate log/evidence gathering process
You need to install Ansible 2.x (ansible from current Fedora or EPEL).
We also assume that storage or tendrl servers (machines you configure with playbooks stored in this repository) run CentOS 7 distribution.
Since playbooks there reuses ansible roles from tendrl-ansible, you need to
make those roles available, which means downloading (or cloning) tendrl-ansible
and pointing ANSIBLE_ROLES_PATH
variable to roles directory of
tendrl-ansible like this:
ANSIBLE_ROLES_PATH=/home/usmqe/tendrl-ansible/roles ansible-playbook -i ci_usm1.hosts ci_default.yml
We use yamllint tool to check syntax and formatting of yaml files in
this repository. The rules we enforce (stored in .yamllint
file) are based
on yamllint configuration of ansible project.
To run the checks, install yamllint
(use either Fedora/CentOS yamllint
packages or PyPI via pip
) and run:
$ yamllint .
This check is also run by usmqe-setup Travis CI job for each pull request.
To find more details or to get a whole picture how this repository relates to system tests, see usm qe documentation.
Distributed under the terms of the Apache License 2.0 license.