- 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: # :///identity/v3 # In some cases it can be only: ://:5000 # https://github.com/openstack-dev/devstack/blob/2c9343e5db44fa7a41ca6924737331dd9088ef8f/openrc#L87-L89 # (mkopec) That would end up with an HTTP MaxRetryError to :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 }}" aditional_tempestconf_params: "auth.tempest_roles Member" - 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