- 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/jammy/release/ubuntu-22.04-minimal-cloudimg-amd64.img
        CIRROS_VERSION: 0.6.3
        DEFAULT_IMAGE_NAME: cirros-0.6.3-x86_64-uec
        DEFAULT_IMAGE_FILE_NAME: cirros-0.6.3-x86_64-uec.tar.gz
        ADVANCED_IMAGE_NAME: ubuntu-22.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: true
      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-trusted-vif
        - 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
        neutron-subnet-external-network: true
        neutron-port-trusted-vif: 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
              snat_rules_apply_to_nested_networks: true
    irrelevant-files:
      - ^\.pylintrc$
      - ^(test-|)requirements.txt$
      - ^lower-constraints.txt$
      - ^releasenotes/.*$
      - ^doc/.*$
      - ^setup.cfg$
      - ^.*\.rst$
      - ^.*\.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/.*$
      # Ignore everything except for zuul.d/project.yaml
      - ^zuul.d/.*_jobs\.yaml$
      - ^zuul.d/base-nested-switch.yaml

- job:
    name: neutron-tempest-plugin-openvswitch
    parent: neutron-tempest-plugin-base-nested-switch
    timeout: 10000
    vars:
      configure_swap_size: 3072
      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
        neutron-subnet-external-network: 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
              snat_rules_apply_to_nested_networks: true
    irrelevant-files:
      - ^\.pylintrc$
      - ^(test-|)requirements.txt$
      - ^lower-constraints.txt$
      - ^releasenotes/.*$
      - ^doc/.*$
      - ^setup.cfg$
      - ^.*\.rst$
      - ^.*\.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/.*$
      # Ignore everything except for zuul.d/project.yaml
      - ^zuul.d/.*_jobs\.yaml$
      - ^zuul.d/base-nested-switch.yaml

- job:
    name: neutron-tempest-plugin-openvswitch-iptables_hybrid
    parent: neutron-tempest-plugin-base-nested-switch
    timeout: 10000
    vars:
      configure_swap_size: 3072
      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
        neutron-subnet-external-network: 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
              snat_rules_apply_to_nested_networks: true
    irrelevant-files:
      - ^\.pylintrc$
      - ^(test-|)requirements.txt$
      - ^lower-constraints.txt$
      - ^releasenotes/.*$
      - ^doc/.*$
      - ^setup.cfg$
      - ^.*\.rst$
      - ^.*\.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/.*$
      # Ignore everything except for zuul.d/project.yaml
      - ^zuul.d/.*_jobs\.yaml$
      - ^zuul.d/base-nested-switch.yaml

- job:
    name: neutron-tempest-plugin-ovn-enforce-scope-old-defaults
    parent: neutron-tempest-plugin-ovn
    vars:
      devstack_localrc:
        NEUTRON_ENFORCE_SCOPE: false

- 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: 3072
      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: 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
              snat_rules_apply_to_nested_networks: true
    irrelevant-files:
      - ^\.pylintrc$
      - ^(test-|)requirements.txt$
      - ^lower-constraints.txt$
      - ^releasenotes/.*$
      - ^doc/.*$
      - ^setup.cfg$
      - ^.*\.rst$
      - ^.*\.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/.*$
      # Ignore everything except for zuul.d/project.yaml
      - ^zuul.d/.*_jobs\.yaml$
      - ^zuul.d/base-nested-switch.yaml

- job:
    name: neutron-tempest-plugin-ovn
    parent: neutron-tempest-plugin-base-nested-switch
    timeout: 10800
    pre-run: playbooks/plugin-ovn-scenario-pre-run.yaml
    vars:
      network_api_extensions_ovn:
        - vlan-transparent
        - qinq
        - external-gateway-multihoming
      devstack_localrc:
        Q_AGENT: ovn
        OVN_AGENT_EXTENSIONS: 'metadata'
        NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_ovn) | join(',') }}"
        # NOTE(ralonsoh): during the eventlet removal, the "logger" mech
        # driver has been removed from this list. Re-add it once the removal
        # is finished or the mech driver does not call monkey_patch().
        Q_ML2_PLUGIN_MECHANISM_DRIVERS: ovn
        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
      # NOTE(ralonsoh): The advance image used "ubuntu-22.04-minimal" has a reported issue (LP#2110520)
      # with the IGMP report messages. Because of that and because ML2/OVN has "igmp_snooping_enable"
      # set, the receiver VM cannot subscribe to the IGMP group nor receive any IGMP message.
      tempest_exclude_regex: "\
        (^neutron_tempest_plugin.scenario.test_multicast.MulticastTestIPv4.test_multicast_between_vms_on_same_network)"
      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
              vlan_qinq: true
          /$NEUTRON_CORE_PLUGIN_CONF:
            ml2:
              type_drivers: local,flat,vlan,geneve
            ml2_type_vlan:
              network_vlan_ranges: foo:1:10,public
            ovn:
              # This feature is available in OVN v24.03.4
              # Latest Ubuntu 24.04 provides OVN v24.03.2
              ovn_router_indirect_snat: false
        test-config:
          $TEMPEST_CONFIG:
            network-feature-enabled:
              available_features: "{{ network_available_features | join(',') }}"
            neutron_plugin_options:
              provider_vlans: public,
              available_type_drivers: local,flat,vlan,geneve
              is_igmp_snooping_enabled: True
              firewall_driver: ovn
              snat_rules_apply_to_nested_networks: false
      zuul_copy_output:
        '{{ devstack_base_dir }}/data/ovs': 'logs'
        '{{ devstack_base_dir }}/data/ovn': 'logs'
        '{{ devstack_log_dir }}/ovn-controller.log': 'logs'
        '{{ devstack_log_dir }}/ovn-northd.log': '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$
      - ^.*\.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/.*$
      # Ignore everything except for zuul.d/project.yaml
      - ^zuul.d/.*_jobs\.yaml$
      - ^zuul.d/base-nested-switch.yaml

- job:  # Needed only in Neutron stable/2024.2
    name: neutron-tempest-plugin-api-ovs-wsgi
    parent: neutron-tempest-plugin-openvswitch
    voting: false
    vars:
      devstack_localrc:
        NEUTRON_DEPLOY_MOD_WSGI: true

- job:  # Needed only in Neutron stable/2024.2
    name: neutron-tempest-plugin-api-ovn-wsgi
    parent: neutron-tempest-plugin-ovn
    voting: false
    vars:
      devstack_localrc:
        NEUTRON_DEPLOY_MOD_WSGI: true

- job:
    name: neutron-tempest-plugin-dvr-multinode-scenario
    parent: tempest-multinode-full-py3
    timeout: 10800
    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.3
        DEFAULT_IMAGE_NAME: cirros-0.6.3-x86_64-uec
        DEFAULT_IMAGE_FILE_NAME: cirros-0.6.3-x86_64-uec.tar.gz
        IMAGE_URLS: https://cloud-images.ubuntu.com/minimal/releases/jammy/release/ubuntu-22.04-minimal-cloudimg-amd64.img
        ADVANCED_IMAGE_NAME: ubuntu-22.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
        NEUTRON_DEPLOY_MOD_WSGI: true
      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
        br-ex-tcpdump: true
        br-int-flows: true
        # Disable OVN services
        ovn-controller: false
        ovn-northd: false
        ovs-vswitchd: false
        ovsdb-server: false
        q-ovn-metadata-agent: false
        # Neutron services
        q-svc: true
        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
              snat_rules_apply_to_nested_networks: false
    group-vars:
      subnode:
        devstack_services:
          tls-proxy: true
          br-ex-tcpdump: true
          br-int-flows: true
          # 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-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_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$
      - ^.*\.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/.*$
      # Ignore everything except for zuul.d/project.yaml
      - ^zuul.d/.*_jobs\.yaml$
      - ^zuul.d/base-nested-switch.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$
      - ^.*\.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/.*$
      - ^neutron_tempest_plugin/api/test_.*$
      - ^neutron_tempest_plugin/api/admin/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/.*$
      # Ignore everything except for neutron/services/externaldns/
      - ^neutron/services/auto_allocate/.*$
      - ^neutron/services/conntrack_helper/.*$
      - ^neutron/services/firewall/.*$
      - ^neutron/services/flavors/.*$
      - ^neutron/services/l3_router/.*$
      - ^neutron/services/local_ip/.*$
      - ^neutron/services/logapi/.*$
      - ^neutron/services/loki/.*$
      - ^neutron/services/metering/.*$
      - ^neutron/services/ndp_proxy/.*$
      - ^neutron/services/network_ip_availability/.*$
      - ^neutron/services/network_segment_range/.*$
      - ^neutron/services/ovn_l3/.*$
      - ^neutron/services/placement_report/.*$
      - ^neutron/services/portforwarding/.*$
      - ^neutron/services/qos/.*$
      - ^neutron/services/rbac/.*$
      - ^neutron/services/revisions/.*$
      - ^neutron/services/segments/.*$
      - ^neutron/services/tag/.*$
      - ^neutron/services/timestamp/.*$
      - ^neutron/services/trunk/.*$
      # Ignore everything except for zuul.d/project.yaml
      - ^zuul.d/.*_jobs\.yaml$
      - ^zuul.d/base-nested-switch.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/.*$
      - ^setup.cfg$
      - ^.*\.rst$
      - ^.*\.sample$
      - ^neutron/locale/.*$
      - ^neutron/tests/unit/.*$
      - ^neutron/tests/fullstack/.*$
      - ^neutron/tests/functional/.*$
      - ^neutron_tempest_plugin/api/test_.*$
      - ^neutron_tempest_plugin/api/admin/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/.*$
      # Ignore everything except for zuul.d/project.yaml
      - ^zuul.d/.*_jobs\.yaml$
      - ^zuul.d/base-nested-switch.yaml

- job:
    name: neutron-tempest-plugin-bgpvpn-bagpipe
    parent: neutron-tempest-plugin-base
    required-projects:
      - openstack/networking-bagpipe
      - openstack/networking-bgpvpn
    timeout: 10800
    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/.*$
      - ^setup.cfg$
      - ^.*\.rst$
      - ^.*\.sample$
      - ^neutron/locale/.*$
      - ^neutron/tests/unit/.*$
      - ^neutron/tests/fullstack/.*$
      - ^neutron/tests/functional/.*$
      - ^neutron_tempest_plugin/api/test_.*$
      - ^neutron_tempest_plugin/api/admin/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/.*$
      # Ignore everything except for zuul.d/project.yaml
      - ^zuul.d/.*_jobs\.yaml$
      - ^zuul.d/base-nested-switch.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/.*$
      - ^setup.cfg$
      - ^.*\.rst$
      - ^.*\.sample$
      - ^neutron/locale/.*$
      - ^neutron/tests/unit/.*$
      - ^neutron/tests/fullstack/.*$
      - ^neutron/tests/functional/.*$
      - ^neutron_tempest_plugin/api/test_.*$
      - ^neutron_tempest_plugin/api/admin/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/.*$
      # Ignore everything except for zuul.d/project.yaml
      - ^zuul.d/.*_jobs\.yaml$
      - ^zuul.d/base-nested-switch.yaml

- job:
    name: neutron-tempest-plugin-fwaas-ovn
    parent: neutron-tempest-plugin-ovn
    timeout: 10800
    required-projects:
      - 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
      network_api_extensions_fwaas:
        - fwaas_v2
      devstack_localrc:
        NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_fwaas) | join(',') }}"
      devstack_local_conf:
        test-config:
          $TEMPEST_CONFIG:
            fwaas:
              driver: ovn
    irrelevant-files: &fwaas_irrelevant_files
      - ^\.pylintrc$
      - ^(test-|)requirements.txt$
      - ^lower-constraints.txt$
      - ^releasenotes/.*$
      - ^doc/.*$
      - ^setup.cfg$
      - ^.*\.rst$
      - ^.*\.sample$
      - ^neutron/locale/.*$
      - ^neutron/tests/unit/.*$
      - ^neutron/tests/fullstack/.*$
      - ^neutron/tests/functional/.*$
      - ^neutron_tempest_plugin/api/test_.*$
      - ^neutron_tempest_plugin/api/admin/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/.*$
      # Ignore everything except for zuul.d/project.yaml
      - ^zuul.d/.*_jobs\.yaml$
      - ^zuul.d/base-nested-switch.yaml

- job:
    name: neutron-tempest-plugin-fwaas-openvswitch
    parent: neutron-tempest-plugin-openvswitch
    required-projects:
      - 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
      network_api_extensions_fwaas:
        - fwaas_v2
      devstack_localrc:
        NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_fwaas) | join(',') }}"
      devstack_services:
        # Neutron services
        q-agt: true
        q-dhcp: true
        q-meta: true
        q-metering: true
        q-l3: true
        neutron-log: false
      devstack_local_conf:
        test-config:
          $TEMPEST_CONFIG:
            fwaas:
              driver: openvswitch
    irrelevant-files: *fwaas_irrelevant_files

- job:
    name: neutron-tempest-plugin-vpnaas
    parent: neutron-tempest-plugin-base
    timeout: 5400
    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/.*$
      - ^setup.cfg$
      - ^.*\.rst$
      - ^.*\.sample$
      - ^neutron/locale/.*$
      - ^neutron/tests/unit/.*$
      - ^neutron/tests/fullstack/.*$
      - ^neutron/tests/functional/.*$
      - ^neutron_tempest_plugin/api/test_.*$
      - ^neutron_tempest_plugin/api/admin/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/.*$
      # Ignore everything except for zuul.d/project.yaml
      - ^zuul.d/.*_jobs\.yaml$
      - ^zuul.d/base-nested-switch.yaml

- job:
    name: neutron-tempest-plugin-vpnaas-ovn
    parent: neutron-tempest-plugin-base
    timeout: 5400
    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_ML2_PLUGIN_MECHANISM_DRIVERS: ovn
      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/.*$
      - ^setup.cfg$
      - ^.*\.rst$
      - ^.*\.sample$
      - ^neutron/locale/.*$
      - ^neutron/tests/unit/.*$
      - ^neutron/tests/fullstack/.*$
      - ^neutron/tests/functional/.*$
      - ^neutron_tempest_plugin/api/test_.*$
      - ^neutron_tempest_plugin/api/admin/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/.*$
      # Ignore everything except for zuul.d/project.yaml
      - ^zuul.d/.*_jobs\.yaml$
      - ^zuul.d/base-nested-switch.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/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/.*$
      - ^setup.cfg$
      - ^.*\.rst$
      - ^.*\.sample$
      - ^neutron/locale/.*$
      - ^neutron/tests/unit/.*$
      - ^neutron/tests/fullstack/.*$
      - ^neutron/tests/functional/.*$
      - ^neutron_tempest_plugin/api/test_.*$
      - ^neutron_tempest_plugin/api/admin/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/.*$
      # Ignore everything except for zuul.d/project.yaml
      - ^zuul.d/.*_jobs\.yaml$
      - ^zuul.d/base-nested-switch.yaml
