Update cinder-tempest-plugin-lvm-lio (revamp)
The changes should make this job a valid replacement for the legacy cinder-tempest-dsvm-lvm-lio-barbican job defined inside cinder.git. - rename as cinder-tempest-plugin-lvm-lio-barbican; - add it to the gate queue as well, together with devstack-plugin-ceph-tempest-py3; - use the proper functional tox environment provided by cinderlib; - synchronize the blacklist with the one used by the legacy job, and use the same devstack options; - remove barbicanclient and os-brick from required-projects, so that the stable libraries are used, as usual for normal jobs. Child jobs can add them if they need to test against the master version of those libraries. And a few minor changes (namespaces for the repositories, prepare it to be multinode-compatible). Change-Id: I0ed43c8eda445af8da61d861536da1efdd5a7b1f
This commit is contained in:
parent
af5022a618
commit
c6215bd702
47
.zuul.yaml
47
.zuul.yaml
|
@ -4,35 +4,48 @@
|
||||||
- tempest-plugin-jobs
|
- tempest-plugin-jobs
|
||||||
check:
|
check:
|
||||||
jobs:
|
jobs:
|
||||||
- cinder-tempest-plugin-lvm-lio
|
- cinder-tempest-plugin-lvm-lio-barbican
|
||||||
|
- devstack-plugin-ceph-tempest-py3
|
||||||
|
gate:
|
||||||
|
jobs:
|
||||||
|
- cinder-tempest-plugin-lvm-lio-barbican
|
||||||
- devstack-plugin-ceph-tempest-py3
|
- devstack-plugin-ceph-tempest-py3
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: cinder-tempest-plugin-lvm-lio
|
name: cinder-tempest-plugin-lvm-lio-barbican
|
||||||
voting: false
|
|
||||||
description: |
|
description: |
|
||||||
Run Cinder Tempest Plugin tests
|
This jobs configures Cinder with LVM, LIO, barbican and
|
||||||
|
runs tempest tests and cinderlib tests.
|
||||||
parent: devstack-tempest
|
parent: devstack-tempest
|
||||||
|
roles:
|
||||||
|
- zuul: opendev.org/openstack/cinderlib
|
||||||
required-projects:
|
required-projects:
|
||||||
- openstack/devstack-gate
|
- opendev.org/openstack/barbican
|
||||||
- openstack/barbican
|
- opendev.org/openstack/tempest
|
||||||
- openstack/python-barbicanclient
|
- opendev.org/openstack/cinder-tempest-plugin
|
||||||
- openstack/tempest
|
- opendev.org/openstack/cinder
|
||||||
- openstack/os-brick
|
- opendev.org/openstack/cinderlib
|
||||||
- openstack/cinder-tempest-plugin
|
run: playbooks/tempest-and-cinderlib-run.yaml
|
||||||
- openstack/cinder
|
# Required to collect the tox-based logs of the cinderlib functional tests
|
||||||
|
post-run: playbooks/post-cinderlib.yaml
|
||||||
|
host-vars:
|
||||||
|
controller:
|
||||||
|
devstack_plugins:
|
||||||
|
barbican: https://opendev.org/openstack/barbican
|
||||||
vars:
|
vars:
|
||||||
tempest_test_regex: (tempest\.(api|scenario)|cinder_tempest_plugin)
|
tempest_test_regex: '(^tempest\.(api|scenario\.test_encrypted_cinder_volumes|scenario\.test_volume|scenario\.test_shelve_instance)|(^cinder_tempest_plugin))'
|
||||||
tempest_test_blacklist: '{{ ansible_user_dir }}/{{ zuul.project.src_dir }}/tempest_blacklist.txt'
|
tempest_test_blacklist: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/cinder-tempest-plugin'].src_dir }}/tempest_blacklist.txt"
|
||||||
tox_envlist: all
|
tox_envlist: all
|
||||||
devstack_localrc:
|
devstack_localrc:
|
||||||
CINDER_ISCSI_HELPER: lioadm
|
CINDER_ISCSI_HELPER: lioadm
|
||||||
TEMPEST_PLUGINS: /opt/stack/cinder-tempest-plugin
|
CINDER_LVM_TYPE: thin
|
||||||
USE_PYTHON3: true
|
CINDER_COORDINATION_URL: 'file://\$state_path'
|
||||||
devstack_plugins:
|
|
||||||
barbican: https://opendev.org/openstack/barbican
|
|
||||||
devstack_services:
|
devstack_services:
|
||||||
barbican: true
|
barbican: true
|
||||||
|
tempest_plugins:
|
||||||
|
- cinder-tempest-plugin
|
||||||
|
fetch_subunit_output_additional_dirs:
|
||||||
|
- "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/cinderlib'].src_dir }}"
|
||||||
irrelevant-files:
|
irrelevant-files:
|
||||||
- ^.*\.rst$
|
- ^.*\.rst$
|
||||||
- ^doc/.*$
|
- ^doc/.*$
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
- hosts: all
|
||||||
|
vars:
|
||||||
|
tox_envlist: functional
|
||||||
|
zuul_work_dir: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/cinderlib'].src_dir }}"
|
||||||
|
roles:
|
||||||
|
- fetch-tox-output
|
|
@ -0,0 +1,28 @@
|
||||||
|
# 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, 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
|
||||||
|
cinderlib_base_dir: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/cinderlib'].src_dir }}"
|
|
@ -0,0 +1,23 @@
|
||||||
|
Change the ownership of a specific devstack data subdirectory
|
||||||
|
|
||||||
|
This is needed in order to have cinderlib functional tests,
|
||||||
|
which are normally executed by the `zuul` user, run under
|
||||||
|
a devstack deployment where the `stack` user is the owner.
|
||||||
|
|
||||||
|
**Role Variables**
|
||||||
|
|
||||||
|
.. zuul:rolevar:: devstack_data_dir
|
||||||
|
:default: /opt/stack/data
|
||||||
|
|
||||||
|
The devstack data directory.
|
||||||
|
|
||||||
|
.. zuul:rolevar:: devstack_data_subdir_changed
|
||||||
|
:default: cinder
|
||||||
|
|
||||||
|
The devstack data subdirectory whose ownership
|
||||||
|
is changed.
|
||||||
|
|
||||||
|
.. zuul:rolevar:: devstack_data_subdir_owner
|
||||||
|
:default: zuul
|
||||||
|
|
||||||
|
The new owner of the specified devstack data subdirectory.
|
|
@ -0,0 +1,3 @@
|
||||||
|
devstack_data_dir: /opt/stack/data
|
||||||
|
devstack_data_subdir_changed: cinder
|
||||||
|
devstack_data_subdir_owner: zuul
|
|
@ -0,0 +1,6 @@
|
||||||
|
- name: Change the owner of specific devstack data files
|
||||||
|
file:
|
||||||
|
path: "{{ devstack_data_dir }}/{{ devstack_data_subdir_changed }}"
|
||||||
|
owner: "{{ devstack_data_subdir_owner }}"
|
||||||
|
recurse: yes
|
||||||
|
become: yes
|
|
@ -1,10 +1,11 @@
|
||||||
# List of tests getting skipped
|
.*VolumesSnapshotTestJSON.test_snapshot_backup
|
||||||
.*\[.*\bslow\b.*\]
|
.*VolumesBackupsAdminTest.test_volume_backup_export_import
|
||||||
.*\.*VolumesSnapshotTestJSON\.test_snapshot_backup
|
.*VolumesBackupsAdminTest.test_volume_backup_reset_status
|
||||||
.*\.*VolumesBackupsTest\.test_backup_create_attached_volume
|
.*VolumesBackupsTest.test_backup_create_attached_volume
|
||||||
.*\.*VolumesBackupsTest\.test_backup_create_and_restore_to_an_existing_volume
|
.*VolumesBackupsTest.test_backup_create_and_restore_to_an_existing_volume
|
||||||
.*\.*VolumesBackupsTest\.test_bootable_volume_backup_and_restore
|
.*VolumesBackupsTest.test_bootable_volume_backup_and_restore
|
||||||
.*\.*VolumesBackupsTest\.test_incremental_backup
|
.*VolumesBackupsTest.test_incremental_backup
|
||||||
.*\.*VolumesBackupsTest\.test_volume_backup_create_get_detailed_list_restore_delete
|
.*VolumesBackupsTest.test_volume_backup_create_get_detailed_list_restore_delete
|
||||||
.*\.*VolumesBackupsTest\.test_volume_snapshot_backup
|
.*VolumesBackupsTest.test_volume_snapshot_backup
|
||||||
.*\.*VolumesBackupsV39Test\.test_update_backup
|
.*VolumesBackupsV39Test.test_update_backup
|
||||||
|
.*TestVolumeBackupRestore.test_volume_backup_restore
|
||||||
|
|
Loading…
Reference in New Issue