ed316557e9
It is incorrect to install tempest and manila-tempest-plugin
globally in devstack jobs. So this commit removes the use
of the test plugin's devstack installation hook, and uses
a "tempest-venv" that devstack sets up to run the tests.
To allow zuulv3 style jobs elsewhere [1] use the right
api versions when testing against this stable branch,
we enhance the devstack plugin.sh script to set api
versions as tempest configuration options.
Alongside these changes, we can perform a much needed
test job cleanup by eliminating some jobs we don't have
the bandwidth to maintain:
- manila-tempest-dsvm-postgres-generic-singlebackend
Single backend jobs are not very useful - the job
sets up a single backend in a multibackend style.
We've dropped this from future branches, and we
don't expect this job to catch any regressions that
other jobs will miss.
- manila-tempest-dsvm-generic-no-share-servers
This job's been failing; and wasting CI resources.
We have other DHSS=False reference drivers (CephFS
native/nfs, ZFSOnLinux, LVM) where we test the
driver mode sufficiently.
- manila-tempest-dsvm-glusterfs-nfs-heketi
and manila-tempest-dsvm-glusterfs-native-heketi
these were in the experimental queue, unmaintained
- manila-tempest-dsvm-container-scenario-custom-image
and manila-tempest-dsvm-generic-scenario-custom-image
New zuulv3 style jobs in the manila-image-elements
project replace these jobs [2].
[1] https://review.opendev.org/c/openstack/manila-tempest-plugin/+/725692
[2] 9c00e86d17/zuul.d/manila-image-elements-jobs.yaml
Closes-Bug: #1928880
Depends-On: I2eceb1d5fe42b1b779e115a0144a5d9639d3753f
Change-Id: I6c7db2286d544ff8156926e07efd57628cfdc9ff
Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
94 lines
3.5 KiB
YAML
94 lines
3.5 KiB
YAML
- hosts: all
|
|
name: Autoconverted job manila-tempest-dsvm-postgres-container from old job gate-manila-tempest-dsvm-postgres-container-ubuntu-xenial-nv
|
|
tasks:
|
|
|
|
- name: Ensure legacy workspace directory
|
|
file:
|
|
path: '{{ ansible_user_dir }}/workspace'
|
|
state: directory
|
|
|
|
- shell:
|
|
cmd: |
|
|
set -e
|
|
set -x
|
|
cat > clonemap.yaml << EOF
|
|
clonemap:
|
|
- name: openstack/devstack-gate
|
|
dest: devstack-gate
|
|
EOF
|
|
/usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
|
|
https://opendev.org \
|
|
openstack/devstack-gate
|
|
executable: /bin/bash
|
|
chdir: '{{ ansible_user_dir }}/workspace'
|
|
environment: '{{ zuul | zuul_legacy_vars }}'
|
|
|
|
- shell:
|
|
cmd: |
|
|
set -e
|
|
set -x
|
|
cat << 'EOF' >>"/tmp/dg-local.conf"
|
|
[[local|localrc]]
|
|
enable_plugin manila https://opendev.org/openstack/manila
|
|
TEMPEST_PLUGINS='/opt/stack/new/manila-tempest-plugin'
|
|
EOF
|
|
executable: /bin/bash
|
|
chdir: '{{ ansible_user_dir }}/workspace'
|
|
environment: '{{ zuul | zuul_legacy_vars }}'
|
|
|
|
- shell:
|
|
cmd: |
|
|
set -e
|
|
set -x
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_NEUTRON=1
|
|
export DEVSTACK_GATE_POSTGRES=1
|
|
export DEVSTACK_PROJECT_FROM_GIT="python-manilaclient"
|
|
|
|
export ENABLED_SERVICES=tempest
|
|
|
|
# Keep localrc to be able to set some vars in pre_test_hook
|
|
export KEEP_LOCALRC=1
|
|
export PROJECTS="openstack/manila-tempest-plugin $PROJECTS"
|
|
export MANILA_INSTALL_TEMPEST_PLUGIN_SYSTEMWIDE=False
|
|
export MANILA_ALLOW_NAS_SERVER_PORTS_ON_HOST=True
|
|
|
|
export DEVSTACK_GATE_USE_PYTHON3=True
|
|
|
|
function pre_test_hook {
|
|
# 'dhss' - acronym for 'Driver Handles Share Servers',
|
|
# defines mode of a share driver. Boolean-like.
|
|
# 'driver' - codename of a share driver to configure.
|
|
# 'back_end_type' - defines which installation Manila should
|
|
# have - either 'singlebackend' or 'multibackend'.
|
|
source $BASE/new/manila/contrib/ci/pre_test_hook.sh \
|
|
1 \
|
|
container \
|
|
multibackend
|
|
}
|
|
export -f pre_test_hook
|
|
|
|
function post_test_hook {
|
|
# 'back_end_type' - defines which installation Manila is
|
|
# configured to - either 'singlebackend' or 'multibackend'.
|
|
# 'driver' - codename of a share driver that is configured in
|
|
# Manila. It is used for enabling/disabling tests that are not
|
|
# supported by share driver that is used.
|
|
# 'test_type' - defines which set of test suites should be used,
|
|
# can have 'api' and 'scenario' values.
|
|
# 'postgres_enabled' - set of test suites depends on DB backend
|
|
# in some cases, so it is provided explicitely. Boolean-like.
|
|
source $BASE/new/manila/contrib/ci/post_test_hook.sh \
|
|
multibackend \
|
|
container \
|
|
api \
|
|
1
|
|
}
|
|
export -f post_test_hook
|
|
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
executable: /bin/bash
|
|
chdir: '{{ ansible_user_dir }}/workspace'
|
|
environment: '{{ zuul | zuul_legacy_vars }}'
|