whitebox-tempest-plugin/.zuul.yaml
Sean Mooney 82c307a034 enable release jobs
This change adds the publish-to-pypi job template
for the whitebox-tempest-plugin.
This change also correct the syntax error in the
README.rst preventign the twine check command form passing.

this will enable releases to be done via commits to the release
repo via pypi https://pypi.org/project/whitebox-tempest-plugin/

a side effect of this process is the creation of git tags
and release tarballs for each tagged release.

Change-Id: I5cf0e3072c0502320866de1ce9771d61f1e0ec1b
2024-04-19 18:58:15 +01:00

199 lines
6.6 KiB
YAML

- nodeset:
name: nested-virt-multinode
nodes:
- name: controller
label: nested-virt-ubuntu-jammy
# NOTE(artom) We can't name the node 'compute' because that seems to
# take precedence over the 'compute' group in playbooks, so things we
# want to run on all hosts in the 'compute' group would only run on the
# subnode.
- name: compute-host
label: nested-virt-ubuntu-jammy
groups:
# Node where tests are executed and test results collected
- name: tempest
nodes:
- controller
# Nodes running the compute service
- name: compute
nodes:
- controller
- compute-host
# Nodes that are not the controller
- name: subnode
nodes:
- compute-host
# Switch node for multinode networking setup
- name: switch
nodes:
- controller
# Peer nodes for multinode networking setup
- name: peers
nodes:
- compute-host
- job:
name: whitebox-devstack-multinode
parent: tempest-multinode-full-py3
nodeset: nested-virt-multinode
description: |
Runs the entire test suite on single-NUMA, non-SMT, nested virt VMs.
required-projects:
- openstack/whitebox-tempest-plugin
- openstack/barbican
- openstack/barbican-tempest-plugin
pre-run: playbooks/whitebox/pre.yaml
irrelevant-files:
- ^test-requirements.txt$
vars:
tox_envlist: all
tempest_concurrency: 1
tempest_test_regex: ^whitebox_tempest_plugin\.
# NOTE(jparker) in order for guest to boot via UEFI, the host will need the
# open source implementation of UEFI for VMs via the OVMF package. In
# addition to test vTPM hosts need swtpm as well
extra_packages: ovmf,swtpm-tools
tempest_exclude_regex: ^whitebox_tempest_plugin\.api\.compute\.test_hugepages
devstack_localrc:
MAX_COMPUTE_NODES: 2
NOVA_SERVICE_REPORT_INTERVAL: 10
LIBVIRT_TYPE: kvm
TEMPEST_PLUGINS: /opt/stack/whitebox-tempest-plugin /opt/stack/barbican-tempest-plugin
WHITEBOX_PRIVKEY_PATH: /home/tempest/.ssh/id_rsa
WHITEBOX_CPU_MODEL: Nehalem
WHITEBOX_CPU_MODEL_EXTRA_FLAGS: vme,+ssse3,-mmx
WHITEBOX_CPU_TOPOLOGY: "0: [0,1,2,3,4,5,6,7]"
WHITEBOX_DEDICATED_CPUS_PER_NUMA: 3
devstack_local_conf:
test-config:
$TEMPEST_CONFIG:
compute-feature-enabled:
volume_backed_live_migration: true
stable_compute_uuid_supported: true
auth:
tempest_roles: creator
post-config:
$NOVA_CONF:
key_manager:
backend: barbican
compute:
cpu_dedicated_set: '1-3'
cpu_shared_set: '4,5'
max_disk_devices_to_attach: '7'
libvirt:
cpu_mode: custom
cpu_models: Nehalem
cpu_model_extra_flags: vme,+ssse3,-mmx
virt_type: kvm
rx_queue_size: 1024
swtpm_enabled: True
swtpm_user: swtpm
swtpm_group: swtpm
group-vars:
subnode:
devstack_localrc:
LIBVIRT_TYPE: kvm
NOVA_SERVICE_REPORT_INTERVAL: 10
devstack_local_conf:
post-config:
$NOVA_CONF:
key_manager:
backend: barbican
compute:
cpu_dedicated_set: '4-6'
cpu_shared_set: '2,3'
max_disk_devices_to_attach: '7'
libvirt:
cpu_mode: custom
cpu_models: Nehalem
cpu_model_extra_flags: vme,+ssse3,-mmx
virt_type: kvm
rx_queue_size: 1024
swtpm_enabled: True
swtpm_user: swtpm
swtpm_group: swtpm
tempest:
devstack_plugins:
barbican: https://opendev.org/openstack/barbican.git
whitebox-tempest-plugin: https://opendev.org/openstack/whitebox-tempest-plugin.git
- job:
name: whitebox-devstack-multinode-hugepages
parent: whitebox-devstack-multinode
description: |
Runs the hugepages tests on a deployment that has set up hugepages on the hosts.
vars:
tempest_test_regex: ^whitebox_tempest_plugin\.api\.compute\.test_hugepages
# NOTE(artom) The parent job's exclude regex excludes the hugepages
# tests, so we need to overwrite it here with a regex that matches
# *nothing*.
tempest_exclude_regex: $^
num_2M_pages: 512
num_1G_pages: 1
- job:
name: whitebox-devstack-ceph-multinode
parent: devstack-plugin-ceph-multinode-tempest-py3
description: |
Runs test_rbd_direct_download test on single-NUMA, non-SMT, nested virt
VMs with ceph plugin enabled.
The job uses the default qcow2 file based imagebackend for ephemeral
storage. It also enables the direct download of images via rbd into
the local imagecache for Nova.
voting: true
required-projects:
openstack/whitebox-tempest-plugin
pre-run: playbooks/whitebox/pre.yaml
irrelevant-files:
- ^whitebox_tempest_plugin/api/compute/(?!test_rbd_direct_download).*py$
vars:
tox_envlist: all
tempest_concurrency: 1
devstack_plugins:
whitebox-tempest-plugin: https://opendev.org/openstack/whitebox-tempest-plugin.git
tempest_test_regex: '^whitebox_tempest_plugin.api.compute.test_rbd_direct_download'
devstack_localrc:
COMPUTE_FEATURE_RBD_DOWNLOAD: True
TEMPEST_PLUGINS: /opt/stack/whitebox-tempest-plugin
WHITEBOX_PRIVKEY_PATH: /home/tempest/.ssh/id_rsa
devstack_local_conf:
post-config:
$NOVA_CPU_CONF:
glance:
enable_rbd_download: True
rbd_user: glance
rbd_ceph_conf: /etc/ceph/ceph.conf
rbd_pool: images
libvirt:
images_type: default
group-vars:
subnode:
devstack_local_conf:
post-config:
$NOVA_CPU_CONF:
glance:
enable_rbd_download: True
rbd_user: glance
rbd_ceph_conf: /etc/ceph/ceph.conf
rbd_pool: images
libvirt:
images_type: default
- project:
templates:
- publish-to-pypi
check:
jobs:
- whitebox-devstack-multinode
- whitebox-devstack-ceph-multinode
- openstack-tox-pep8
gate:
jobs:
- whitebox-devstack-multinode
- whitebox-devstack-ceph-multinode
- openstack-tox-pep8
experimental:
jobs:
- whitebox-devstack-multinode-hugepages