Merge "Add ironic params to osds,lmas,ntws"
diff --git a/de/heat-templates/env/bmt410-mstr3-wrkr3-cmp0-gtw0-osd3.yaml b/de/heat-templates/env/bmt410-mstr3-wrkr3-cmp0-gtw0-osd3.yaml
index ee32195..bad2f31 100644
--- a/de/heat-templates/env/bmt410-mstr3-wrkr3-cmp0-gtw0-osd3.yaml
+++ b/de/heat-templates/env/bmt410-mstr3-wrkr3-cmp0-gtw0-osd3.yaml
@@ -16,7 +16,7 @@
   gtws_flavor: oscore-bm-lab-01
   lmas_flavor: oscore-bm-lab-01
   osds_flavor: si-bm-410-64-16-hdd2x2t-ssd1x500g
-  spares_flavor: si-bm-410-64-16-hdd2x2t-ssd1x500g
+  spares_flavor: si-bm-410-64-16-hdd2x2t-ssd1x500g-spare
   masters_size: 2  # UCP nodes
   worker_size: 3  # OpenStack controller nodes
   cmp_size: 3
@@ -50,23 +50,31 @@
   hardware_metadata: |
     '0c:c4:7a:33:26:7c':
       write_files:
+      - path: /usr/share/metadata/ceph.yaml
+        content: |
+         storageDevices:
+           - name: sdb
+             role: hdd
+             sizeGb: 500
+           - name: sdc
+             role: hdd
+             sizeGb: 500
+         ramGb: 64
+         cores: 12
+         ips:
+           - 192.168.122.101
+         crushPath: {}
       - path: '/etc/netplan/99-cz7714-osd.yaml'
         content: |
           network:
             version: 2
             ethernets:
-              eno1:
+              eno1: &mtu9100
                 dhcp4: false
                 mtu: 9100
-              ens3f1:
-                dhcp4: false
-                mtu: 9100
-              ens3f2:
-                dhcp4: false
-                mtu: 9100
-              ens3f3:
-                dhcp4: false
-                mtu: 9100
+              ens3f1: *mtu9100
+              ens3f2: *mtu9100
+              ens3f3: *mtu9100
             bonds:
               bond0:
                 dhcp4: no
@@ -118,23 +126,31 @@
 
     '0c:c4:7a:33:26:6e':
       write_files:
+      - path: /usr/share/metadata/ceph.yaml
+        content: |
+         storageDevices:
+           - name: sdb
+             role: hdd
+             sizeGb: 500
+           - name: sdc
+             role: hdd
+             sizeGb: 500
+         ramGb: 64
+         cores: 12
+         ips:
+           - 192.168.122.102
+         crushPath: {}
       - path: '/etc/netplan/99-cz7725-osd.yaml'
         content: |
           network:
             version: 2
             ethernets:
-              eno1:
+              eno1: &mtu9100
                 dhcp4: false
                 mtu: 9100
-              ens3f1:
-                dhcp4: false
-                mtu: 9100
-              ens3f2:
-                dhcp4: false
-                mtu: 9100
-              ens3f3:
-                dhcp4: false
-                mtu: 9100
+              ens3f1: *mtu9100
+              ens3f2: *mtu9100
+              ens3f3: *mtu9100
             bonds:
               bond0:
                 dhcp4: no
@@ -186,23 +202,31 @@
 
     '0c:c4:7a:33:26:6a':
       write_files:
+      - path: /usr/share/metadata/ceph.yaml
+        content: |
+         storageDevices:
+           - name: sdb
+             role: hdd
+             sizeGb: 500
+           - name: sdc
+             role: hdd
+             sizeGb: 500
+         ramGb: 64
+         cores: 12
+         ips:
+           - 192.168.122.103
+         crushPath: {}
       - path: '/etc/netplan/99-cz7726-osd.yaml'
         content: |
           network:
             version: 2
             ethernets:
-              eno1:
+              eno1: &mtu9100
                 dhcp4: false
                 mtu: 9100
-              ens3f1:
-                dhcp4: false
-                mtu: 9100
-              ens3f2:
-                dhcp4: false
-                mtu: 9100
-              ens3f3:
-                dhcp4: false
-                mtu: 9100
+              ens3f1: *mtu9100
+              ens3f2: *mtu9100
+              ens3f3: *mtu9100
             bonds:
               bond0:
                 dhcp4: no
@@ -259,18 +283,12 @@
           network:
             version: 2
             ethernets:
-              eno1:
+              eno1: &mtu9100
                 dhcp4: false
                 mtu: 9100
-              ens3f1:
-                dhcp4: false
-                mtu: 9100
-              ens3f2:
-                dhcp4: false
-                mtu: 9100
-              ens3f3:
-                dhcp4: false
-                mtu: 9100
+              ens3f1: *mtu9100
+              ens3f2: *mtu9100
+              ens3f3: *mtu9100
             bonds:
               bond0:
                 dhcp4: no
@@ -327,18 +345,12 @@
           network:
             version: 2
             ethernets:
-              ens11f0:
+              ens11f0: &mtu9100
                 dhcp4: false
                 mtu: 9100
-              ens11f1:
-                dhcp4: false
-                mtu: 9100
-              ens11f2:
-                dhcp4: false
-                mtu: 9100
-              ens11f3:
-                dhcp4: false
-                mtu: 9100
+              ens11f1: *mtu9100
+              ens11f2: *mtu9100
+              ens11f3: *mtu9100
             bonds:
               bond0:
                 dhcp4: no
@@ -389,18 +401,12 @@
           network:
             version: 2
             ethernets:
-              ens11f0:
+              ens11f0: &mtu9100
                 dhcp4: false
                 mtu: 9100
-              ens11f1:
-                dhcp4: false
-                mtu: 9100
-              ens11f2:
-                dhcp4: false
-                mtu: 9100
-              ens11f3:
-                dhcp4: false
-                mtu: 9100
+              ens11f1: *mtu9100
+              ens11f2: *mtu9100
+              ens11f3: *mtu9100
             bonds:
               bond0:
                 dhcp4: no
@@ -451,18 +457,12 @@
           network:
             version: 2
             ethernets:
-              ens11f0:
+              ens11f0: &mtu9100
                 dhcp4: false
                 mtu: 9100
-              ens11f1:
-                dhcp4: false
-                mtu: 9100
-              ens11f2:
-                dhcp4: false
-                mtu: 9100
-              ens11f3:
-                dhcp4: false
-                mtu: 9100
+              ens11f1: *mtu9100
+              ens11f2: *mtu9100
+              ens11f3: *mtu9100
             bonds:
               bond0:
                 dhcp4: no
@@ -513,18 +513,12 @@
           network:
             version: 2
             ethernets:
-              eno1:
+              eno1: &mtu9100
                 dhcp4: false
                 mtu: 9100
-              ens4f1:
-                dhcp4: false
-                mtu: 9100
-              ens4f2:
-                dhcp4: false
-                mtu: 9100
-              ens4f3:
-                dhcp4: false
-                mtu: 9100
+              ens4f1: *mtu9100
+              ens4f2: *mtu9100
+              ens4f3: *mtu9100
             bonds:
               bond0:
                 dhcp4: no
@@ -564,18 +558,12 @@
           network:
             version: 2
             ethernets:
-              eno1:
+              eno1: &mtu9100
                 dhcp4: false
                 mtu: 9100
-              ens4f1:
-                dhcp4: false
-                mtu: 9100
-              ens4f2:
-                dhcp4: false
-                mtu: 9100
-              ens4f3:
-                dhcp4: false
-                mtu: 9100
+              ens4f1: *mtu9100
+              ens4f2: *mtu9100
+              ens4f3: *mtu9100
             bonds:
               bond0:
                 dhcp4: no
@@ -615,18 +603,12 @@
           network:
             version: 2
             ethernets:
-              eno1:
+              eno1: &mtu9100
                 dhcp4: false
                 mtu: 9100
-              ens4f1:
-                dhcp4: false
-                mtu: 9100
-              ens4f2:
-                dhcp4: false
-                mtu: 9100
-              ens4f3:
-                dhcp4: false
-                mtu: 9100
+              ens4f1: *mtu9100
+              ens4f2: *mtu9100
+              ens4f3: *mtu9100
             bonds:
               bond0:
                 dhcp4: no
@@ -666,18 +648,12 @@
           network:
             version: 2
             ethernets:
-              enp3s0f0:
+              enp3s0f0: &mtu9100
                 dhcp4: false
                 mtu: 9100
-              enp3s0f1:
-                dhcp4: false
-                mtu: 9100
-              enp3s0f2:
-                dhcp4: false
-                mtu: 9100
-              enp3s0f3:
-                dhcp4: false
-                mtu: 9100
+              enp3s0f1: *mtu9100
+              enp3s0f2: *mtu9100
+              enp3s0f3: *mtu9100
             bonds:
               bond0:
                 dhcp4: no
@@ -728,18 +704,12 @@
           network:
             version: 2
             ethernets:
-              enp3s0f0:
+              enp3s0f0: &mtu9100
                 dhcp4: false
                 mtu: 9100
-              enp3s0f1:
-                dhcp4: false
-                mtu: 9100
-              enp3s0f2:
-                dhcp4: false
-                mtu: 9100
-              enp3s0f3:
-                dhcp4: false
-                mtu: 9100
+              enp3s0f1: *mtu9100
+              enp3s0f2: *mtu9100
+              enp3s0f3: *mtu9100
             bonds:
               bond0:
                 dhcp4: no
@@ -790,18 +760,12 @@
           network:
             version: 2
             ethernets:
-              enp3s0f0:
+              enp3s0f0: &mtu9100
                 dhcp4: false
                 mtu: 9100
-              enp3s0f1:
-                dhcp4: false
-                mtu: 9100
-              enp3s0f2:
-                dhcp4: false
-                mtu: 9100
-              enp3s0f3:
-                dhcp4: false
-                mtu: 9100
+              enp3s0f1: *mtu9100
+              enp3s0f2: *mtu9100
+              enp3s0f3: *mtu9100
             bonds:
               bond0:
                 dhcp4: no
diff --git a/de/heat-templates/env/mstr1-wrkr3-cmp2-ntw3-lma3.yaml b/de/heat-templates/env/mstr1-wrkr3-cmp2-ntw3-lma3.yaml
index ac49033..f309a7e 100644
--- a/de/heat-templates/env/mstr1-wrkr3-cmp2-ntw3-lma3.yaml
+++ b/de/heat-templates/env/mstr1-wrkr3-cmp2-ntw3-lma3.yaml
@@ -22,6 +22,8 @@
   cluster_public_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCp0evjOaK8c8SKYK4r2+0BN7g+8YSvQ2n8nFgOURCyvkJqOHi1qPGZmuN0CclYVdVuZiXbWw3VxRbSW3EH736VzgY1U0JmoTiSamzLHaWsXvEIW8VCi7boli539QJP0ikJiBaNAgZILyCrVPN+A6mfqtacs1KXdZ0zlMq1BPtFciR1JTCRcVs5vP2Wwz5QtY2jMIh3aiwkePjMTQPcfmh1TkOlxYu5IbQyZ3G1ahA0mNKI9a0dtF282av/F6pwB/N1R1nEZ/9VtcN2I1mf1NW/tTHEEcTzXYo1R/8K9vlqAN8QvvGLZtZduGviNVNoNWvoxaXxDt8CPv2B2NCdQFZp
   private_floating_network_cidr: '10.11.12.0/24'
   private_floating_network_gateway: '10.11.12.1'
+  private_floating_network_ipam_pool_start: '10.11.12.3'
+  private_floating_network_ipam_pool_end: '10.11.12.99'
   control_network_vsrx_peering_ip: '10.10.0.131'
   private_floating_interface: 'ens4'
   worker_metadata: {"labels": {"openstack-control-plane":"enabled""role":"ceph-osd-node"}}
diff --git a/de/heat-templates/env/mstr1-wrkr3-cmp2-ntw3.yaml b/de/heat-templates/env/mstr1-wrkr3-cmp2-ntw3.yaml
index 9d90270..44f7cd7 100644
--- a/de/heat-templates/env/mstr1-wrkr3-cmp2-ntw3.yaml
+++ b/de/heat-templates/env/mstr1-wrkr3-cmp2-ntw3.yaml
@@ -20,6 +20,8 @@
   ucp_boot_timeout: 3600
   cluster_public_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCp0evjOaK8c8SKYK4r2+0BN7g+8YSvQ2n8nFgOURCyvkJqOHi1qPGZmuN0CclYVdVuZiXbWw3VxRbSW3EH736VzgY1U0JmoTiSamzLHaWsXvEIW8VCi7boli539QJP0ikJiBaNAgZILyCrVPN+A6mfqtacs1KXdZ0zlMq1BPtFciR1JTCRcVs5vP2Wwz5QtY2jMIh3aiwkePjMTQPcfmh1TkOlxYu5IbQyZ3G1ahA0mNKI9a0dtF282av/F6pwB/N1R1nEZ/9VtcN2I1mf1NW/tTHEEcTzXYo1R/8K9vlqAN8QvvGLZtZduGviNVNoNWvoxaXxDt8CPv2B2NCdQFZp
   private_floating_network_cidr: '10.11.12.0/24'
+  private_floating_network_ipam_pool_start: '10.11.12.3'
+  private_floating_network_ipam_pool_end: '10.11.12.99'
   private_floating_network_gateway: '10.11.12.1'
   control_network_vsrx_peering_ip: '10.10.0.131'
   private_floating_interface: 'ens4'
diff --git a/de/heat-templates/env/mstr1-wrkr3-cmp3-ntw3.yaml b/de/heat-templates/env/mstr1-wrkr3-cmp3-ntw3.yaml
index 8b0f6e7..d46cee8 100644
--- a/de/heat-templates/env/mstr1-wrkr3-cmp3-ntw3.yaml
+++ b/de/heat-templates/env/mstr1-wrkr3-cmp3-ntw3.yaml
@@ -21,6 +21,8 @@
   cluster_public_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCp0evjOaK8c8SKYK4r2+0BN7g+8YSvQ2n8nFgOURCyvkJqOHi1qPGZmuN0CclYVdVuZiXbWw3VxRbSW3EH736VzgY1U0JmoTiSamzLHaWsXvEIW8VCi7boli539QJP0ikJiBaNAgZILyCrVPN+A6mfqtacs1KXdZ0zlMq1BPtFciR1JTCRcVs5vP2Wwz5QtY2jMIh3aiwkePjMTQPcfmh1TkOlxYu5IbQyZ3G1ahA0mNKI9a0dtF282av/F6pwB/N1R1nEZ/9VtcN2I1mf1NW/tTHEEcTzXYo1R/8K9vlqAN8QvvGLZtZduGviNVNoNWvoxaXxDt8CPv2B2NCdQFZp
   private_floating_network_cidr: '10.11.12.0/24'
   private_floating_network_gateway: '10.11.12.1'
+  private_floating_network_ipam_pool_start: '10.11.12.3'
+  private_floating_network_ipam_pool_end: '10.11.12.99'
   control_network_vsrx_peering_ip: '10.10.0.131'
   private_floating_interface: 'ens4'
   worker_metadata: {"labels": {"openstack-control-plane":"enabled","role":"ceph-osd-node","local-volume-provisioner": "enabled"}}
diff --git a/de/heat-templates/env/mstr3-wrkr3-cmp2-ntw3-lma0-osd3.yaml b/de/heat-templates/env/mstr3-wrkr3-cmp2-ntw3-lma0-osd3.yaml
new file mode 100644
index 0000000..a712146
--- /dev/null
+++ b/de/heat-templates/env/mstr3-wrkr3-cmp2-ntw3-lma0-osd3.yaml
@@ -0,0 +1,57 @@
+resource_registry:
+  "MCP2::NetworkAcc": ../fragments/NetworkAccVM.yaml
+  "MCP2::NetworkAccStorage": ../fragments/NetworkAccVMStorage.yaml
+  "MCP2::NetworkPrvFl": ../fragments/NetworkPrvFlVSRX.yaml
+  "MCP2::NetworkIronicFlat": ../fragments/NetworkIronicFlat.yaml
+  "MCP2::SrvInstances": ../fragments/SrvInstancesVM.yaml
+  "MCP2::SrvInstancesCeph": ../fragments/SrvInstancesVMCeph.yaml
+  "MCP2::SrvInstancesCephOSD": ../fragments/SrvInstancesVMCephOSD.yaml
+
+parameters:
+  image: bionic-server-cloudimg-amd64-20190612
+  ucp_flavor: system.compact.openstack.control
+  masters_flavor: system.compact.openstack.control
+  workers_flavor: system.compact.openstack.control
+  cmps_flavor: system.virtual.openstack.k8s.compute.small
+  osds_flavor: system.virtual.ceph.osd
+  ntws_flavor: system.compact.opencontrail.control
+  public_net_id: public
+  masters_size: 2
+  worker_size: 3
+  cmp_size: 2
+  lma_size: 0
+  osd_size: 3
+  gtw_size: 0
+  ntw_size: 3
+  ucp_boot_timeout: 3600
+  cluster_public_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCp0evjOaK8c8SKYK4r2+0BN7g+8YSvQ2n8nFgOURCyvkJqOHi1qPGZmuN0CclYVdVuZiXbWw3VxRbSW3EH736VzgY1U0JmoTiSamzLHaWsXvEIW8VCi7boli539QJP0ikJiBaNAgZILyCrVPN+A6mfqtacs1KXdZ0zlMq1BPtFciR1JTCRcVs5vP2Wwz5QtY2jMIh3aiwkePjMTQPcfmh1TkOlxYu5IbQyZ3G1ahA0mNKI9a0dtF282av/F6pwB/N1R1nEZ/9VtcN2I1mf1NW/tTHEEcTzXYo1R/8K9vlqAN8QvvGLZtZduGviNVNoNWvoxaXxDt8CPv2B2NCdQFZp
+  private_floating_network_cidr: '10.11.12.0/24'
+  private_floating_network_gateway: '10.11.12.1'
+  private_floating_network_ipam_pool_start: '10.11.12.3'
+  private_floating_network_ipam_pool_end: '10.11.12.99'
+  control_network_vsrx_peering_ip: '10.10.0.131'
+  private_floating_interface: 'ens4'
+  worker_metadata: {"labels": {"openstack-control-plane":"enabled", "openvswitch":"enabled", "openstack-gateway": "enabled","local-volume-provisioner": "enabled","role": "stacklight", "stacklight": "enabled"}}
+  cmp_metadata: {"labels": {"openstack-compute-node": "enabled", "tfvrouter": "enabled"}}
+  osd_metadata: {"labels": {"role": "ceph-osd-node"}}
+  ntw_metadata: {"labels": {"tfanalytics": "enabled", "tfconfig": "enabled", "tfcontrol": "enabled", "tfwebui": "enabled", "tfconfigdb": "enabled", "tfanalyticsdb": "enabled","local-volume-provisioner": "enabled"}}
+  # hardware_metadata which is used for Ceph requires flavor with
+  # ephemeral storage because it is used for Ceph bluestore.
+  hardware_metadata: |
+    '00:00:00:00:00:00':
+      write_files:
+        - path: /usr/share/metadata/ceph.yaml
+          content: |
+            storageDevices:
+              - name: vdb
+                role: hdd
+                sizeGb: 20
+            ramGb: 8
+            cores: 2
+            # The roles will be assigned based on node labels.
+            # roles:
+            #   - mon
+            #   - mgr
+            ips:
+              - 192.168.122.101
+            crushPath: {}
diff --git a/de/heat-templates/env/mstr3-wrkr3-cmp2-ntw3-lma3-osd3.yaml b/de/heat-templates/env/mstr3-wrkr3-cmp2-ntw3-lma3-osd3.yaml
index 0396071..ddac835 100644
--- a/de/heat-templates/env/mstr3-wrkr3-cmp2-ntw3-lma3-osd3.yaml
+++ b/de/heat-templates/env/mstr3-wrkr3-cmp2-ntw3-lma3-osd3.yaml
@@ -28,6 +28,8 @@
   cluster_public_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCp0evjOaK8c8SKYK4r2+0BN7g+8YSvQ2n8nFgOURCyvkJqOHi1qPGZmuN0CclYVdVuZiXbWw3VxRbSW3EH736VzgY1U0JmoTiSamzLHaWsXvEIW8VCi7boli539QJP0ikJiBaNAgZILyCrVPN+A6mfqtacs1KXdZ0zlMq1BPtFciR1JTCRcVs5vP2Wwz5QtY2jMIh3aiwkePjMTQPcfmh1TkOlxYu5IbQyZ3G1ahA0mNKI9a0dtF282av/F6pwB/N1R1nEZ/9VtcN2I1mf1NW/tTHEEcTzXYo1R/8K9vlqAN8QvvGLZtZduGviNVNoNWvoxaXxDt8CPv2B2NCdQFZp
   private_floating_network_cidr: '10.11.12.0/24'
   private_floating_network_gateway: '10.11.12.1'
+  private_floating_network_ipam_pool_start: '10.11.12.3'
+  private_floating_network_ipam_pool_end: '10.11.12.99'
   control_network_vsrx_peering_ip: '10.10.0.131'
   private_floating_interface: 'ens4'
   worker_metadata: {"labels": {"openstack-control-plane": "enabled", "openvswitch": "enabled","openstack-gateway":"enabled","local-volume-provisioner": "enabled"}}
diff --git a/de/heat-templates/fragments/NetworkPrvFlVSRX.yaml b/de/heat-templates/fragments/NetworkPrvFlVSRX.yaml
index 5ba7015..b8b63b5 100644
--- a/de/heat-templates/fragments/NetworkPrvFlVSRX.yaml
+++ b/de/heat-templates/fragments/NetworkPrvFlVSRX.yaml
@@ -50,7 +50,7 @@
     properties:
       name: { list_join: ['-', [get_param: "OS::stack_name", 'vsrx01']] }
       availability_zone: nova
-      image: vsrx-mcp2-external
+      image: vsrx-mcp2-tf
       flavor: oc_vsrx
       networks:
         - port: { get_resource: accessible_server_port }