Testing OpenStack upgrades
Go to file
Alex Katz 32c91c7264 Added --ignore-test-failures CLI flag
Tox venv commands are expected to return a code that indicates
test cases final outcome:

 - 0 => any test vase has failed
 - 1 => some test case has failed
 - not in [0, 1] => any other error

This change handles the special case when some test cases have
failed. In any of below cases:
 - JENKINS_URL environment variable is defined on controller node
 - --ignore-test-failure flag is passed to IR plugin
then the plugin runs without treating it as an error.

This has been introduced because when running the plugin from
a Jenkins slave host, Jenkins itself is expected to check test
case have failed looking at produced Junit XML artifacts.

Change-Id: Ia7d7f736ae18a7561dced2271228d86ca658e892
2020-05-11 13:57:26 +00:00
devstack Use the new ansible roles for DevStack CI jobs 2020-04-27 08:17:01 +02:00
doc Remove faults integration documentation 2020-02-19 10:15:23 +01:00
etc/oslo-config-generator Autogenerate config options and sample config file 2019-07-18 17:51:49 +02:00
infrared_plugin Added --ignore-test-failures CLI flag 2020-05-11 13:57:26 +00:00
playbooks Merge "Switch to new IR plugin for TripleO jobs" 2020-04-29 10:51:40 +00:00
releasenotes Fix requirements and use ReadTheDocs HTML documentation theme 2019-05-07 17:00:32 +02:00
roles Added --ignore-test-failures CLI flag 2020-05-11 13:57:26 +00:00
tobiko Increase maximum number of SSH connection attemts to 100 to fix timeout issues 2020-04-30 14:34:07 +02:00
tools Added --ignore-test-failures CLI flag 2020-05-11 13:57:26 +00:00
zuul.d Add tox-infrared-centos-8 to gate jobs 2020-05-05 18:25:55 +00:00
.ansible-lint Spliting infrared plugin into roles 2020-03-17 11:07:08 +00:00
.coveragerc Relax low coverage trealdshold 2019-10-16 12:51:55 +02:00
.gitignore Refactor test execution scripts 2020-05-06 17:41:35 +02:00
.gitreview OpenDev Migration Patch 2019-04-19 19:51:27 +00:00
.stestr.conf Fix requirements and use ReadTheDocs HTML documentation theme 2019-05-07 17:00:32 +02:00
LICENSE Add common module for handling clients 2018-08-15 16:10:50 +03:00
Pipfile Add tobiko-fault command 2019-03-20 14:14:33 +02:00
README.rst Drop support for Python3.5 2020-01-16 13:07:38 +01:00
Vagrantfile Fix Tox Infrared job 2020-02-18 15:40:01 +01:00
ansible.cfg Let automate coloring in infrared environment 2020-03-26 14:47:13 +01:00
bindep.txt Use upper-constraints file from requirements project 2020-05-04 14:47:41 +02:00
infrared-requirements.txt Use default python for testing infrared plugin 2020-03-23 15:47:59 +01:00
linters-requirements.txt Fix pylint version requirements 2020-05-05 12:10:09 +02:00
requirements.txt Remove unused integrations: os_faults and ansible 2020-02-19 17:35:09 +00:00
setup.cfg Execute test cases with InfraRed plugin on CenOS and Ubuntu 2020-03-20 10:36:35 +00:00
setup.py Add initial structure 2018-08-13 12:58:24 +00:00
test-requirements.txt Refactor test execution scripts 2020-05-06 17:41:35 +02:00
tobiko.conf.example Add simple Octavia traffic scenario 2019-11-26 19:13:53 +00:00
tox.ini Refactor test execution scripts 2020-05-06 17:41:35 +02:00

README.rst

Tobiko

Test Big Cloud Operations

Tobiko is an OpenStack testing framework focusing on areas mostly complementary to Tempest. While tempest main focus has been testing OpenStack rest APIs, the main Tobiko focus would be to test OpenStack system operations while "simulating" the use of the cloud as the final user would.

Tobiko's test cases populate the cloud with workloads such as instances, allows the CI workflow to perform an operation such as an update or upgrade, and then runs test cases to validate that the cloud workloads are still functional.

Project Requirements

Tobiko Python framework is being tested with below Python versions:

  • Python 3.6
  • Python 3.7
  • Python 3.8

and below Linux distributions:

  • CentOS 7 (with Python 3.6 and 3.8)
  • Ubuntu Bionic (with Python 3.6 and 3.7)

The framework is being used for executing test cases. As Tobiko can be executed on nodes that are not part of the cloud to test against, this doesn't mean Tobiko requires cloud nodes have to run with one of tested Python versions or Linux distributions.

Main Project Goals

  • To provide a Python framework to write system scenario test cases.
  • To provide tools for testing OpenStack system operations like update, upgrades and fast forward upgrade.
  • To provide CLI tools to implement a workflow designed to test potentially destructive operations (like rebooting cloud nodes, restarting services or others kinds of fault injections).
  • To provide tools to monitor and recollect the healthy status of the cloud as seen from user perspective (black-box testing) or from inside (white-box testing).

References