Merge "Fix dynamic generation of DNS ips"
diff --git a/classes/cluster/virtual-mcp-pike-dvr-ssl-barbican/openstack/control.yml b/classes/cluster/virtual-mcp-pike-dvr-ssl-barbican/openstack/control.yml
index 5d20cee..778f57d 100644
--- a/classes/cluster/virtual-mcp-pike-dvr-ssl-barbican/openstack/control.yml
+++ b/classes/cluster/virtual-mcp-pike-dvr-ssl-barbican/openstack/control.yml
@@ -258,6 +258,7 @@
     common:
       identity:
         protocol: https
+      default_share_type: default
   salt:
     minion:
       cert:
diff --git a/classes/cluster/virtual-mcp-pike-dvr-ssl-barbican/openstack/share.yml b/classes/cluster/virtual-mcp-pike-dvr-ssl-barbican/openstack/share.yml
index 93a106e..4443276 100644
--- a/classes/cluster/virtual-mcp-pike-dvr-ssl-barbican/openstack/share.yml
+++ b/classes/cluster/virtual-mcp-pike-dvr-ssl-barbican/openstack/share.yml
@@ -13,4 +13,5 @@
   manila:
     common:
       identity:
-        protocol: https
\ No newline at end of file
+        protocol: https
+      default_share_type: default
diff --git a/classes/cluster/virtual-mcp-pike-dvr-ssl-barbican/openstack/telemetry.yml b/classes/cluster/virtual-mcp-pike-dvr-ssl-barbican/openstack/telemetry.yml
index eee65de..c8fb232 100644
--- a/classes/cluster/virtual-mcp-pike-dvr-ssl-barbican/openstack/telemetry.yml
+++ b/classes/cluster/virtual-mcp-pike-dvr-ssl-barbican/openstack/telemetry.yml
@@ -31,7 +31,7 @@
     salt_minion_ca_authority: salt_master_ca
     keepalived_openstack_telemetry_vip_address: ${_param:openstack_telemetry_address}
     keepalived_openstack_telemetry_vip_password: ${_param:openstack_telemetry_keepalived_password}
-    keepalived_openstack_telemetry_vip_interface: ens3
+    keepalived_openstack_telemetry_vip_interface: ens4
     cluster_vip_address: ${_param:openstack_telemetry_address}
     cluster_local_address: ${_param:single_address}
     nginx_proxy_openstack_api_host: ${_param:openstack_telemetry_address}
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/control.yml b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/control.yml
index d254cdb..7c01446 100644
--- a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/control.yml
+++ b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/control.yml
@@ -163,6 +163,8 @@
         address: 127.0.0.1
       identity:
         protocol: https
+      l2gw:
+        enabled: true
   nova:
     controller:
       networking: dvr
@@ -193,6 +195,7 @@
     common:
       identity:
         protocol: https
+      default_share_type: default
   salt:
     minion:
       cert:
diff --git a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/gateway.yml b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/gateway.yml
index 5dbb948..a61319c 100644
--- a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/gateway.yml
+++ b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/gateway.yml
@@ -19,6 +19,10 @@
       notification:
         driver: messagingv2
         topics: "notifications"
+      l2gw:
+        enabled: false
+        ovsdb_hosts:
+          ovsdbx: 127.0.0.1:6632
   linux:
     network:
       interface:
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-dvr-ssl/openstack/share.yml b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/share.yml
index a631079..e144677 100644
--- a/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/share.yml
+++ b/classes/cluster/virtual-mcp-pike-dvr-ssl/openstack/share.yml
@@ -23,3 +23,4 @@
     common:
       identity:
         protocol: https
+      default_share_type: default
diff --git a/classes/cluster/virtual-mcp-pike-dvr/openstack/control.yml b/classes/cluster/virtual-mcp-pike-dvr/openstack/control.yml
index 625e906..b9eff71 100644
--- a/classes/cluster/virtual-mcp-pike-dvr/openstack/control.yml
+++ b/classes/cluster/virtual-mcp-pike-dvr/openstack/control.yml
@@ -116,3 +116,6 @@
         novncproxy_port: 6080
       vncproxy_url: http://${_param:cluster_vip_address}:6080
       workers: 1
+  manila:
+    common:
+      default_share_type: default
diff --git a/classes/cluster/virtual-mcp-pike-dvr/openstack/share.yml b/classes/cluster/virtual-mcp-pike-dvr/openstack/share.yml
index 04de039..8cef3ce 100644
--- a/classes/cluster/virtual-mcp-pike-dvr/openstack/share.yml
+++ b/classes/cluster/virtual-mcp-pike-dvr/openstack/share.yml
@@ -19,3 +19,6 @@
           proto: static
           address: ${_param:single_address}
           netmask: 255.255.255.0
+  manila:
+    common:
+      default_share_type: default
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/control.yml b/classes/cluster/virtual-mcp-pike-ovs/openstack/control.yml
index e4923a0..4ab6709 100644
--- a/classes/cluster/virtual-mcp-pike-ovs/openstack/control.yml
+++ b/classes/cluster/virtual-mcp-pike-ovs/openstack/control.yml
@@ -120,6 +120,10 @@
         engine: file
       images: []
       workers: 1
+  neutron:
+    server:
+      l2gw:
+        enabled: true
   nova:
     controller:
       networking: dvr
@@ -132,3 +136,6 @@
         novncproxy_port: 6080
       vncproxy_url: http://${_param:cluster_vip_address}:6080
       workers: 1
+  manila:
+    common:
+      default_share_type: default
diff --git a/classes/cluster/virtual-mcp-pike-ovs/openstack/gateway.yml b/classes/cluster/virtual-mcp-pike-ovs/openstack/gateway.yml
index 4cb8093..ae64c8f 100644
--- a/classes/cluster/virtual-mcp-pike-ovs/openstack/gateway.yml
+++ b/classes/cluster/virtual-mcp-pike-ovs/openstack/gateway.yml
@@ -11,6 +11,12 @@
     external_interface: ens6
     interface_mtu: 9000
     linux_system_codename: xenial
+  neutron:
+    gateway:
+      l2gw:
+        enabled: false
+        ovsdb_hosts:
+          ovsdbx: 127.0.0.1:6632
   linux:
     network:
       bridge: openvswitch
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-mcp-pike-ovs/openstack/share.yml b/classes/cluster/virtual-mcp-pike-ovs/openstack/share.yml
index 449310b..2ced095 100644
--- a/classes/cluster/virtual-mcp-pike-ovs/openstack/share.yml
+++ b/classes/cluster/virtual-mcp-pike-ovs/openstack/share.yml
@@ -19,3 +19,6 @@
           proto: static
           address: ${_param:single_address}
           netmask: 255.255.255.0
+  manila:
+    common:
+      default_share_type: default
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/init.yml b/classes/cluster/virtual-mcp11-k8s-calico/init.yml
index 66a156f..c75a053 100644
--- a/classes/cluster/virtual-mcp11-k8s-calico/init.yml
+++ b/classes/cluster/virtual-mcp11-k8s-calico/init.yml
@@ -5,7 +5,9 @@
 - system.fluentd.label.default_metric.prometheus
 - system.fluentd.label.default_output.elasticsearch
 - system.fluentd.label.default_output.drop_event
-- system.linux.system.repo.fluentd
+- system.linux.system.repo.mcp.extra
+- system.linux.system.repo.mcp.apt_mirantis.fluentd
+- system.linux.system.repo.mcp.apt_mirantis.openstack
 - cluster.virtual-mcp11-k8s-calico.kubernetes
 - cluster.virtual-mcp11-k8s-calico.stacklight
 - cluster.virtual-mcp11-k8s-calico.infra
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/stacklight/init.yml b/classes/cluster/virtual-mcp11-k8s-calico/stacklight/init.yml
index 3910a1a..8f745af 100644
--- a/classes/cluster/virtual-mcp11-k8s-calico/stacklight/init.yml
+++ b/classes/cluster/virtual-mcp11-k8s-calico/stacklight/init.yml
@@ -13,6 +13,8 @@
     stacklight_node02_address: 172.16.10.108
     stacklight_node03_address: 172.16.10.109
 
+    openstack_version: pike
+
     # Prometheus
     prometheus_control_address: ${_param:stacklight_monitor_address}
     stacklight_log_address: ${_param:stacklight_monitor_address}
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/control.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/control.yml
index 1f8adb0..20d0dea 100644
--- a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/control.yml
+++ b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/control.yml
@@ -133,6 +133,8 @@
       notification:
         driver: messagingv2
         topics: "notifications,${_param:stacklight_notification_topic}"
+      l2gw:
+        enabled: true
   nova:
     controller:
       networking: dvr
diff --git a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/gateway.yml b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/gateway.yml
index 028c83d..fb39eb4 100644
--- a/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/gateway.yml
+++ b/classes/cluster/virtual-offline-pike-ovs-dpdk/openstack/gateway.yml
@@ -11,6 +11,12 @@
     external_interface: ens6
     interface_mtu: 9000
     linux_system_codename: xenial
+  neutron:
+    gateway:
+      l2gw:
+        enabled: false
+        ovsdb_hosts:
+          ovsdbx: 127.0.0.1:6632
   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