Adds Tempest scenario test for networking-bgpvpn
This patch adds a scenario test that creates an l3 VPN and assigns two neutron networks/subnets to it. Two nova VMs are spun up on each network. To verify that the VPN is functional, i.e., forwards traffic between the two subnets, one of the VM pings the other one. Change-Id: Ic38aab48fa364ad53ef061566fe5ebc1a46fec33 Closes-Bug: #1637489
This commit is contained in:
6 changed files with 233 additions and 3 deletions
@@ -1,6 +1,6 @@
# This file is hooked from https://github.com/openstack-infra/project-config/blob/master/jenkins/jobs/networking-bgpvpn.yaml
export OVERRIDE_ENABLED_SERVICES=q-svc,q-agt,q-dhcp,q-l3,key,mysql,rabbit,b-bgp
export OVERRIDE_ENABLED_SERVICES=n-api,n-crt,n-cpu,n-cond,n-sch,q-svc,q-agt,g-api,g-reg,q-dhcp,q-l3,q-meta,key,mysql,rabbit,b-bgp
if [[ $DEVSTACK_GATE_TEMPEST -eq 1 ]] ; then
export DEVSTACK_GATE_TEMPEST_ALL_PLUGINS=1
@@ -11,6 +11,8 @@ fi
export DEVSTACK_LOCAL_CONFIG+=$'\n'"NETWORKING_BGPVPN_DRIVER=BGPVPN:BaGPipe:networking_bgpvpn.neutron.services.service_drivers.bagpipe.bagpipe.BaGPipeBGPVPNDriver:default"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin networking-bagpipe https://git.openstack.org/openstack/networking-bagpipe"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"BAGPIPE_DATAPLANE_DRIVER_IPVPN=mpls_ovs_dataplane.MPLSOVSDataplaneDriver"
# until we do multinode, there is no BGP peer to connect to
export DEVSTACK_LOCAL_CONFIG+=$'\n'"BAGPIPE_BGP_PEERS="
# https://bugs.launchpad.net/devstack/+bug/1567052
# so we need VERBOSE=False until bagpipe-bgp uses rootwrap and is not run with sudo (same for bagpipe-fakerr)
@@ -21,5 +23,5 @@ export DEVSTACK_LOCAL_CONFIG+=$'\n'"VERBOSE=False"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin neutron git://git.openstack.org/openstack/neutron"
# attempt at unbreaking runs on osic-cloud1
export DEVSTACK_LOCAL_CONFIG+=$'\n'"SUBNETPOOL_PREFIX_V4=11.0.0.0/16"
export DEVSTACK_LOCAL_CONFIG+=$'\n'"SUBNETPOOL_PREFIX_V4=10.100.0.0/16"
@@ -4,6 +4,8 @@
_XTRACE_NETWORKING_BGPVPN=$(set +o | grep xtrace)
set -o xtrace
source $NEUTRON_DIR/devstack/lib/l2_agent
if [[ "1ドル" == "source" ]]; then
# no-op
:
@@ -32,9 +34,12 @@ elif [[ "1ドル" == "stack" && "2ドル" == "post-config" ]]; then
fi
if is_service_enabled q-agt && is_service_enabled b-bgp && [[ "$Q_AGENT" == "openvswitch" ]]; then
echo_summary "Configuring OVS agent for bagpipe"
source $NEUTRON_DIR/devstack/lib/l2_agent
plugin_agent_add_l2_agent_extension bagpipe_bgpvpn
configure_l2_agent
# l2pop and arp_responder are required for bagpipe driver
iniset /$Q_PLUGIN_CONF_FILE agent l2_population True
iniset /$Q_PLUGIN_CONF_FILE agent arp_responder True
fi
if is_service_enabled h-eng;then
echo_summary "Enabling bgpvpn in $HEAT_CONF"
@@ -4,3 +4,8 @@ BGPVPN_DASHBOARD_ENABLE="$NETWORKING_BGPVPN_DIR/bgpvpn_dashboard/enabled/*"
BGPVPN_PLUGIN_CLASS="networking_bgpvpn.neutron.services.plugin.BGPVPNPlugin"
NETWORKING_BGPVPN_DRIVER=${NETWORKING_BGPVPN_DRIVER:-BGPVPN:Dummy:networking_bgpvpn.neutron.services.service_drivers.driver_api.BGPVPNDriver:default}
if is_service_enabled q-svc; then
# l2pop is currently required for bagpipe driver
Q_ML2_PLUGIN_MECHANISM_DRIVERS="openvswitch,l2population"
fi
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.