Files
devstack-plugin-tobiko/zuul.d/devstack-tobiko.yaml
Eduardo Olivares 377fb131a2 Fix python_exe_dirs values on jammy and focal jobs
In jobs run on ubuntu noble, python executable has to be found on
virtual environments because installing packages with pip at system
level is not possible.
In jobs run on both jammy and focal, pip can install packages at system
level, so those venvs should not be used.

Change-Id: Ie7d09f26c3e611567d497148a78712f0efee8c5b
2025-07-02 09:34:16 +02:00

254 lines
8.4 KiB
YAML

---
- project-template:
name: devstack-tobiko
description: |
DevStack jobs intended to gate Tobiko project changes
check: &CHECK
jobs:
- devstack-tobiko
- devstack-tobiko-multinode
gate: &GATE
jobs:
- devstack-tobiko
periodic: *CHECK
# --- STANDALONE -------------------------------------------------------------
- job:
abstract: false
name: devstack-tobiko
parent: devstack
nodeset: devstack-tobiko-noble
voting: true
branches:
regex: ^(unmaintained|stable/(wallaby|xena|yoga|zed|2023.1|2024)).*$
negate: true
description: |
Base Devstack Tobiko Plugin job.
This job provides the base for both the single and multi-node
test setup. To run a multi-node test inherit from devstack-tobiko
job and set the nodeset to a multi-node one.
required-projects: &rp
- openstack/neutron
- openstack/heat
- openstack/designate
- x/devstack-plugin-tobiko
- x/tobiko
roles:
- zuul: x/tobiko
timeout: 10800
vars: &job_vars
configure_swap_size: 8192
devstack_localrc:
LOG_COLOR: false
MULTI_HOST: 0
LIBVIRT_TYPE: kvm
LIBVIRT_CPU_MODE: host-passthrough
GLANCE_ENABLE_QUOTAS: false
NETWORK_API_EXTENSIONS: >-
address-scope,agent,allowed-address-pairs,auto-allocated-topology,
availability_zone,binding,default-subnetpools,
dns-domain-ports,dns-integration,dvr,empty-string-filtering,
ext-gw-mode,external-net,extra_dhcp_opt,extraroute,filter-validation,
fip-port-details,flavors,ip-substring-filtering,l3-flavors,l3-ha,
logging,metering,multi-provider,net-mtu,
net-mtu-writable,network-ip-availability,network_availability_zone,
pagination,port-security,project-id,provider,qos,
qos-bw-minimum-ingress,qos-fip,quotas,quota_details,rbac-policies,
router,router_availability_zone,security-group,
port-mac-address-regenerate,port-security-groups-filtering,
segment,service-type,sorting,standard-attr-description,
standard-attr-revisions,standard-attr-segment,
standard-attr-timestamp,standard-attr-tag,subnet_allocation,
trunk,trunk-details,uplink-status-propagation
TOBIKO_NEUTRON_IPV4_DNS_NAMESERVERS:
"{{ ipv4_dns_nameservers | join(',') }}"
TOBIKO_NEUTRON_IPV6_DNS_NAMESERVERS:
"{{ ipv6_dns_nameservers | join(',') }}"
devstack_plugins:
neutron: https://opendev.org/openstack/neutron.git
heat: https://opendev.org/openstack/heat.git
designate: https://opendev.org/openstack/designate.git
devstack-plugin-tobiko: https://opendev.org/x/devstack-plugin-tobiko.git
devstack_services:
heat: true
h-api: true
h-api-cfn: true
h-eng: true
n-cpu: true
tempest: false
tls-proxy: false
# NOTE(slaweq): we need to enable it as "legacy" service because for
# Fedora job it has to be disabled. If it would be disabled as
# "neutron-dns: false" then it devstack would consider that
# neutron-legacy isn't used and would not load proper files
q-dns: true
# see bug #1860753 (https://bugs.launchpad.net/devstack/+bug/1860753)
neutron-qos: true
neutron-segments: true
neutron-trunk: true
neutron-uplink-status-propagation: true
# NOTE(slaweq): Swift can't run with python3 currently
s-account: false
s-container: false
s-object: false
s-proxy: false
# NOTE(slaweq): without Swift, c-bak cannot run (in the Gate at least)
c-bak: false
designate: true
ipv4_dns_nameservers:
- 1.0.0.1
- 8.8.8.8
ipv6_dns_nameservers: []
zuul_copy_output:
'{{ stage_dir }}/stackviz': logs
"{{ devstack_base_dir }}/data/ovn": "logs"
"{{ devstack_base_dir }}/data/ovs": "logs"
"{{ devstack_log_dir }}/ovsdb-server-nb.log": "logs"
"{{ devstack_log_dir }}/ovsdb-server-sb.log": "logs"
extensions_to_txt:
conf: true
log: true
yaml: true
yml: true
test_log_debug: true
test_case_timeout: 1800
test_workflow: faults
python_exe_dirs:
- /opt/stack/data/venv/bin
- /opt/stack/bindep-venv/bin
- ~/.local/bin
- ~/bin
- /usr/local/bin
- /usr/bin
pre-run: playbooks/devstack/pre.yaml
run: playbooks/devstack/run.yaml
post-run: playbooks/devstack/post.yaml
irrelevant-files: &irrelevant-files
- ^.*\.rst$
- ^doc/
- ^infrared_plugin/
- ^playbooks/vagrant
- ^releasenotes/
- ^report/
- ^tobiko/tests/functional/
- ^tobiko/tests/unit/
- ^Vagrantfile
- job:
abstract: false
name: devstack-tobiko
parent: devstack
nodeset: devstack-tobiko-jammy
voting: true
branches: ^(unmaintained|stable)/2024.*$
description: |
Base Devstack Tobiko Plugin job.
This job provides the base for both the single and multi-node
test setup. To run a multi-node test inherit from devstack-tobiko
job and set the nodeset to a multi-node one.
required-projects: *rp
roles:
- zuul: x/tobiko
timeout: 10800
vars:
<<: *job_vars
python_exe_dirs:
- ~/.local/bin
- ~/bin
- /usr/local/bin
- /usr/bin
pre-run: playbooks/devstack/pre.yaml
run: playbooks/devstack/run.yaml
post-run: playbooks/devstack/post.yaml
irrelevant-files: *irrelevant-files
- job:
abstract: false
name: devstack-tobiko
parent: devstack
nodeset: devstack-tobiko-focal
voting: true
branches: ^(unmaintained|stable/(wallaby|xena|yoga|zed|2023.1)).*$
description: |
Base Devstack Tobiko Plugin job.
This job provides the base for both the single and multi-node
test setup. To run a multi-node test inherit from devstack-tobiko
job and set the nodeset to a multi-node one.
required-projects: *rp
roles:
- zuul: x/tobiko
timeout: 10800
vars:
<<: *job_vars
python_exe_dirs:
- ~/.local/bin
- ~/bin
- /usr/local/bin
- /usr/bin
pre-run: playbooks/devstack/pre.yaml
run: playbooks/devstack/run.yaml
post-run: playbooks/devstack/post.yaml
irrelevant-files: *irrelevant-files
# --- MULTINODE --------------------------------------------------------------
- job:
name: devstack-tobiko-multinode
parent: devstack-tobiko
nodeset: devstack-tobiko-multinode
voting: false
description: Base DevStack Tobiko job with multinode.
pre-run: playbooks/multinode-setup.yaml
vars:
topology: multinode
devstack_localrc:
ENABLE_FILE_INJECTION: true
MULTI_HOST: 1
LIBVIRT_TYPE: kvm
LIBVIRT_CPU_MODE: host-passthrough
NOVA_ALLOW_MOVE_TO_SAME_HOST: false
LIVE_MIGRATION_AVAILABLE: true
USE_BLOCK_MIGRATION_FOR_LIVE_MIGRATION: true
devstack_local_conf:
post-config:
$NOVA_CONF:
# these workarounds are needed to make migration tests pass with
# nested-virt nodes, otherwise:
# https://bugs.launchpad.net/nova-lxd/+bug/2049231
workarounds:
skip_cpu_compare_at_startup: true
skip_cpu_compare_on_dest: true
devstack_plugins:
# remove designate from multinode
neutron: https://opendev.org/openstack/neutron.git
heat: https://opendev.org/openstack/heat.git
devstack-plugin-tobiko: https://opendev.org/x/devstack-plugin-tobiko.git
devstack_services:
designate: false
group-vars:
subnode:
devstack_services:
tls-proxy: false
designate: false
devstack_localrc:
LIBVIRT_TYPE: kvm
LIBVIRT_CPU_MODE: host-passthrough
NOVA_ALLOW_MOVE_TO_SAME_HOST: false
LIVE_MIGRATION_AVAILABLE: true
USE_BLOCK_MIGRATION_FOR_LIVE_MIGRATION: true
devstack_local_conf:
post-config:
$NOVA_CONF:
# these workarounds are needed to make migration tests pass with
# nested-virt nodes, otherwise:
# https://bugs.launchpad.net/nova-lxd/+bug/2049231
workarounds:
skip_cpu_compare_at_startup: true
skip_cpu_compare_on_dest: true