1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
|
- hosts: all
roles:
# the role is inherited from openstack/devstack project
- run-devstack
tasks:
- name: Ensure tox (system-wide)
shell: |
python3 -m pip install "tox{{ ensure_tox_version }}"
args:
executable: /bin/bash
become: true
when:
- ensure_tox_version is defined
- hosts: tempest
vars:
devstack_base_dir: "/opt/stack"
test_demo_user: "{{ test_demo is defined }}"
tasks:
# setup-tempest-* and acl-devstack-files roles are inherited from
# openstack/tempest project
- name: Setup Tempest Run Directory
include_role:
name: setup-tempest-run-dir
- name: Setup Tempest Data Directory
include_role:
name: setup-tempest-data-dir
- name: ACL devstack files
include_role:
name: acl-devstack-files
- name: Edit clouds.yaml file
include_role:
name: tempestconf-workaround-auth-url
- name: Generate tempest configuration file
include_role:
name: generate-tempestconf-file
vars:
create_accounts_file: True
source_credentials_commands: "export HOST_IP={{ ansible_default_ipv4.address }}; source {{ devstack_base_dir }}/devstack/openrc {{ user }} {{ user }}"
- name: Generate tempest configuration file based on cloud credentials
include_role:
name: generate-tempestconf-file-cloud
# run-tempest role is inherited from openstack/tempest project
- name: Run Tempest Tests
include_role:
name: run-tempest
when:
- plugins_paths is not defined
- branch is not defined or (branch is defined and branch not in ["stable/victoria"])
- name: Run Tempest Tests Tempest version <= 26.0.0
include_role:
name: run-tempest-26
when:
- plugins_paths is not defined
- branch is defined
- branch in ["stable/victoria"]
- when: plugins_paths is defined
block:
- name: Install tempest plugins
include_role:
name: install-plugins
- name: Setup Tempest Run Directory
include_role:
name: setup-tempest-run-dir
- name: Run Tempest Tests including plugins
include_role:
name: run-tempest
vars:
tox_envlist: "all"
tempest_test_regex: "{{ test_regex|join('|') }}"
tempest_exclude_regex: "{{ exclude_regex|join('|') }}"
|