neutron/zuul.d/rally.yaml
Miguel Lavalle 7f0413c84c Implement experimental features framework
During the Zed PTG it was decided to handle unsupported features in
Neutron as experimental. See section titled "When we say something is
not supported?", day 2 in [1]. The agreement was:

"We keep existing jobs for linuxbridge driver for example, but when the
tests start to fail we skip them and finally we stop the job also.
To make it clear for operators we add warning logs highlighting that the
given feature/driver is experimental, and introduce cfg option to enable
such features explicitly."

This commit implements this agreement, initially with Linuxbridge

Depends-On: https://review.opendev.org/c/openstack/neutron-tempest-plugin/+/845646

[1] https://lists.openstack.org/pipermail/openstack-discuss/2022-April/028164.html

Change-Id: Ib18efa3f472736b58c8967847b1061da0e3897d7
2022-06-30 17:59:49 -05:00

179 lines
5.5 KiB
YAML

- job:
name: neutron-ovs-rally-task
parent: rally-task-neutron
# Make non-voting until https://bugs.launchpad.net/rally/+bug/1980055 fixes
voting: false
timeout: 10800
vars:
devstack_localrc:
USE_PYTHON3: true
OSPROFILER_COLLECTOR: redis
OSPROFILER_HMAC_KEYS: "neutron-hmac-key-used-in-zuul-ci"
Q_ML2_TENANT_NETWORK_TYPE: vxlan
Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch
Q_AGENT: openvswitch
KEYSTONE_ADMIN_ENDPOINT: true
rally_task: rally-jobs/task-neutron.yaml
devstack_plugins:
osprofiler: https://opendev.org/openstack/osprofiler
rally-openstack: https://opendev.org/openstack/rally-openstack
neutron: https://opendev.org/openstack/neutron
devstack_services:
neutron-trunk: true
# Cinder services
c-api: false
c-bak: false
c-sch: false
c-vol: false
cinder: false
# Swift services
s-account: false
s-container: false
s-object: false
s-proxy: false
# OVN services
ovn-controller: false
ovn-northd: false
ovs-vswitchd: false
ovsdb-server: false
q-ovn-metadata-agent: false
# Neutron services
q-agt: true
q-dhcp: true
q-l3: true
q-meta: true
q-metering: true
q-svc: true
devstack_local_conf:
post-config:
$NEUTRON_CONF:
DEFAULT:
enable_code_profiling: True
required-projects:
- openstack/rally
- openstack/rally-openstack
- openstack/osprofiler
irrelevant-files:
- ^test-requirements.txt$
- ^releasenotes/.*$
- ^doc/.*$
- ^setup.cfg$
- ^.*\.conf\.sample$
- ^.*\.rst$
- ^neutron/locale/.*$
- ^neutron/tests/.*$
- ^tools/.*$
- ^tox.ini$
- ^neutron/agent/ovn/.*$
- ^neutron/agent/windows/.*$
- ^neutron/plugins/ml2/drivers/linuxbridge/.*$
- ^neutron/plugins/ml2/drivers/macvtap/.*$
- ^neutron/plugins/ml2/drivers/mech_sriov/.*$
- ^neutron/plugins/ml2/drivers/ovn/.*$
- ^neutron/services/ovn_l3/.*$
- ^neutron/services/logapi/drivers/ovn/.*$
- ^neutron/services/portforwarding/drivers/ovn/.*$
- ^neutron/services/qos/drivers/linuxbridge/.*$
- ^neutron/services/qos/drivers/ovn/.*$
- ^neutron/services/trunk/drivers/linuxbridge/.*$
- ^neutron/services/trunk/drivers/ovn/.*$
- ^neutron/cmd/ovn/.*$
- ^neutron/common/ovn/.*$
- ^roles/.*functional.*$
- ^playbooks/.*functional.*$
- ^zuul.d/(?!(project)).*\.yaml
- job:
name: neutron-ovn-rally-task
parent: rally-task-at-devstack
required-projects:
- name: openstack/devstack
- name: openstack/rally
- name: openstack/rally-openstack
irrelevant-files:
- ^test-requirements.txt$
- ^releasenotes/.*$
- ^doc/.*$
- ^setup.cfg$
- ^.*\.conf\.sample$
- ^.*\.rst$
- ^neutron/locale/.*$
- ^neutron/tests/.*$
- ^tools/.*$
- ^tox.ini$
- ^neutron/agent/dhcp/.*$
- ^neutron/agent/l2/.*$
- ^neutron/agent/l3/.*$
- ^neutron/agent/metadata/.*$
- ^neutron/agent/windows/.*$
- ^neutron/agent/dhcp_agent.py
- ^neutron/agent/l3_agent.py
- ^neutron/agent/metadata_agent.py
- ^neutron/agent/resource_cache.py
- ^neutron/agent/rpc.py
- ^neutron/agent/securitygroup_rpc.py
- ^neutron/plugins/ml2/drivers/linuxbridge/.*$
- ^neutron/plugins/ml2/drivers/openvswitch/.*$
- ^neutron/plugins/ml2/drivers/macvtap/.*$
- ^neutron/plugins/ml2/drivers/mech_sriov/.*$
- ^neutron/services/qos/drivers/linuxbridge/.*$
- ^neutron/services/qos/drivers/openvswitch/.*$
- ^neutron/services/trunk/drivers/linuxbridge/.*$
- ^neutron/services/trunk/drivers/openvswitch/.*$
- ^neutron/scheduler/.*$
- ^roles/.*functional.*$
- ^playbooks/.*functional.*$
- ^zuul.d/(?!(project)).*\.yaml
vars:
devstack_plugins:
neutron: https://opendev.org/openstack/neutron
rally-openstack: https://opendev.org/openstack/rally-openstack
zuul_copy_output:
'{{ devstack_base_dir }}/data/ovs': 'logs'
extensions_to_txt:
db: true
devstack_services:
ovn-northd: true
ovn-controller: true
ovs-vswitchd: true
ovsdb-server: true
q-ovn-metadata-agent: true
br-ex-tcpdump: true
br-int-flows: true
q-dhcp: false
q-l3: false
q-agt: false
q-meta: false
q-metering: false
q-dns: true
# Cinder services
c-api: false
c-bak: false
c-sch: false
c-vol: false
cinder: false
# Swift services
s-account: false
s-container: false
s-object: false
s-proxy: false
devstack_localrc:
Q_AGENT: ovn
ML2_L3_PLUGIN: ovn-router,trunk
Q_ML2_PLUGIN_MECHANISM_DRIVERS: ovn,logger
Q_ML2_TENANT_NETWORK_TYPE: geneve
USE_PYTHON3: true
PHYSICAL_NETWORK: public
Q_USE_PROVIDERNET_FOR_PUBLIC: true
ENABLE_CHASSIS_AS_GW: true
OVN_L3_CREATE_PUBLIC_NETWORK: true
KEYSTONE_ADMIN_ENDPOINT: true
devstack_local_conf:
post-config:
"${RALLY_CONF_DIR}/${RALLY_CONF_FILE}":
openstack:
neutron_bind_l2_agent_types: "OVN Controller Gateway agent"
rally_task: rally-jobs/task-neutron.yaml
timeout: 7800