Merge "Add wait for network delay"
diff --git a/de/heat-templates/env/bmt402-mstr1-wrkr3-cmp0-gtw0.yaml b/de/heat-templates/env/bmt402-mstr1-wrkr3-cmp0-gtw0.yaml
index 442a71b..77dc495 100644
--- a/de/heat-templates/env/bmt402-mstr1-wrkr3-cmp0-gtw0.yaml
+++ b/de/heat-templates/env/bmt402-mstr1-wrkr3-cmp0-gtw0.yaml
@@ -30,6 +30,8 @@
   worker_metadata: {"labels": {"openstack-control-plane":"enabled","openstack-compute-node":"enabled","openvswitch":"enabled","role":"ceph-osd-node"}}
   cmp_metadata: {"labels": {"openstack-compute-node":"enabled","openvswitch":"enabled", "role":"ceph-osd-node"}}
   gtw_metadata: {"labels": {"openvswitch":"enabled"}}
+  tunnel_interface: 'enp3s0f0'
+  live_migration_interface: 'enp3s0f0'
   functions_override: |
     function network_config {
         PUBLIC_NODE_IP_ADDRESS=${PUBLIC_INTERFACE_IP:-$(ip addr show dev ${PUBLIC_INTERFACE} | grep -Po 'inet \K[\d.]+' | egrep -v "127.0.|172.17")}
diff --git a/de/heat-templates/env/bmt402-mstr1-wrkr3-cmp2-gtw0.yaml b/de/heat-templates/env/bmt402-mstr1-wrkr3-cmp2-gtw0.yaml
index 30cdb5e..997a097 100644
--- a/de/heat-templates/env/bmt402-mstr1-wrkr3-cmp2-gtw0.yaml
+++ b/de/heat-templates/env/bmt402-mstr1-wrkr3-cmp2-gtw0.yaml
@@ -30,6 +30,8 @@
   worker_metadata: {"labels": {"openstack-control-plane":"enabled","openvswitch":"enabled","role":"ceph-osd-node"}}
   cmp_metadata: {"labels": {"openstack-compute-node":"enabled","openvswitch":"enabled", "role":"ceph-osd-node"}}
   gtw_metadata: {"labels": {"openvswitch":"enabled"}}
+  tunnel_interface: 'enp3s0f0'
+  live_migration_interface: 'enp3s0f0'
   functions_override: |
     function network_config {
         PUBLIC_NODE_IP_ADDRESS=${PUBLIC_INTERFACE_IP:-$(ip addr show dev ${PUBLIC_INTERFACE} | grep -Po 'inet \K[\d.]+' | egrep -v "127.0.|172.17")}
diff --git a/de/heat-templates/fragments/SrvInstancesBM.yaml b/de/heat-templates/fragments/SrvInstancesBM.yaml
index ab9fc36..46f8e68 100644
--- a/de/heat-templates/fragments/SrvInstancesBM.yaml
+++ b/de/heat-templates/fragments/SrvInstancesBM.yaml
@@ -66,7 +66,7 @@
             $node_metadata: { get_param: metadata }
             $host_interface: { get_param: host_interface }
             $private_floating_interface: { get_param: private_floating_interface }
-            $private_floating_network_cidr: { str_split: ['/', { get_param: private_floating_network_cidr }, 1] }
+            $private_floating_network_cidr: { get_param: private_floating_network_cidr }
             $private_floating_interface_ip: { get_attr: [private_floating_server_port, fixed_ips, 0, ip_address] }
             $functions_override: { get_param: functions_override }
 
diff --git a/de/heat-templates/fragments/SrvInstancesVM.yaml b/de/heat-templates/fragments/SrvInstancesVM.yaml
index db06a95..5b1a681 100644
--- a/de/heat-templates/fragments/SrvInstancesVM.yaml
+++ b/de/heat-templates/fragments/SrvInstancesVM.yaml
@@ -66,7 +66,7 @@
             $host_interface: { get_param: host_interface }
             $private_floating_interface: { get_param: private_floating_interface }
             $private_floating_interface_ip: { get_attr: [private_floating_server_port, fixed_ips, 0, ip_address] }
-            $private_floating_network_cidr: { str_split: ['/', { get_param: private_floating_network_cidr }, 1] }
+            $private_floating_network_cidr: { get_param: private_floating_network_cidr }
             $functions_override: { get_param: functions_override }
 
   server:
diff --git a/de/heat-templates/scripts/instance_boot.sh b/de/heat-templates/scripts/instance_boot.sh
index 2cb03d9..da79bf0 100644
--- a/de/heat-templates/scripts/instance_boot.sh
+++ b/de/heat-templates/scripts/instance_boot.sh
@@ -7,12 +7,14 @@
 HOST_INTERFACE=$host_interface
 PUBLIC_INTERFACE=$private_floating_interface
 PUBLIC_INTERFACE_IP=$private_floating_interface_ip
-PUBLIC_INTERFACE_NETMASK=$private_floating_network_cidr
+PUBLIC_INTERFACE_CIDR=$private_floating_network_cidr
+PUBLIC_INTERFACE_NETMASK=$(echo ${PUBLIC_INTERFACE_CIDR} | cut -d'/' -f2)
 NODE_TYPE=$node_type
 UCP_MASTER_HOST=$ucp_master_host
 NODE_METADATA='$node_metadata'
 DOCKER_EE_URL='$docker_ee_url'
 DOCKER_EE_RELEASE='$docker_ee_release'
+FLOATING_NETWORK_PREFIXES=$private_floating_network_cidr
 #
 # End of block
 #
diff --git a/de/heat-templates/top.yaml b/de/heat-templates/top.yaml
index f00651e..86324a6 100644
--- a/de/heat-templates/top.yaml
+++ b/de/heat-templates/top.yaml
@@ -113,6 +113,15 @@
   docker_ee_release:
     type: string
     default: 'stable-19.03'
+  tunnel_interface:
+    type: string
+    default: ''
+  live_migration_interface:
+    type: string
+    default: ''
+  metallb_address_pools:
+    type: comma_delimited_list
+    default: ''
 
 resources:
   key_pair:
@@ -381,4 +390,9 @@
     value: { get_param: private_floating_network_pool_end }
   private_floating_network_gateway:
     value: { get_param: private_floating_network_gateway }
-
+  tunnel_interface:
+    value: { get_param: tunnel_interface }
+  live_migration_interface:
+    value: { get_param: live_migration_interface }
+  metallb_address_pools:
+    value: { get_param: metallb_address_pools }