[multirack] Honor number of compute nodes per rack

Related-Prod: PRODX-3456
Change-Id: I91d5f961b9f6d264332d64bbdd9bfafc9850b268
diff --git a/de/heat-templates/fragments/multirack/Rack.yaml b/de/heat-templates/fragments/multirack/Rack.yaml
index 83b6927..0170933 100644
--- a/de/heat-templates/fragments/multirack/Rack.yaml
+++ b/de/heat-templates/fragments/multirack/Rack.yaml
@@ -35,6 +35,8 @@
     type: string
   rack_router:
     type: string
+  cmp_size:
+    type: number
 resources:
 
   control_network:
@@ -56,23 +58,27 @@
       subnet: { get_resource: control_subnet }
 
   cmp:
+    type: OS::Heat::ResourceGroup
     depends_on:
-    - router_control_iface
-    type: ./SrvInstancesVMRack.yaml
+     - router_control_iface
     properties:
-      metadata: { get_param: cmp_metadata}
-      docker_ee_url: { get_param: docker_ee_url }
-      docker_ee_release: { get_param: docker_ee_release }
-      docker_ucp_image: { get_param: docker_ucp_image}
-      node_type: "worker"
-      key_name: { get_param: key_name }
-      image: { get_param: image }
-      flavor: { get_param: cmp_flavor }
-      control_network: { get_resource: control_network }
-      control_subnet_id: { get_resource: control_subnet }
-      public_net_id: { get_param: public_net_id }
-      control_network_cidr: { get_param: control_network_cidr }
-      ucp_master_host: { get_param: ucp_master_host }
+      count: { get_param: cmp_size }
+      resource_def:
+        type: ./SrvInstancesVMRack.yaml
+        properties:
+          metadata: { get_param: cmp_metadata}
+          docker_ee_url: { get_param: docker_ee_url }
+          docker_ee_release: { get_param: docker_ee_release }
+          docker_ucp_image: { get_param: docker_ucp_image}
+          node_type: "worker"
+          key_name: { get_param: key_name }
+          image: { get_param: image }
+          flavor: { get_param: cmp_flavor }
+          control_network: { get_resource: control_network }
+          control_subnet_id: { get_resource: control_subnet }
+          public_net_id: { get_param: public_net_id }
+          control_network_cidr: { get_param: control_network_cidr }
+          ucp_master_host: { get_param: ucp_master_host }
 
 outputs:
   cmp_public_ip: