Enable BGPVPN neutron service in some virtual lab moodels

Required for integration testing for E/// features.
Following models updated as agreed with QA team:
 - virtual-offline-pike-ovs-dpdk
 - virtual-mcp-pike-ovs
 - virtual-mcp-pike-dvr-ssl

Change-Id: I657e803be1c44b11fbf2b89848017d60bcf5b3af
Related-Prod: PROD-18395
diff --git a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/compute.yml b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/compute.yml
index 089a3cd..1c34ae7 100644
--- a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/compute.yml
+++ b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/compute.yml
@@ -42,3 +42,15 @@
       notification:
         driver: messagingv2
         topics: "notifications"
+      bgp_vpn:
+        enabled: True
+        driver: bagpipe
+        bagpipe:
+          local_address: ${_param:tenant_address}
+          peers: 127.0.0.1
+          autonomous_system: 64512
+          enable_rtc: True
+      backend:
+        extension:
+          bagpipe_bgpvpn:
+            enabled: True
\ No newline at end of file
diff --git a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/init.yml b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/init.yml
index 9a72e92..35f71e8 100644
--- a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/init.yml
+++ b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/init.yml
@@ -69,6 +69,8 @@
     neutron_compute_dvr: True
     neutron_compute_agent_mode: dvr
     neutron_compute_external_access: True
+    neutron_enable_bgp_vpn: True
+    neutron_bgp_vpn_driver: bagpipe
     galera_server_cluster_name: openstack_cluster
     galera_server_maintenance_password: workshop
     galera_server_admin_password: workshop
diff --git a/classes/cluster/virtual-mcp-pike-ovs/openstack/compute.yml b/classes/cluster/virtual-mcp-pike-ovs/openstack/compute.yml
index 6613c2a..a7817f4 100644
--- a/classes/cluster/virtual-mcp-pike-ovs/openstack/compute.yml
+++ b/classes/cluster/virtual-mcp-pike-ovs/openstack/compute.yml
@@ -15,6 +15,20 @@
     external_interface: ens6
     interface_mtu: 1500
     linux_system_codename: xenial
+  neutron:
+    compute:
+      bgp_vpn:
+        enabled: True
+        driver: bagpipe
+        bagpipe:
+          local_address: ${_param:tenant_address}
+          peers: 127.0.0.1
+          autonomous_system: 64512
+          enable_rtc: True
+      backend:
+        extension:
+          bagpipe_bgpvpn:
+            enabled: True
   nova:
     compute:
       vncproxy_url: http://${_param:cluster_vip_address}:6080
diff --git a/classes/cluster/virtual-mcp-pike-ovs/openstack/init.yml b/classes/cluster/virtual-mcp-pike-ovs/openstack/init.yml
index 647c79f..a1bdf75 100644
--- a/classes/cluster/virtual-mcp-pike-ovs/openstack/init.yml
+++ b/classes/cluster/virtual-mcp-pike-ovs/openstack/init.yml
@@ -56,6 +56,8 @@
     neutron_compute_dvr: False
     neutron_compute_agent_mode: legacy
     neutron_compute_external_access: False
+    neutron_enable_bgp_vpn: True
+    neutron_bgp_vpn_driver: bagpipe
     galera_server_cluster_name: openstack_cluster
     galera_server_maintenance_password: workshop
     galera_server_admin_password: workshop
diff --git a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/compute.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/compute.yml
index b74e2ca..db6c5c0 100644
--- a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/compute.yml
+++ b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/compute.yml
@@ -47,6 +47,20 @@
           - host: ${_param:openstack_control_node01_address}
           - host: ${_param:openstack_control_node02_address}
           - host: ${_param:openstack_control_node03_address}
+  neutron:
+    compute:
+      bgp_vpn:
+        enabled: True
+        driver: bagpipe
+        bagpipe:
+          local_address: ${_param:tenant_address}
+          peers: 127.0.0.1
+          autonomous_system: 64512
+          enable_rtc: True
+      backend:
+        extension:
+          bagpipe_bgpvpn:
+            enabled: True
   linux:
     network:
       bridge: openvswitch
diff --git a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/init.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/init.yml
index 2f132ed..3e5bf97 100644
--- a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/init.yml
+++ b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/init.yml
@@ -19,6 +19,8 @@
     neutron_compute_dvr: False
     neutron_compute_agent_mode: legacy
     neutron_compute_external_access: False
+    neutron_enable_bgp_vpn: True
+    neutron_bgp_vpn_driver: bagpipe
     galera_server_cluster_name: openstack_cluster
     galera_server_maintenance_password: workshop
     galera_server_admin_password: workshop