Fix Tox Infrared job

Change-Id: Ie4ad2f23e1e518c688dc4334acaa3379827ac146
This commit is contained in:
Federico Ressi 2020-02-14 10:32:58 +01:00
parent 8902748c22
commit 2e3af9b534
8 changed files with 14 additions and 81 deletions

1
.gitignore vendored
View File

@ -40,3 +40,4 @@ Pipfile.lock
tobiko.conf tobiko.conf
clouds.yaml clouds.yaml
ssh_config ssh_config
.infrared

2
Vagrantfile vendored
View File

@ -106,7 +106,7 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
end end
config.vm.synced_folder ".", "/vagrant", type: "rsync", config.vm.synced_folder ".", "/vagrant", type: "rsync",
rsync__exclude: [".tox/", "tobiko.conf", ".tobiko"] rsync__exclude: [".tox/", "tobiko.conf", ".tobiko", ".infrared"]
# OS faults doesn't support other ports for SSH connection used by ansible # OS faults doesn't support other ports for SSH connection used by ansible
config.vm.network "forwarded_port", guest: 22, host: 22 config.vm.network "forwarded_port", guest: 22, host: 22

View File

@ -20,6 +20,8 @@ python3-dev [platform:ubuntu]
# RHEL/CentOS 7 # RHEL/CentOS 7
libselinux-python [platform:rhel-7] libselinux-python [platform:rhel-7]
libselinux-python [platform:centos-7] libselinux-python [platform:centos-7]
python2-devel [platform:rhel-7]
python2-devel [platform:centos-7]
# RHEL/CentOS 8 # RHEL/CentOS 8
python3-libselinux [platform:rhel-8] python3-libselinux [platform:rhel-8]

View File

@ -1,72 +0,0 @@
---
config:
plugin_type: test
entry_point: ../roles/tobiko/main.yml
subparsers:
tobiko:
description: Configure and Run Tobiko Test Cases
include_groups:
- "Ansible options"
- "Inventory"
- "Common options"
- "Answers file"
groups:
- title: Stages Control
options:
pre_run:
type: Bool
help: install and configure Tobiko test cases
run_tests:
type: Bool
help: run verification test cases
run_faults:
type: Bool
help: run disruptive operation test cases
post_run:
type: Bool
help: fetch artifacts after test case execution
- title: Install Options
options:
tox_dir:
type: Value
default: "{{ ansible_env.HOME }}/tobiko"
help: |
The directory where Tobiko will be installed and used
overcloudrc:
type: Value
default: "{{ ansible_env.HOME }}/overcloudrc"
help: |
The path to the overcloudrc file
floating_network:
type: Value
default: "public"
help: |
Name of overcloud's floating_network
tests:
type: Value
help: |
The set of tests to execute
default: scenario
results_dir_suffix:
type: Value
help: |
Suffix string to add to tobiko_results dir
example : default will be tobiko_results_1st
default: "1st"
refsec:
type: Value
help: |
specific gerrit patch refsec to
checkout, example:
--refsec refs/changes/66/665966/7
default: ''

View File

@ -1,7 +1,7 @@
--- ---
config: config:
plugin_type: test plugin_type: test
entry_point: ./roles/infrared/main.yml entry_point: main.yml
subparsers: subparsers:
tobiko: tobiko:

View File

@ -10,8 +10,8 @@ IR_REPO="https://github.com/redhat-openstack/infrared.git"
IR_BRANCH=${IR_BRANCH:-master} IR_BRANCH=${IR_BRANCH:-master}
IR_SOURCE_DIR=$(realpath "${IR_SOURCE_DIR:-${IR_VIRTUAL_ENV}/infrared}") IR_SOURCE_DIR=$(realpath "${IR_SOURCE_DIR:-${IR_VIRTUAL_ENV}/infrared}")
IR_EXECUTABLE=${IR_VIRTUAL_ENV}/bin/infrared IR_EXECUTABLE=${IR_VIRTUAL_ENV}/bin/infrared
export IR_HOME=$(realpath ${IR_HOME:-../.infrared/}) export IR_HOME=$(realpath ${IR_HOME:-$(pwd)/.infrared/})
IR_TOBIKO_PLUGIN=$(realpath ${IR_TOBIKO_PLUGIN:-$(pwd)}) IR_TOBIKO_PLUGIN=$(realpath ${IR_TOBIKO_PLUGIN:-$(pwd)/roles/infrared})
function ir { function ir {

View File

@ -36,7 +36,7 @@ function tox_setup {
# Cleanup and create virtualenv directory # Cleanup and create virtualenv directory
rm -fR "${TOX_VIRTUAL_ENV}" rm -fR "${TOX_VIRTUAL_ENV}"
mkdir -p $(dirname "${TOX_VIRTUAL_ENV}") mkdir -p $(dirname "${TOX_VIRTUAL_ENV}")
"${TOX_BASE_PYTHON}" -m virtualenv "${TOX_VIRTUAL_ENV}" "${TOX_BASE_PYTHON}" -m virtualenv --seeder pip "${TOX_VIRTUAL_ENV}"
# Activate virtualenv # Activate virtualenv
if tox_activate; then if tox_activate; then
@ -52,7 +52,7 @@ function tox_setup {
function tox_install_deps { function tox_install_deps {
tox_install_pip tox_install_pip
if ! "${TOX_BASE_PYTHON}" -m virtualenv --version; then if ! "${TOX_BASE_PYTHON}" -m virtualenv --version; then
"${TOX_BASE_PYTHON}" -m pip install --user virtualenv "${TOX_BASE_PYTHON}" -m pip install --user --upgrade virtualenv
fi fi
} }

View File

@ -178,15 +178,17 @@ commands = {posargs:bash}
[testenv:infrared] [testenv:infrared]
basepython = {[testenv:venv]basepython} # basepython = {[testenv:venv]basepython}
# Package libselinux-python3 still not available on centos-7
basepython = python
deps = {[testenv:venv]deps} deps = {[testenv:venv]deps}
passenv = passenv =
{[testenv:venv]passenv} {[testenv:venv]passenv}
IR_* IR_*
setenv = setenv =
{[testenv:venv]setenv} {[testenv:venv]setenv}
IR_HOME={env:IR_HOME:{toxinidir}/../.infrared} IR_HOME={env:IR_HOME:{toxinidir}/.infrared}
IR_TOBIKO_PLUGIN={env:IR_TOBIKO_PLUGIN:{toxinidir}} IR_TOBIKO_PLUGIN={env:IR_TOBIKO_PLUGIN:{toxinidir}/roles/infrared}
whitelist_externals = * whitelist_externals = *
commands = commands =
bash {toxinidir}/tools/ci/ir {posargs:tobiko} bash {toxinidir}/tools/ci/ir {posargs:tobiko}