neutron-tempest-plugin/zuul.d/master_jobs.yaml
Rodolfo Alonso Hernandez 4528027329 [OVN] Use the OVN agent in "neutron-tempest-plugin-ovn"
Now, only in master (Caracal 2024.1), the "neutron-tempest-plugin-ovn"
job used the OVN agent with the metadata extension, instead of the
OVN metadata agent. This functionality is implemented in the referred
link.

The OVN agent won't be used in stable releases.

Depends-On: https://review.opendev.org/c/openstack/neutron/+/898238

Related-Bug: #2017871
Change-Id: I92b85ec1ac609ada18fc1185e56f07c36d353518
2024-02-22 14:08:04 +00:00

1516 lines
52 KiB
YAML

- job:
name: neutron-tempest-plugin-base
parent: devstack-tempest
abstract: true
description: |
Perform setup common to all Neutron tempest tests
roles:
- zuul: openstack/devstack
required-projects:
- openstack/neutron
- openstack/neutron-tempest-plugin
- openstack/tempest
vars:
tempest_concurrency: 3 # out of 4
tox_envlist: all
# NOTE(slaweq): in case of some tests, which requires advanced image,
# default test timeout set to 1200 seconds may be not enough if job is
# run on slow node
tempest_test_timeout: 2400
tempest_test_regex: "\
(^neutron_tempest_plugin.api)|\
(^neutron_tempest_plugin.scenario)|\
(^tempest.api.compute.servers.test_attach_interfaces)|\
(^tempest.api.compute.servers.test_multiple_create)"
devstack_localrc:
USE_PYTHON3: true
NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_tempest) | join(',') }}"
PHYSICAL_NETWORK: public
IMAGE_URLS: https://cloud-images.ubuntu.com/minimal/releases/focal/release/ubuntu-20.04-minimal-cloudimg-amd64.img
CIRROS_VERSION: 0.6.2
DEFAULT_IMAGE_NAME: cirros-0.6.2-x86_64-uec
DEFAULT_IMAGE_FILE_NAME: cirros-0.6.2-x86_64-uec.tar.gz
ADVANCED_IMAGE_NAME: ubuntu-20.04-minimal-cloudimg-amd64
ADVANCED_INSTANCE_TYPE: ntp_image_256M
ADVANCED_INSTANCE_USER: ubuntu
CUSTOMIZE_IMAGE: true
BUILD_TIMEOUT: 784
# TODO(lucasagomes): Re-enable MOD_WSGI after
# https://bugs.launchpad.net/neutron/+bug/1912359 is implemented
NEUTRON_DEPLOY_MOD_WSGI: false
# TODO(ihrachys): remove OVN_BUILD_FROM_SOURCE once the OS packages
# include at least OVN v22.03.3.
OVN_BUILD_FROM_SOURCE: True
# TODO(ihrachys): switch back to a tagged version when it's released
# OVN_BRANCH: "v22.03.3"
OVN_BRANCH: "36e3ab9b47e93af0599a818e9d6b2930e49473f0"
OVS_BRANCH: "2410b95597fcec5f733caf77febdb46f4ffacd27"
devstack_plugins:
neutron: https://opendev.org/openstack/neutron.git
neutron-tempest-plugin: https://opendev.org/openstack/neutron-tempest-plugin.git
tempest_plugins:
- neutron-tempest-plugin
# TODO(slaweq): find a way to put this list of extensions in
# neutron repository and keep it different per branch,
# then it could be removed from here
network_api_extensions_common: &api_extensions
- address-group
- address-scope
- agent
- allowed-address-pairs
- auto-allocated-topology
- availability_zone
- binding
- default-subnetpools
- dns-domain-ports
- dns-integration
- dns-integration-domain-keywords
- empty-string-filtering
- expose-port-forwarding-in-fip
- expose-l3-conntrack-helper
- ext-gw-mode
- external-net
- extra_dhcp_opt
- extraroute
- extraroute-atomic
- filter-validation
- fip-port-details
- flavors
- floating-ip-port-forwarding
- floating-ip-port-forwarding-detail
- floatingip-pools
- ip-substring-filtering
- l3-conntrack-helper
- l3-ext-ndp-proxy
- l3-flavors
- l3-ha
- l3-ndp-proxy
- l3_agent_scheduler
- metering
- multi-provider
- net-mtu
- net-mtu-writable
- network-ip-availability
- network_availability_zone
- network-segment-range
- pagination
- port-device-profile
- port-resource-request
- port-resource-request-groups
- port-mac-address-regenerate
- port-security
- port-security-groups-filtering
- project-id
- provider
- qos
- qos-fip
- quotas
- quota_details
- rbac-address-group
- rbac-address-scope
- rbac-policies
- rbac-security-groups
- rbac-subnetpool
- router
- router_availability_zone
- security-group
- security-groups-default-rules
- security-groups-normalized-cidr
- security-groups-remote-address-group
- segment
- service-type
- sorting
- standard-attr-description
- standard-attr-revisions
- standard-attr-segment
- standard-attr-tag
- standard-attr-timestamp
- stateful-security-group
- subnet_allocation
- subnet-dns-publish-fixed-ip
- subnet-service-types
- subnetpool-prefix-ops
- tag-ports-during-bulk-creation
- trunk
- trunk-details
- uplink-status-propagation
devstack_services:
tempest: true
neutron-dns: true
neutron-log: true
neutron-qos: true
neutron-segments: true
neutron-trunk: true
neutron-uplink-status-propagation: true
neutron-network-segment-range: true
neutron-port-forwarding: true
neutron-conntrack-helper: true
neutron-tag-ports-during-bulk-creation: true
neutron-ndp-proxy: true
br-ex-tcpdump: true
br-int-flows: true
# Cinder services
c-api: false
c-bak: false
c-sch: false
c-vol: false
cinder: false
# We don't need Swift to be run in the Neutron jobs
s-account: false
s-container: false
s-object: false
s-proxy: false
devstack_local_conf:
post-config:
$NEUTRON_CONF:
QUOTAS:
quota_router: 100
quota_floatingip: 500
quota_security_group: 150
quota_security_group_rule: 1000
/$NEUTRON_CORE_PLUGIN_CONF:
ml2:
type_drivers: flat,geneve,vlan,gre,local,vxlan
ml2_type_vlan:
network_vlan_ranges: foo:1:10
ml2_type_vxlan:
vni_ranges: 1:2000
ml2_type_gre:
tunnel_id_ranges: 1:1000
network_log:
local_output_log_base: /tmp/test_log.log
$NEUTRON_L3_CONF:
agent:
availability_zone: nova
$NEUTRON_DHCP_CONF:
agent:
availability_zone: nova
test-config:
$TEMPEST_CONFIG:
neutron_plugin_options:
provider_vlans: foo,
agent_availability_zone: nova
image_is_advanced: true
available_type_drivers: flat,geneve,vlan,gre,local,vxlan
provider_net_base_segm_id: 1
irrelevant-files:
- ^\.pylintrc$
- ^(test-|)requirements.txt$
- lower-constraints.txt
- ^releasenotes/.*$
- ^doc/.*$
- ^setup.cfg$
- ^.*\.rst$
- ^.*\.conf\.sample$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*
- ^neutron/tests/functional/.*
- ^tools/.*$
- ^tox.ini$
- ^plugin.spec$
- ^neutron/agent/.*$
- ^neutron/privileged/.*$
- ^neutron_lib/tests/unit/.*$
- ^neutron_tempest_plugin/scenario/.*$
- ^rally-jobs/.*$
- ^roles/.*functional.*$
- ^playbooks/.*functional.*$
- ^vagrant/.*$
- ^zuul.d/(?!(project)).*\.yaml
- job:
name: neutron-tempest-plugin-openvswitch
parent: neutron-tempest-plugin-base-nested-switch
timeout: 10000
vars:
configure_swap_size: 2048
devstack_services:
# Disable OVN services
br-ex-tcpdump: false
br-int-flows: false
ovn-controller: false
ovn-northd: false
ovs-vswitchd: false
ovsdb-server: false
q-ovn-metadata-agent: false
# Neutron services
neutron-local-ip-static: true
q-agt: true
q-dhcp: true
q-l3: true
q-meta: true
q-metering: true
network_api_extensions_openvswitch:
- dhcp_agent_scheduler
- local_ip
- qos-bw-minimum-ingress
network_available_features: &available_features
- ipv6_metadata
devstack_localrc:
Q_AGENT: openvswitch
Q_ML2_TENANT_NETWORK_TYPE: vxlan
Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch
NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_openvswitch) | join(',') }}"
devstack_local_conf:
post-config:
$NEUTRON_CONF:
DEFAULT:
enable_dvr: false
l3_ha: true
/$NEUTRON_CORE_PLUGIN_CONF:
agent:
tunnel_types: vxlan,gre
ovs:
tunnel_bridge: br-tun
bridge_mappings: public:br-ex
openflow_processed_per_port: True
test-config:
$TEMPEST_CONFIG:
network-feature-enabled:
available_features: "{{ network_available_features | join(',') }}"
neutron_plugin_options:
available_type_drivers: flat,vlan,local,vxlan
firewall_driver: openvswitch
irrelevant-files:
- ^\.pylintrc$
- ^(test-|)requirements.txt$
- lower-constraints.txt
- ^releasenotes/.*$
- ^doc/.*$
- ^setup.cfg$
- ^.*\.rst$
- ^.*\.conf\.sample$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*
- ^neutron/tests/functional/.*
- ^tools/.*$
- ^tox.ini$
- ^plugin.spec$
- ^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/.*$
- ^neutron_tempest_plugin/(bgpvpn|fwaas|neutron_dynamic_routing|sfc|tap_as_a_service|vpnaas).*$
- ^neutron_tempest_plugin/services/bgp/.*$
- ^rally-jobs/.*$
- ^roles/.*functional.*$
- ^playbooks/.*dvr-multinode.*$
- ^playbooks/.*dynamic-routing.*$
- ^playbooks/.*functional.*$
- ^playbooks/.*linuxbridge.*$
- ^vagrant/.*$
- ^zuul.d/(?!(project)).*\.yaml
- job:
name: neutron-tempest-plugin-openvswitch-iptables_hybrid
parent: neutron-tempest-plugin-base-nested-switch
timeout: 10000
vars:
configure_swap_size: 2048
devstack_services:
# Disable OVN services
br-ex-tcpdump: false
br-int-flows: false
ovn-controller: false
ovn-northd: false
ovs-vswitchd: false
ovsdb-server: false
q-ovn-metadata-agent: false
# Neutron services
neutron-local-ip: true
q-agt: true
q-dhcp: true
q-l3: true
q-meta: true
q-metering: true
network_api_extensions_openvswitch:
- dhcp_agent_scheduler
- local_ip
- logging
network_available_features: *available_features
# TODO(slaweq): remove trunks subport_connectivity test from blacklist
# when bug https://bugs.launchpad.net/neutron/+bug/1838760 will be fixed
# TODO(akatz): remove established tcp session verification test when the
# bug https://bugzilla.redhat.com/show_bug.cgi?id=1965036 will be fixed
tempest_exclude_regex: "\
(^neutron_tempest_plugin.scenario.test_trunk.TrunkTest.test_subport_connectivity)|\
(^neutron_tempest_plugin.scenario.test_security_groups.StatefulNetworkSecGroupTest.test_established_tcp_session_after_re_attachinging_sg)|\
(^neutron_tempest_plugin.scenario.test_security_groups.StatelessNetworkSecGroupTest.test_established_tcp_session_after_re_attachinging_sg)"
devstack_localrc:
Q_AGENT: openvswitch
Q_ML2_TENANT_NETWORK_TYPE: vxlan
Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch
NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_openvswitch) | join(',') }}"
devstack_local_conf:
post-config:
$NEUTRON_CONF:
DEFAULT:
enable_dvr: false
l3_ha: true
/$NEUTRON_CORE_PLUGIN_CONF:
agent:
tunnel_types: vxlan,gre
ovs:
tunnel_bridge: br-tun
bridge_mappings: public:br-ex
securitygroup:
firewall_driver: iptables_hybrid
test-config:
$TEMPEST_CONFIG:
network-feature-enabled:
available_features: "{{ network_available_features | join(',') }}"
neutron_plugin_options:
available_type_drivers: flat,vlan,local,vxlan
firewall_driver: iptables_hybrid
irrelevant-files:
- ^\.pylintrc$
- ^(test-|)requirements.txt$
- lower-constraints.txt
- ^releasenotes/.*$
- ^doc/.*$
- ^setup.cfg$
- ^.*\.rst$
- ^.*\.conf\.sample$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*
- ^neutron/tests/functional/.*
- ^tools/.*$
- ^tox.ini$
- ^plugin.spec$
- ^neutron/agent/linux/openvswitch_firewall/.*$
- ^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/.*$
- ^neutron_tempest_plugin/(bgpvpn|fwaas|neutron_dynamic_routing|sfc|tap_as_a_service|vpnaas).*$
- ^neutron_tempest_plugin/services/bgp/.*$
- ^rally-jobs/.*$
- ^roles/.*functional.*$
- ^playbooks/.*dvr-multinode.*$
- ^playbooks/.*dynamic-routing.*$
- ^playbooks/.*functional.*$
- ^playbooks/.*linuxbridge.*$
- ^vagrant/.*$
- ^zuul.d/(?!(project)).*\.yaml
- job:
name: neutron-tempest-plugin-openvswitch-enforce-scope-old-defaults
parent: neutron-tempest-plugin-openvswitch
vars:
devstack_localrc:
NEUTRON_ENFORCE_SCOPE: false
# TODO(slaweq): remove that job's definition as soon as new job
# "neutron-tempest-plugin-openvswitch-iptables_hybrid" will be used in the
# neutron repo as a parent for a
# "neutron-ovs-tempest-plugin-scenario-iptables_hybrid-nftables" job
- job:
name: neutron-tempest-plugin-scenario-openvswitch-iptables_hybrid
parent: neutron-tempest-plugin-openvswitch-iptables_hybrid
- job:
name: neutron-tempest-plugin-openvswitch-distributed-dhcp
parent: neutron-tempest-plugin-openvswitch
timeout: 10000
vars:
network_api_extensions_openvswitch:
- local_ip
- qos-bw-minimum-ingress
# NOTE: DHCP extra options and dns services aren't supported with
# distributed DHCP L2 agent extension
tempest_exclude_regex: "\
(^neutron_tempest_plugin.scenario.test_dhcp.DHCPTest.test_extra_dhcp_opts)|\
(^neutron_tempest_plugin.scenario.test_internal_dns.InternalDNSTest.test_dns_domain_and_name)"
devstack_services:
q-dhcp: false
q-distributed-dhcp: true
- job:
name: neutron-tempest-plugin-openvswitch-iptables_hybrid-distributed-dhcp
parent: neutron-tempest-plugin-openvswitch-iptables_hybrid
timeout: 10000
vars:
network_api_extensions_openvswitch:
- local_ip
- logging
# NOTE: DHCP extra options and dns services aren't supported with
# distributed DHCP L2 agent extension
tempest_exclude_regex: "\
(^neutron_tempest_plugin.scenario.test_dhcp.DHCPTest.test_extra_dhcp_opts)|\
(^neutron_tempest_plugin.scenario.test_internal_dns.InternalDNSTest.test_dns_domain_and_name)"
devstack_services:
q-dhcp: false
q-distributed-dhcp: true
- job:
name: neutron-tempest-plugin-linuxbridge
parent: neutron-tempest-plugin-base-nested-switch
timeout: 10000
roles:
- zuul: openstack/neutron
pre-run: playbooks/linuxbridge-scenario-pre-run.yaml
vars:
configure_swap_size: 2048
devstack_services:
# Disable OVN services
br-ex-tcpdump: false
br-int-flows: false
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
# SG logging isn't supported by linuxbridge backend
neutron-log: false
network_api_extensions_linuxbridge:
- dhcp_agent_scheduler
- vlan-transparent
network_available_features: *available_features
# TODO(eolivare): remove VLAN Transparency tests from blacklist
# when bug https://bugs.launchpad.net/neutron/+bug/1907548 will be fixed
# TODO(slaweq): remove
# test_established_tcp_session_after_re_attachinging_sg from the
# exclude regex when bug https://bugs.launchpad.net/neutron/+bug/1936911
# will be fixed
# TODO(slaweq) remove test_floatingip_port_details from the exclude
# regex when bug https://bugs.launchpad.net/neutron/+bug/1799790 will be
# fixed
tempest_exclude_regex: "\
(^neutron_tempest_plugin.scenario.test_vlan_transparency.VlanTransparencyTest)|\
(^neutron_tempest_plugin.scenario.test_security_groups.StatefulNetworkSecGroupTest.test_established_tcp_session_after_re_attachinging_sg)|\
(^neutron_tempest_plugin.scenario.test_security_groups.StatelessNetworkSecGroupTest.test_established_tcp_session_after_re_attachinging_sg)|\
(^neutron_tempest_plugin.scenario.test_floatingip.FloatingIPPortDetailsTest.test_floatingip_port_details)"
devstack_localrc:
Q_AGENT: linuxbridge
NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_linuxbridge) | join(',') }}"
Q_ML2_TENANT_NETWORK_TYPE: vxlan
Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch,linuxbridge
devstack_local_conf:
post-config:
$NEUTRON_CONF:
DEFAULT:
enable_dvr: false
vlan_transparent: true
l3_ha: true
AGENT:
debug_iptables_rules: true
EXPERIMENTAL:
linuxbridge: true
/$NEUTRON_CORE_PLUGIN_CONF:
ml2:
type_drivers: flat,vlan,local,vxlan
mechanism_drivers: linuxbridge
test-config:
$TEMPEST_CONFIG:
network-feature-enabled:
available_features: "{{ network_available_features | join(',') }}"
neutron_plugin_options:
available_type_drivers: flat,vlan,local,vxlan
q_agent: linuxbridge
firewall_driver: iptables
irrelevant-files:
- ^\.pylintrc$
- ^(test-|)requirements.txt$
- lower-constraints.txt
- ^releasenotes/.*$
- ^doc/.*$
- ^setup.cfg$
- ^.*\.rst$
- ^.*\.conf\.sample$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*
- ^neutron/tests/functional/.*
- ^tools/.*$
- ^tox.ini$
- ^plugin.spec$
- ^neutron/agent/linux/openvswitch_firewall/.*$
- ^neutron/agent/ovn/.*$
- ^neutron/agent/windows/.*$
- ^neutron/plugins/ml2/drivers/openvswitch/.*$
- ^neutron/plugins/ml2/drivers/macvtap/.*$
- ^neutron/plugins/ml2/drivers/mech_sriov/.*$
- ^neutron/plugins/ml2/drivers/ovn/.*$
- ^neutron/services/ovn_l3/.*$
- ^neutron/services/logapi/drivers/openvswitch/.*$
- ^neutron/services/logapi/drivers/ovn/.*$
- ^neutron/services/portforwarding/drivers/ovn/.*$
- ^neutron/services/qos/drivers/openvswitch/.*$
- ^neutron/services/qos/drivers/ovn/.*$
- ^neutron/services/trunk/drivers/openvswitch/.*$
- ^neutron/services/trunk/drivers/ovn/.*$
- ^neutron/cmd/ovn/.*$
- ^neutron/common/ovn/.*$
- ^neutron_tempest_plugin/(bgpvpn|fwaas|neutron_dynamic_routing|sfc|tap_as_a_service|vpnaas).*$
- ^neutron_tempest_plugin/services/bgp/.*$
- ^rally-jobs/.*$
- ^roles/.*functional.*$
- ^playbooks/.*dvr-multinode.*$
- ^playbooks/.*dynamic-routing.*$
- ^playbooks/.*functional.*$
- ^vagrant/.*$
- ^zuul.d/(?!(project)).*\.yaml
# TODO(slaweq): remove that job's definition as soon as new job
# "neutron-tempest-plugin-linuxbridge" will be used in the neutron repo as
# a parent for a "neutron-linuxbridge-tempest-plugin-scenario-nftables" job
- job:
name: neutron-tempest-plugin-scenario-linuxbridge
parent: neutron-tempest-plugin-linuxbridge
- job:
name: neutron-tempest-plugin-ovn
parent: neutron-tempest-plugin-base-nested-switch
timeout: 10800
vars:
network_api_extensions_ovn:
- vlan-transparent
# TODO(jlibosva): Remove the NetworkWritableMtuTest test from the list
# once east/west fragmentation is supported in core OVN
tempest_exclude_regex: "\
(^neutron_tempest_plugin.scenario.test_mtu.NetworkWritableMtuTest)"
devstack_localrc:
Q_AGENT: ovn
OVN_AGENT_EXTENSIONS: 'metadata'
NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_ovn) | join(',') }}"
Q_ML2_PLUGIN_MECHANISM_DRIVERS: ovn,logger
Q_ML2_PLUGIN_TYPE_DRIVERS: local,flat,vlan,geneve
Q_ML2_TENANT_NETWORK_TYPE: geneve
Q_USE_PROVIDERNET_FOR_PUBLIC: true
ENABLE_CHASSIS_AS_GW: true
OVN_L3_CREATE_PUBLIC_NETWORK: true
OVN_DBS_LOG_LEVEL: dbg
ENABLE_TLS: True
OVN_IGMP_SNOOPING_ENABLE: True
# TODO(ihrachys): remove OVN_BUILD_FROM_SOURCE once the OS packages
# include at least OVN v22.03.3.
OVN_BUILD_FROM_SOURCE: True
# TODO(ihrachys): switch back to a tagged version when it's released
# OVN_BRANCH: "v22.03.3"
OVN_BRANCH: "36e3ab9b47e93af0599a818e9d6b2930e49473f0"
OVS_BRANCH: "2410b95597fcec5f733caf77febdb46f4ffacd27"
OVS_SYSCONFDIR: "/usr/local/etc/openvswitch"
devstack_services:
br-ex-tcpdump: true
br-int-flows: true
q-ovn-metadata-agent: false
q-ovn-agent: true
ovn-controller: true
ovn-northd: true
ovs-vswitchd: true
ovsdb-server: true
q-agt: false
q-dhcp: false
q-l3: false
q-meta: false
q-metering: false
q-qos: true
# Cinder services
c-api: false
c-bak: false
c-sch: false
c-vol: false
cinder: false
s-account: false
s-container-sync: false
s-container: false
s-object: false
s-proxy: false
network_available_features: *available_features
devstack_local_conf:
post-config:
$NEUTRON_CONF:
DEFAULT:
enable_dvr: false
vlan_transparent: true
/$NEUTRON_CORE_PLUGIN_CONF:
ml2:
type_drivers: local,flat,vlan,geneve
test-config:
$TEMPEST_CONFIG:
network-feature-enabled:
available_features: "{{ network_available_features | join(',') }}"
neutron_plugin_options:
available_type_drivers: local,flat,vlan,geneve
is_igmp_snooping_enabled: True
firewall_driver: ovn
zuul_copy_output:
'{{ devstack_base_dir }}/data/ovs': 'logs'
'{{ devstack_base_dir }}/data/ovn': 'logs'
'{{ devstack_log_dir }}/ovsdb-server-nb.log': 'logs'
'{{ devstack_log_dir }}/ovsdb-server-sb.log': 'logs'
'/var/log/ovn': 'logs'
'/var/log/openvswitch': 'logs'
'/var/lib/ovn': 'logs'
irrelevant-files:
- ^\.pylintrc$
- ^(test-|)requirements.txt$
- lower-constraints.txt
- ^releasenotes/.*$
- ^doc/.*$
- ^setup.cfg$
- ^.*\.rst$
- ^.*\.conf\.sample$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*
- ^neutron/tests/functional/.*
- ^tools/.*$
- ^tox.ini$
- ^plugin.spec$
- ^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/.*$
- ^neutron_tempest_plugin/(bgpvpn|fwaas|neutron_dynamic_routing|sfc|tap_as_a_service|vpnaas).*$
- ^neutron_tempest_plugin/services/bgp/.*$
- ^rally-jobs/.*$
- ^roles/.*functional.*$
- ^playbooks/.*dvr-multinode.*$
- ^playbooks/.*dynamic-routing.*$
- ^playbooks/.*functional.*$
- ^playbooks/.*linuxbridge.*$
- ^vagrant/.*$
- ^zuul.d/(?!(project)).*\.yaml
# TODO(slaweq): remove that job's definition as soon as new job
# "neutron-tempest-plugin-ovn" will be used in the neutron-lib repo as
# instead of old "neutron-tempest-plugin-api" job
- job:
name: neutron-tempest-plugin-api
parent: neutron-tempest-plugin-ovn
- job:
name: neutron-tempest-plugin-dvr-multinode-scenario
parent: tempest-multinode-full
description: |
Perform setup for Neutron tempest tests in multinode with DVR scenario
roles:
- zuul: openstack/devstack
required-projects:
- openstack/neutron
- openstack/neutron-tempest-plugin
- openstack/tempest
pre-run: playbooks/dvr-multinode-scenario-pre-run.yaml
voting: false
vars:
tempest_concurrency: 4
tox_envlist: all
tempest_test_regex: ^neutron_tempest_plugin\.scenario
# NOTE(slaweq): in case of some tests, which requires advanced image,
# default test timeout set to 1200 seconds may be not enough if job is
# run on slow node
tempest_test_timeout: 2400
network_api_extensions_common: *api_extensions
network_api_extensions_dvr:
- dhcp_agent_scheduler
- dvr
devstack_localrc:
USE_PYTHON3: true
NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_dvr) | join(',') }}"
PHYSICAL_NETWORK: default
CIRROS_VERSION: 0.6.2
DEFAULT_IMAGE_NAME: cirros-0.6.2-x86_64-uec
DEFAULT_IMAGE_FILE_NAME: cirros-0.6.2-x86_64-uec.tar.gz
IMAGE_URLS: https://cloud-images.ubuntu.com/minimal/releases/focal/release/ubuntu-20.04-minimal-cloudimg-amd64.img
ADVANCED_IMAGE_NAME: ubuntu-20.04-minimal-cloudimg-amd64
ADVANCED_INSTANCE_TYPE: ntp_image_256M
ADVANCED_INSTANCE_USER: ubuntu
CUSTOMIZE_IMAGE: true
BUILD_TIMEOUT: 784
Q_AGENT: openvswitch
Q_ML2_TENANT_NETWORK_TYPE: vxlan
Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch
devstack_plugins:
neutron: https://opendev.org/openstack/neutron.git
neutron-tempest-plugin: https://opendev.org/openstack/neutron-tempest-plugin.git
tempest_plugins:
- neutron-tempest-plugin
devstack_services:
tls-proxy: true
tempest: true
# Disable OVN services
br-ex-tcpdump: false
br-int-flows: false
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
neutron-dns: true
neutron-qos: true
neutron-segments: true
neutron-trunk: true
neutron-log: true
neutron-port-forwarding: true
# Cinder services
c-api: false
c-bak: false
c-sch: false
c-vol: false
cinder: false
# We don't need Swift to be run in the Neutron jobs
s-account: false
s-container: false
s-object: false
s-proxy: false
devstack_local_conf:
post-config:
$NEUTRON_CONF:
quotas:
quota_router: 100
quota_floatingip: 500
quota_security_group: 100
quota_security_group_rule: 1000
DEFAULT:
router_distributed: True
"/$NEUTRON_CORE_PLUGIN_CONF":
ml2:
type_drivers: flat,geneve,vlan,gre,local,vxlan
mechanism_drivers: openvswitch,l2population
ml2_type_vlan:
network_vlan_ranges: foo:1:10
ml2_type_vxlan:
vni_ranges: 1:2000
ml2_type_gre:
tunnel_id_ranges: 1:1000
agent:
enable_distributed_routing: True
l2_population: True
tunnel_types: vxlan,gre
ovs:
tunnel_bridge: br-tun
bridge_mappings: public:br-ex
$NEUTRON_L3_CONF:
DEFAULT:
agent_mode: dvr_snat
agent:
availability_zone: nova
$NEUTRON_DHCP_CONF:
agent:
availability_zone: nova
"/etc/neutron/api-paste.ini":
"composite:neutronapi_v2_0":
use: "call:neutron.auth:pipeline_factory"
noauth: "cors request_id catch_errors osprofiler extensions neutronapiapp_v2_0"
keystone: "cors request_id catch_errors osprofiler authtoken keystonecontext extensions neutronapiapp_v2_0"
test-config:
$TEMPEST_CONFIG:
network-feature-enabled:
available_features: *available_features
neutron_plugin_options:
provider_vlans: foo,
agent_availability_zone: nova
image_is_advanced: true
available_type_drivers: flat,geneve,vlan,gre,local,vxlan
l3_agent_mode: dvr_snat
firewall_driver: openvswitch
group-vars:
subnode:
devstack_services:
tls-proxy: true
br-ex-tcpdump: false
br-int-flows: false
# Disable 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-l3: true
q-meta: true
neutron-qos: true
neutron-trunk: true
neutron-log: true
neutron-port-forwarding: true
# Cinder services
c-bak: false
c-vol: false
# We don't need Swift to be run in the Neutron jobs
s-account: false
s-container: false
s-object: false
s-proxy: false
devstack_localrc:
USE_PYTHON3: true
Q_AGENT: openvswitch
Q_ML2_TENANT_NETWORK_TYPE: vxlan
Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch
devstack_local_conf:
post-config:
$NEUTRON_CONF:
DEFAULT:
router_distributed: True
"/$NEUTRON_CORE_PLUGIN_CONF":
agent:
enable_distributed_routing: True
l2_population: True
tunnel_types: vxlan,gre
ovs:
tunnel_bridge: br-tun
bridge_mappings: public:br-ex
$NEUTRON_L3_CONF:
DEFAULT:
agent_mode: dvr_snat
agent:
availability_zone: nova
irrelevant-files:
- ^\.pylintrc$
- ^(test-|)requirements.txt$
- lower-constraints.txt
- ^releasenotes/.*$
- ^doc/.*$
- ^setup.cfg$
- ^.*\.rst$
- ^.*\.conf\.sample$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*
- ^neutron/tests/functional/.*
- ^tools/.*$
- ^tox.ini$
- ^plugin.spec$
- ^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/.*$
- ^neutron_tempest_plugin/(bgpvpn|fwaas|neutron_dynamic_routing|sfc|tap_as_a_service|vpnaas).*$
- ^neutron_tempest_plugin/services/bgp/.*$
- ^rally-jobs/.*$
- ^roles/.*functional.*$
- ^playbooks/.*dynamic-routing.*$
- ^playbooks/.*functional.*$
- ^playbooks/.*linuxbridge.*$
- ^vagrant/.*$
- ^zuul.d/(?!(project)).*\.yaml
- job:
name: neutron-tempest-plugin-designate-scenario
parent: neutron-tempest-plugin-base-nested-switch
description: Neutron designate integration scenario
required-projects:
- openstack/designate
- openstack/designate-dashboard
- openstack/designate-tempest-plugin
timeout: 3600
vars:
network_api_extensions_common: *api_extensions
devstack_localrc:
DESIGNATE_BACKEND_DRIVER: bind9
# In this job advanced image is not needed, so it's name should be
# empty
ADVANCED_IMAGE_NAME: ""
NETWORK_API_EXTENSIONS: "{{ network_api_extensions_common | join(',') }}"
devstack_plugins:
designate: https://opendev.org/openstack/designate.git
devstack_services:
cinder: false
designate: true
tempest_plugins:
- designate-tempest-plugin
- neutron-tempest-plugin
tempest_test_regex: ^neutron_tempest_plugin\.scenario\.test_dns_integration
irrelevant-files:
- ^\.pylintrc$
- ^(test-|)requirements.txt$
- lower-constraints.txt
- ^releasenotes/.*$
- ^doc/.*$
- ^setup.cfg$
- ^.*\.rst$
- ^.*\.conf\.sample$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*
- ^neutron/tests/functional/.*
- ^tools/.*$
- ^tox.ini$
- ^plugin.spec$
- ^neutron/agent/.*$
- ^neutron/cmd/.*$
- ^neutron/privileged/.*$
- ^neutron/plugins/ml2/drivers/.*$
- ^neutron/scheduler/.*$
- ^neutron/services/(?!externaldns).*$
- ^neutron_tempest_plugin/api/test_.*$
- ^neutron_tempest_plugin/(bgpvpn|fwaas|neutron_dynamic_routing|sfc|tap_as_a_service|vpnaas).*$
- ^neutron_tempest_plugin/services/bgp/.*$
- ^rally-jobs/.*$
- ^roles/.*functional.*$
- ^playbooks/.*dvr-multinode.*$
- ^playbooks/.*dynamic-routing.*$
- ^playbooks/.*functional.*$
- ^playbooks/.*linuxbridge.*$
- ^vagrant/.*$
- ^zuul.d/(?!(project)).*\.yaml
- job:
name: neutron-tempest-plugin-sfc
parent: neutron-tempest-plugin-base
timeout: 10800
required-projects:
- openstack/networking-sfc
- openstack/neutron
- openstack/neutron-tempest-plugin
- openstack/tempest
vars:
devstack_services:
# Disable OVN services
br-ex-tcpdump: false
br-int-flows: false
ovn-controller: false
ovn-northd: false
ovs-vswitchd: false
ovsdb-server: false
q-ovn-metadata-agent: false
# Enable Neutron services that are not used by OVN
q-agt: true
q-dhcp: true
q-l3: true
q-meta: true
q-metering: true
tempest_test_regex: ^neutron_tempest_plugin\.sfc
devstack_plugins:
networking-sfc: https://opendev.org/openstack/networking-sfc
neutron-tempest-plugin: https://opendev.org/openstack/neutron-tempest-plugin
network_api_extensions_sfc:
- flow_classifier
- sfc
devstack_localrc:
# TODO(slaweq): check why traceroute output is different in Cirros >
# 0.6.1 which is causing failures of the networking-sfc jobs
CIRROS_VERSION: 0.5.2
DEFAULT_IMAGE_NAME: cirros-0.5.2-x86_64-uec
DEFAULT_IMAGE_FILE_NAME: cirros-0.5.2-x86_64-uec.tar.gz
Q_AGENT: openvswitch
Q_ML2_TENANT_NETWORK_TYPE: vxlan
Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch
NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_sfc) | join(',') }}"
# TODO(bcafarel): tests still fail from time to time in parallel
# https://bugs.launchpad.net/neutron/+bug/1851500
# https://bugs.launchpad.net/networking-sfc/+bug/1660366
tempest_concurrency: 1
irrelevant-files:
- ^\.pylintrc$
- ^(test-|)requirements.txt$
- lower-constraints.txt
- ^releasenotes/.*$
- ^doc/.*$
- ^.*\.conf\.sample$
- ^setup.cfg$
- ^.*\.rst$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*
- ^neutron/tests/functional/.*
- ^neutron_tempest_plugin/api/test_.*$
- ^neutron_tempest_plugin/scenario/admin/.*$
- ^neutron_tempest_plugin/scenario/test_.*$
- ^neutron_tempest_plugin/(bgpvpn|fwaas|neutron_dynamic_routing|tap_as_a_service|vpnaas).*$
- ^neutron_tempest_plugin/services/bgp/.*$
- ^tools/.*$
- ^tox.ini$
- ^plugin.spec$
- ^rally-jobs/.*$
- ^roles/.*functional.*$
- ^playbooks/.*dvr-multinode.*$
- ^playbooks/.*dynamic-routing.*$
- ^playbooks/.*functional.*$
- ^playbooks/.*linuxbridge.*$
- ^vagrant/.*$
- ^zuul.d/(?!(project)).*\.yaml
- job:
name: neutron-tempest-plugin-bgpvpn-bagpipe
parent: neutron-tempest-plugin-base
required-projects:
- openstack/networking-bagpipe
- openstack/networking-bgpvpn
vars:
devstack_services:
# Disable OVN services
br-ex-tcpdump: false
br-int-flows: false
ovn-controller: false
ovn-northd: false
ovs-vswitchd: false
ovsdb-server: false
q-ovn-metadata-agent: false
# Enable Neutron services that are not used by OVN
q-agt: true
q-dhcp: true
q-l3: true
q-meta: true
q-metering: true
tempest_concurrency: 4
tempest_test_regex: ^neutron_tempest_plugin\.bgpvpn
network_api_extensions_bgpvpn:
- bgpvpn
- bgpvpn-routes-control
devstack_localrc:
Q_AGENT: openvswitch
Q_ML2_TENANT_NETWORK_TYPE: vxlan
Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch
NETWORKING_BGPVPN_DRIVER: "BGPVPN:BaGPipe:networking_bgpvpn.neutron.services.service_drivers.bagpipe.bagpipe_v2.BaGPipeBGPVPNDriver:default"
BAGPIPE_DATAPLANE_DRIVER_IPVPN: "ovs"
BAGPIPE_BGP_PEERS: "-"
NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_bgpvpn) | join(',') }}"
devstack_plugins:
networking-bgpvpn: https://git.openstack.org/openstack/networking-bgpvpn
networking-bagpipe: https://git.openstack.org/openstack/networking-bagpipe
irrelevant-files:
- ^\.pylintrc$
- ^(test-|)requirements.txt$
- lower-constraints.txt
- ^releasenotes/.*$
- ^doc/.*$
- ^.*\.conf\.sample$
- ^setup.cfg$
- ^.*\.rst$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*
- ^neutron/tests/functional/.*
- ^neutron_tempest_plugin/api/test_.*$
- ^neutron_tempest_plugin/scenario/admin/.*$
- ^neutron_tempest_plugin/scenario/test_.*$
- ^neutron_tempest_plugin/(fwaas|neutron_dynamic_routing|sfc|tap_as_a_service|vpnaas).*$
- ^neutron_tempest_plugin/services/bgp/.*$
- ^tools/.*$
- ^tox.ini$
- ^plugin.spec$
- ^rally-jobs/.*$
- ^roles/.*functional.*$
- ^playbooks/.*dvr-multinode.*$
- ^playbooks/.*dynamic-routing.*$
- ^playbooks/.*functional.*$
- ^playbooks/.*linuxbridge.*$
- ^vagrant/.*$
- ^zuul.d/(?!(project)).*\.yaml
- job:
name: neutron-tempest-plugin-dynamic-routing
parent: neutron-tempest-plugin-base
description: |
Perform setup common to all Neutron dynamic routing tempest tests
required-projects:
- openstack/neutron
- openstack/neutron-dynamic-routing
- openstack/os-ken
- openstack/tempest
pre-run: playbooks/dynamic-routing-pre-run.yaml
vars:
devstack_plugins:
neutron-dynamic-routing: https://opendev.org/openstack/neutron-dynamic-routing
neutron-tempest-plugin: https://opendev.org/openstack/neutron-tempest-plugin
network_api_extensions_bgp:
- bgp
- bgp_dragent_scheduler
- bgp_4byte_asn
devstack_localrc:
NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_bgp) | join(',') }}"
devstack_services:
neutron-dr: true
neutron-dr-agent: true
tempest_concurrency: 1
tempest_test_regex: ^neutron_tempest_plugin\.neutron_dynamic_routing
irrelevant-files:
- ^\.pylintrc$
- ^(test-|)requirements.txt$
- lower-constraints.txt
- ^releasenotes/.*$
- ^doc/.*$
- ^.*\.conf\.sample$
- ^setup.cfg$
- ^.*\.rst$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*
- ^neutron/tests/functional/.*
- ^neutron_tempest_plugin/api/test_.*$
- ^neutron_tempest_plugin/scenario/admin/.*$
- ^neutron_tempest_plugin/scenario/test_.*$
- ^neutron_tempest_plugin/(bgpvpn|fwaas|sfc|tap_as_a_service|vpnaas).*$
- ^tools/.*$
- ^tox.ini$
- ^plugin.spec$
- ^rally-jobs/.*$
- ^roles/.*functional.*$
- ^playbooks/.*dvr-multinode.*$
- ^playbooks/.*functional.*$
- ^playbooks/.*linuxbridge.*$
- ^vagrant/.*$
- ^zuul.d/(?!(project)).*\.yaml
- job:
name: neutron-tempest-plugin-fwaas
parent: neutron-tempest-plugin-base
timeout: 10800
required-projects:
- openstack/devstack-gate
- openstack/neutron-fwaas
- openstack/neutron
- openstack/neutron-tempest-plugin
- openstack/tempest
vars:
tempest_concurrency: 4
tempest_test_regex: ^neutron_tempest_plugin\.fwaas
devstack_plugins:
neutron-fwaas: https://opendev.org/openstack/neutron-fwaas.git
neutron-tempest-plugin: https://opendev.org/openstack/neutron-tempest-plugin.git
network_api_extensions_fwaas:
- fwaas_v2
devstack_localrc:
NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_fwaas) | join(',') }}"
Q_AGENT: openvswitch
Q_ML2_TENANT_NETWORK_TYPE: vxlan
Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch
devstack_services:
# Disable OVN services
br-ex-tcpdump: false
br-int-flows: false
ovn-controller: false
ovn-northd: false
q-ovn-metadata-agent: false
# Neutron services
q-agt: true
q-dhcp: true
q-meta: true
q-metering: true
q-l3: true
neutron-log: false
irrelevant-files:
- ^\.pylintrc$
- ^(test-|)requirements.txt$
- ^releasenotes/.*$
- ^doc/.*$
- ^.*\.conf\.sample$
- ^setup.cfg$
- ^.*\.rst$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*
- ^neutron/tests/functional/.*
- ^neutron_tempest_plugin/api/test_.*$
- ^neutron_tempest_plugin/scenario/admin/.*$
- ^neutron_tempest_plugin/scenario/test_.*$
- ^neutron_tempest_plugin/(bgpvpn|neutron_dynamic_routing|sfc|tap_as_a_service|vpnaas).*$
- ^neutron_tempest_plugin/services/bgp/.*$
- ^tools/.*$
- ^tox.ini$
- ^plugin.spec$
- ^rally-jobs/.*$
- ^roles/.*functional.*$
- ^playbooks/.*dvr-multinode.*$
- ^playbooks/.*dynamic-routing.*$
- ^playbooks/.*functional.*$
- ^playbooks/.*linuxbridge.*$
- ^vagrant/.*$
- ^zuul.d/(?!(project)).*\.yaml
- job:
name: neutron-tempest-plugin-vpnaas
parent: neutron-tempest-plugin-base
timeout: 3900
required-projects:
- openstack/neutron
- openstack/neutron-vpnaas
- openstack/neutron-tempest-plugin
- openstack/tempest
vars:
tempest_concurrency: 4
tempest_test_regex: ^neutron_tempest_plugin\.vpnaas
devstack_plugins:
neutron-vpnaas: https://opendev.org/openstack/neutron-vpnaas.git
neutron-tempest-plugin: https://opendev.org/openstack/neutron-tempest-plugin.git
network_api_extensions_common: *api_extensions
network_api_extensions_vpnaas:
- vpnaas
devstack_localrc:
IPSEC_PACKAGE: strongswan
NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_vpnaas) | join(',') }}"
Q_AGENT: openvswitch
Q_ML2_TENANT_NETWORK_TYPE: vxlan
Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch
devstack_services:
# Disable OVN services
br-ex-tcpdump: false
br-int-flows: false
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-meta: true
q-metering: true
q-l3: true
irrelevant-files:
- ^\.pylintrc$
- ^(test-|)requirements.txt$
- lower-constraints.txt
- ^releasenotes/.*$
- ^doc/.*$
- ^.*\.conf\.sample$
- ^setup.cfg$
- ^.*\.rst$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*
- ^neutron/tests/functional/.*
- ^neutron_tempest_plugin/api/test_.*$
- ^neutron_tempest_plugin/scenario/admin/.*$
- ^neutron_tempest_plugin/scenario/test_.*$
- ^neutron_tempest_plugin/(bgpvpn|fwaas|neutron_dynamic_routing|sfc|tap_as_a_service).*$
- ^neutron_tempest_plugin/services/bgp/.*$
- ^tools/.*$
- ^tox.ini$
- ^plugin.spec$
- ^rally-jobs/.*$
- ^roles/.*functional.*$
- ^playbooks/.*dvr-multinode.*$
- ^playbooks/.*dynamic-routing.*$
- ^playbooks/.*functional.*$
- ^playbooks/.*linuxbridge.*$
- ^vagrant/.*$
- ^zuul.d/(?!(project)).*\.yaml
- job:
name: neutron-tempest-plugin-vpnaas-ovn
parent: neutron-tempest-plugin-base
timeout: 3900
required-projects:
- openstack/neutron
- openstack/neutron-vpnaas
- openstack/neutron-tempest-plugin
- openstack/tempest
vars:
tempest_concurrency: 4
tempest_test_regex: ^neutron_tempest_plugin\.vpnaas
devstack_plugins:
neutron-vpnaas: https://opendev.org/openstack/neutron-vpnaas.git
neutron-tempest-plugin: https://opendev.org/openstack/neutron-tempest-plugin.git
network_api_extensions_common: *api_extensions
network_api_extensions_vpnaas:
- vpnaas
devstack_localrc:
IPSEC_PACKAGE: strongswan
NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_vpnaas) | join(',') }}"
devstack_services:
q-ovn-vpn-agent: true
devstack_local_conf:
test-config:
$TEMPEST_CONFIG:
neutron_vpnaas_plugin_options:
skip_6in4_tests: true
skip_6in6_tests: true
irrelevant-files:
- ^\.pylintrc$
- ^(test-|)requirements.txt$
- lower-constraints.txt
- ^releasenotes/.*$
- ^doc/.*$
- ^.*\.conf\.sample$
- ^setup.cfg$
- ^.*\.rst$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*
- ^neutron/tests/functional/.*
- ^neutron_tempest_plugin/api/test_.*$
- ^neutron_tempest_plugin/scenario/admin/.*$
- ^neutron_tempest_plugin/scenario/test_.*$
- ^neutron_tempest_plugin/(bgpvpn|fwaas|neutron_dynamic_routing|sfc|tap_as_a_service).*$
- ^neutron_tempest_plugin/services/bgp/.*$
- ^tools/.*$
- ^tox.ini$
- ^plugin.spec$
- ^rally-jobs/.*$
- ^roles/.*functional.*$
- ^playbooks/.*dvr-multinode.*$
- ^playbooks/.*dynamic-routing.*$
- ^playbooks/.*functional.*$
- ^playbooks/.*linuxbridge.*$
- ^vagrant/.*$
- ^zuul.d/(?!(project)).*\.yaml
- job:
name: neutron-tempest-plugin-tap-as-a-service
parent: neutron-tempest-plugin-base
description: |
Perform setup common to all tap-as-a-service tempest tests
roles:
- zuul: openstack/devstack
required-projects:
- openstack/devstack-gate
- openstack/neutron
- openstack/neutron-tempest-plugin
- openstack/tap-as-a-service
- openstack/tempest
vars:
tempest_concurrency: 4
tempest_test_regex: ^neutron_tempest_plugin\.tap_as_a_service
tox_envlist: all
network_api_extensions_tempest:
- taas
- taas-vlan-filter
devstack_localrc:
NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_tempest) | join(',') }}"
BUILD_TIMEOUT: 784
Q_AGENT: openvswitch
Q_ML2_TENANT_NETWORK_TYPE: vxlan,vlan
Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch
devstack_local_conf:
post-config:
/$NEUTRON_CORE_PLUGIN_CONF:
AGENT:
tunnel_types: vxlan
ml2_type_vlan:
network_vlan_ranges: public
test-config:
$TEMPEST_CONFIG:
neutron_plugin_options:
image_is_advanced: true
advanced_image_flavor_ref: d1
taas:
provider_physical_network: public
provider_segmentation_id: 100
image_feature_enabled:
api_v2: true
devstack_plugins:
neutron: git://opendev.org/openstack/neutron.git
neutron-tempest-plugin: https://opendev.org/openstack/neutron-tempest-plugin.git
tap-as-a-service: git://opendev.org/openstack/tap-as-a-service.git
devstack_services:
# Disable OVN services
ovn-controller: false
ovn-northd: false
ovs-vswitchd: false
ovsdb-server: false
q-ovn-metadata-agent: false
# Enable Neutron services that are not used by OVN
q-agt: true
q-dhcp: true
q-l3: true
q-meta: true
q-metering: true
br-ex-tcpdump: true
br-int-flows: true
base: false
key: true
mysql: true
rabbit: true
g-api: true
n-api: true
n-cond: true
n-cpu: true
n-crt: true
n-sch: true
placement-api: true
n-api-meta: true
q-svc: true
neutron: true
taas: true
taas_openvswitch_agent: true
tempest: true
dstat: true
irrelevant-files:
- ^\.pylintrc$
- ^(test-|)requirements.txt$
- lower-constraints.txt
- ^releasenotes/.*$
- ^doc/.*$
- ^.*\.conf\.sample$
- ^setup.cfg$
- ^.*\.rst$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*
- ^neutron/tests/functional/.*
- ^neutron_tempest_plugin/api/test_.*$
- ^neutron_tempest_plugin/scenario/admin/.*$
- ^neutron_tempest_plugin/scenario/test_.*$
- ^neutron_tempest_plugin/(bgpvpn|fwaas|neutron_dynamic_routing|sfc|vpnaas).*$
- ^neutron_tempest_plugin/services/bgp/.*$
- ^tools/.*$
- ^tox.ini$
- ^plugin.spec$
- ^rally-jobs/.*$
- ^roles/.*functional.*$
- ^playbooks/.*dvr-multinode.*$
- ^playbooks/.*dynamic-routing.*$
- ^playbooks/.*functional.*$
- ^playbooks/.*linuxbridge.*$
- ^vagrant/.*$
- ^zuul.d/(?!(project)).*\.yaml