From b4fffc9b3097ba91a5e3f4e9ad4eb300ba834e51 Mon Sep 17 00:00:00 2001 From: frank Date: Thu, 27 Oct 2011 17:31:25 -0700 Subject: [PATCH] allow multiple clusters for baremetal planner --- .../com/cloud/deploy/BareMetalPlanner.java | 24 +++++++++---------- 1 file changed, 11 insertions(+), 13 deletions(-) mode change 100644 => 100755 server/src/com/cloud/deploy/BareMetalPlanner.java diff --git a/server/src/com/cloud/deploy/BareMetalPlanner.java b/server/src/com/cloud/deploy/BareMetalPlanner.java old mode 100644 new mode 100755 index 1df8ce10e1a..4b2f9c1965a --- a/server/src/com/cloud/deploy/BareMetalPlanner.java +++ b/server/src/com/cloud/deploy/BareMetalPlanner.java @@ -87,22 +87,20 @@ public class BareMetalPlanner implements DeploymentPlanner { } } - List clusters = _clusterDao.listByDcHyType(vm.getDataCenterIdToDeployIn(), HypervisorType.BareMetal.toString()); - if (clusters.size() != 1) { - throw new CloudRuntimeException("Invaild baremetal cluster number " + clusters.size()); - } - Cluster cluster = clusters.get(0); - + List clusters = _clusterDao.listByDcHyType(vm.getDataCenterIdToDeployIn(), HypervisorType.BareMetal.toString()); int cpu_requested; long ram_requested; HostVO target = null; - List hosts = _hostDao.listByCluster(cluster.getId()); - if (hostTag != null) { - for (HostVO h : hosts) { - _hostDao.loadDetails(h); - if (h.getDetail("hostTag") != null && h.getDetail("hostTag").equalsIgnoreCase(hostTag)) { - target = h; - break; + for (ClusterVO cluster : clusters) { + List hosts = _hostDao.listByCluster(cluster.getId()); + if (hostTag != null) { + for (HostVO h : hosts) { + _hostDao.loadDetails(h); + if (h.getDetail("hostTag") != null + && h.getDetail("hostTag").equalsIgnoreCase(hostTag)) { + target = h; + break; + } } } }