
python-tempestconf sets _member_role by default, however, the role is not created in devstack environment by default. Therefore the patch adds logic which checks if the role is present and if it's not, it tries to look for member role. If the member role is not present as well, auth.tempest_roles is not set at all. Story: 2003550 Task: 24839 Change-Id: I0051bb4f870d58298403ac6fef6ae4ec454997af
45 lines
1.7 KiB
YAML
45 lines
1.7 KiB
YAML
- hosts: all
|
|
roles:
|
|
# the role is inherited from openstack-dev/devstack project
|
|
- run-devstack
|
|
|
|
- hosts: tempest
|
|
vars:
|
|
# It's important that OS_AUTH_URL is in this format:
|
|
# <protocol>://<host>/identity/v3
|
|
# In some cases it can be only: <protocol>://<host>:5000
|
|
# https://github.com/openstack-dev/devstack/blob/2c9343e5db44fa7a41ca6924737331dd9088ef8f/openrc#L87-L89
|
|
# (mkopec) That would end up with an HTTP MaxRetryError to <host>:5000,
|
|
# therefor OS_AUTH_URL is defined manually
|
|
set_auth_url: "OS_AUTH_URL=$SERVICE_PROTOCOL://$SERVICE_HOST/identity/v3"
|
|
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 }}; {{ set_auth_url }}"
|
|
- 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
|