neutron/zuul.d/base.yaml
Ihar Hrachyshka 919b4f6d68 gate: squash mypy into pep8 job
You can still run just mypy checks locally with `tox -e mypy`.

Change-Id: Ia70f471c0f66679c44c4d3684c9e46c00993f3b3
2024-11-05 18:00:56 -05:00

285 lines
9.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
- ^\.pre-commit-config\.yaml$
- ^\.pylintrc$
- ^.*\.conf\.sample$
- ^.*\.rst$
- ^doc/.*$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*$
- ^releasenotes/.*$
- ^setup.cfg$
- ^plugin.spec$
- ^tools/ovn_migration/.*$
- ^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/.*$
# Ignore everything except for zuul.d/project.yaml
- ^zuul.d/base.yaml
- ^zuul.d/grenade.yaml
- ^zuul.d/job-templates.yaml
- ^zuul.d/rally.yaml
- ^zuul.d/tempest-multinode.yaml
- ^zuul.d/tempest-singlenode.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
NEUTRON_DEPLOY_MOD_WSGI: false
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
timeout: 10800
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:
- ^\.pre-commit-config\.yaml$
- ^\.pylintrc$
- ^releasenotes/.*$
- ^doc/.*$
- ^setup.cfg$
- ^plugin.spec$
- ^tools/ovn_migration/.*$
- ^.*\.conf\.sample$
- ^.*\.rst$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/functional/.*$
- ^neutron/agent/ovn/.*$
- ^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/.*$
# Ignore everything except for zuul.d/project.yaml
- ^zuul.d/base.yaml
- ^zuul.d/grenade.yaml
- ^zuul.d/job-templates.yaml
- ^zuul.d/rally.yaml
- ^zuul.d/tempest-multinode.yaml
- ^zuul.d/tempest-singlenode.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
branches: ^master$
parent: neutron-fullstack-with-uwsgi
required-projects:
- openstack/neutron-lib
- job:
name: neutron-fullstack-with-pyroute2-master
branches: ^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
branches: ^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-9-stream
description: |
Functional testing for a FIPS enabled Centos 9 system
vars:
nslookup_target: 'opendev.org'
enable_fips: True
devstack_localrc:
ISCSI_CHAP_ALGORITHMS: SHA3-256,SHA256
Q_BUILD_OVS_FROM_GIT: true
- job:
name: neutron-functional-with-pyroute2-master
branches: ^master$
parent: neutron-functional
required-projects:
- name: github.com/svinota/pyroute2
- job:
name: neutron-functional-with-oslo-master
branches: ^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-functional-with-sqlalchemy-master
branches: ^master$
parent: neutron-functional
required-projects:
- name: github.com/sqlalchemy/sqlalchemy
override-checkout: main
- openstack/oslo.db
- openstack/neutron-lib
- name: github.com/sqlalchemy/alembic
override-checkout: main
- job:
name: openstack-tox-py312-with-sqlalchemy-master
branches: ^master$
parent: openstack-tox-py312
required-projects:
- name: github.com/sqlalchemy/sqlalchemy
override-checkout: main
- openstack/oslo.db
- openstack/neutron-lib
- name: github.com/sqlalchemy/alembic
override-checkout: main
- job:
name: neutron-fullstack-with-uwsgi-fips
parent: neutron-fullstack-with-uwsgi
nodeset: devstack-single-node-centos-9-stream
description: |
Functional testing for a FIPS enabled Centos 9 system
vars:
nslookup_target: 'opendev.org'
enable_fips: True
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