| # Playbook imported from https://opendev.org/openstack/tempest/src/tag/23.0.0/playbooks/devstack-tempest.yaml |
| |
| # Changes that run through devstack-tempest are likely to have an impact on |
| # the devstack part of the job, so we keep devstack in the main play to |
| # avoid zuul retrying on legitimate failures. |
| - hosts: all |
| roles: |
| - orchestrate-devstack |
| |
| # We run tests only on one node, regardless how many nodes are in the system |
| - hosts: tempest |
| environment: |
| # This enviroment variable is used by the optional tempest-gabbi |
| # job provided by the gabbi-tempest plugin. It can be safely ignored |
| # if that plugin is not being used. |
| GABBI_TEMPEST_PATH: "{{ gabbi_tempest_path | default('') }}" |
| roles: |
| - setup-tempest-run-dir |
| - setup-tempest-data-dir |
| - acl-devstack-files |
| - role: run-tempest |
| # ignore the errors for now, so that run-cinderlib-tests is always executed |
| ignore_errors: yes |
| - role: change-devstack-data-owner |
| devstack_data_subdir_changed: cinder |
| devstack_data_subdir_owner: zuul |
| - role: run-cinderlib-tests |
| tox_install_siblings: false |
| cinderlib_base_dir: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/cinderlib'].src_dir }}" |
| post_tasks: |
| - name: Fail if the first tempest run did not work |
| fail: |
| msg: "tempest run returned with an error" |
| when: tempest_run_result is defined and tempest_run_result.rc != 0 |