neutron/zuul.d/base.yaml
yatinkarel 135daae62d Use same ovs/ovn versions in local test setups
Currently we using different defaults in CI and
local run, also defaults in local run using ovs
master branch which is broken currently. Let's
use same version by definining defaults in
configure_for_func_testing.sh rather than at job
level, jobs can override these only when really
needed.

Drop unneeded source of functions, this was wrongly
detecting ovs/ovn versions. Anything required
should be sourced as part of configure_for_func_testing.sh.

Related-Bug: #1999154
Change-Id: I04a2b0b974d11a525c850b1e641a19749dee93f6
2022-12-09 19:06:50 +05:30

247 lines
8.3 KiB
YAML

- job:
name: neutron-functional
parent: devstack-minimal
description: Run neutron functional tests
timeout: 7800
required-projects:
- opendev.org/openstack/devstack
- openstack/neutron
- openstack/requirements
roles:
- zuul: openstack/devstack
pre-run: playbooks/configure_functional_job.yaml
run: playbooks/run_functional_job.yaml
post-run: playbooks/post_functional_job.yaml
irrelevant-files: &irrelevant-files
- ^\.pylintrc$
- ^.*\.conf\.sample$
- ^.*\.rst$
- ^doc/.*$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*$
- ^releasenotes/.*$
- ^setup.cfg$
- ^vagrant/.*$
- ^devstack/.*\.sample$
- ^playbooks/add_mariadb_repo.yaml
- ^playbooks/configure_ebtables.yaml
- ^playbooks/dvr-multinode-scenario-pre-run.yaml
- ^playbooks/install_nftables.yaml
- ^playbooks/multinode-setup.yaml
- ^playbooks/prepare-ovn-multinode.yaml
- ^roles/add_mariadb_repo/.*$
- ^roles/nftables/.*$
- ^rally-jobs/.*$
- ^zuul.d/(?!(project)).*\.yaml
vars:
configure_swap_size: 8192
Q_BUILD_OVS_FROM_GIT: True
MEMORY_TRACKER: True
INSTALL_OVN: True
devstack_services:
# Ignore any default set by devstack. Emit a "disable_all_services".
base: false
etcd3: false
devstack_localrc:
INSTALL_TESTONLY_PACKAGES: true
DATABASE_PASSWORD: stackdb
tox_envlist: dsvm-functional-gate
tox_constraints_file: '{{ ansible_user_dir }}/src/opendev.org/openstack/requirements/upper-constraints.txt'
zuul_copy_output:
# We need to copy archive with logs to have it in job artifacts also,
# /opt/stack/logs is default logs directory defined in neutron's
# tox.ini file
'/opt/stack/logs/dsvm-functional-logs.tar.gz': logs
- job:
name: neutron-fullstack
parent: neutron-functional
vars:
tox_envlist: dsvm-fullstack-gate
Q_BUILD_OVS_FROM_GIT: False
INSTALL_OVN: False
logs_path: '/opt/stack/logs/dsvm-fullstack-logs'
log_archive_file_name: '/opt/stack/logs/dsvm-fullstack-logs.tar.gz'
zuul_copy_output:
# We need to copy archive with logs to have it in job artifacts also,
# /opt/stack/logs is default logs directory defined in neutron's
# tox.ini file
'/opt/stack/logs/dsvm-fullstack-logs.tar.gz': logs
irrelevant-files:
- ^\.pylintrc$
- ^releasenotes/.*$
- ^doc/.*$
- ^setup.cfg$
- ^.*\.conf\.sample$
- ^.*\.rst$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/functional/.*$
- ^neutron/agent/ovn/.*$
- ^neutron/agent/windows/.*$
- ^neutron/plugins/ml2/drivers/macvtap/.*$
- ^neutron/plugins/ml2/drivers/mech_sriov/.*$
- ^neutron/plugins/ml2/drivers/ovn/.*$
- ^neutron_lib/tests/unit/.*$
- ^vagrant/.*$
- ^devstack/.*\.sample$
- ^playbooks/add_mariadb_repo.yaml
- ^playbooks/configure_ebtables.yaml
- ^playbooks/dvr-multinode-scenario-pre-run.yaml
- ^playbooks/install_nftables.yaml
- ^playbooks/multinode-setup.yaml
- ^playbooks/prepare-ovn-multinode.yaml
- ^roles/add_mariadb_repo/.*$
- ^roles/nftables/.*$
- ^rally-jobs/.*$
- ^zuul.d/(?!(project)).*\.yaml
- job:
name: neutron-fullstack-with-uwsgi
parent: neutron-fullstack
vars:
devstack_localrc:
NEUTRON_DEPLOY_MOD_WSGI: true
# Because this job uses neutron defined tox env (defined in base job),
# we need to set zuul_work_dir to neutron so that it can be used by
# other projects. Currently devstack run this job. Not setting this
# in base neutron-functional job as that is being used by neutron
# stadium projects where they need to use stadium project as working dir.
zuul_work_dir: src/opendev.org/openstack/neutron
- job:
name: neutron-fullstack-with-uwsgi-with-neutron-lib-master
parent: neutron-fullstack-with-uwsgi
required-projects:
- openstack/neutron-lib
- job:
name: neutron-fullstack-with-pyroute2-master
parent: neutron-fullstack
required-projects:
- name: github.com/svinota/pyroute2
- job:
name: neutron-functional-with-uwsgi
parent: neutron-functional
vars:
devstack_localrc:
NEUTRON_DEPLOY_MOD_WSGI: true
# Because this job uses neutron defined tox env (defined in base job),
# we need to set zuul_work_dir to neutron so that it can be used by
# other projects. Currently devstack run this job. Not setting this
# in base neutron-functional job as that is being used by neutron
# stadium projects where they need to use stadium project as working dir.
zuul_work_dir: src/opendev.org/openstack/neutron
- job:
name: neutron-functional-with-uwsgi-with-neutron-lib-master
parent: neutron-functional-with-uwsgi
required-projects:
- openstack/neutron-lib
- job:
name: neutron-functional-with-uwsgi-fips
parent: neutron-functional-with-uwsgi
nodeset: devstack-single-node-centos-8-stream
description: |
Functional testing for a FIPS enabled Centos 8 system
vars:
nslookup_target: 'opendev.org'
enable_fips: True
# NOTE(ykarel) Remove MYSQL_GATHER_PERFORMANCE and
# tox_environment when this job switches to centos-9-stream
MYSQL_GATHER_PERFORMANCE: false
tox_environment:
TOX_PYTHON: python3.8
devstack_localrc:
ISCSI_CHAP_ALGORITHMS: SHA3-256,SHA256
Q_BUILD_OVS_FROM_GIT: true
- job:
name: neutron-functional-with-pyroute2-master
parent: neutron-functional
required-projects:
- name: github.com/svinota/pyroute2
- job:
name: neutron-functional-with-oslo-master
parent: neutron-functional
description: |
This job installs all oslo libraries from source and executes the
Neutron functional tests.
# NOTE(ralonsoh): the list of required projects is retrieved from
# "openstack-tox-with-oslo-master-base" job.
# TODO(ralonsoh): push a patch to "openstack-zuul-jobs" to create
# a list reference of the required projects for "-oslo-master" jobs.
required-projects:
- openstack/automaton
- openstack/debtcollector
- openstack/futurist
- openstack/osprofiler
- openstack/oslo.cache
- openstack/oslo.concurrency
- openstack/oslo.config
- openstack/oslo.context
- openstack/oslo.db
- openstack/oslo.i18n
- openstack/oslo.log
- openstack/oslo.messaging
- openstack/oslo.middleware
- openstack/oslo.policy
- openstack/oslo.privsep
- openstack/oslo.reports
- openstack/oslo.rootwrap
- openstack/oslo.serialization
- openstack/oslo.service
- openstack/oslo.utils
- openstack/oslo.versionedobjects
- openstack/oslo.vmware
- openstack/oslotest
- openstack/pycadf
- openstack/stevedore
- openstack/taskflow
- openstack/tooz
- openstack/pbr
- job:
name: neutron-fullstack-with-uwsgi-fips
parent: neutron-fullstack-with-uwsgi
nodeset: devstack-single-node-centos-8-stream
description: |
Functional testing for a FIPS enabled Centos 8 system
vars:
nslookup_target: 'opendev.org'
enable_fips: True
# NOTE(ykarel) Remove MYSQL_GATHER_PERFORMANCE and
# tox_environment when this job switches to centos-9-stream
MYSQL_GATHER_PERFORMANCE: false
tox_environment:
TOX_PYTHON: python3.8
devstack_localrc:
ISCSI_CHAP_ALGORITHMS: SHA3-256,SHA256
Q_BUILD_OVS_FROM_GIT: true
- job:
name: neutron-linuxbridge-tempest-plugin-nftables
parent: neutron-tempest-plugin-linuxbridge
pre-run: playbooks/install_nftables.yaml
vars:
devstack_local_conf:
post-config:
$NEUTRON_CONF:
SECURITYGROUP:
enable_ipset: false # Not compatible with nftables
- job:
name: neutron-ovs-tempest-plugin-iptables_hybrid-nftables
parent: neutron-tempest-plugin-openvswitch-iptables_hybrid
pre-run: playbooks/install_nftables.yaml
vars:
devstack_local_conf:
post-config:
$NEUTRON_CONF:
SECURITYGROUP:
enable_ipset: false # Not compatible with nftables