Updated Branches: refs/heads/4.0 995bab603 -> 47671b9dc
find local storage based on name label Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/47671b9d Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/47671b9d Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/47671b9d Branch: refs/heads/4.0 Commit: 47671b9dc67f03e35312a6441cc256c60985f07e Parents: 995bab6 Author: Edison Su <[email protected]> Authored: Wed Sep 26 11:49:34 2012 -0700 Committer: Edison Su <[email protected]> Committed: Wed Sep 26 11:49:44 2012 -0700 ---------------------------------------------------------------------- .../hypervisor/xen/resource/XcpOssResource.java | 15 +++++++++++++-- 1 files changed, 13 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/47671b9d/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XcpOssResource.java ---------------------------------------------------------------------- diff --git a/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XcpOssResource.java b/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XcpOssResource.java index 0a10647..d22c8b5 100644 --- a/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XcpOssResource.java +++ b/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XcpOssResource.java @@ -20,6 +20,7 @@ package com.cloud.hypervisor.xen.resource; import java.io.File; import java.util.ArrayList; import java.util.List; +import java.util.Map; import java.util.Set; import javax.ejb.Local; @@ -44,6 +45,7 @@ import com.cloud.utils.exception.CloudRuntimeException; import com.cloud.utils.script.Script; import com.cloud.vm.VirtualMachine; import com.xensource.xenapi.Connection; +import com.xensource.xenapi.SR; import com.xensource.xenapi.Types; import com.xensource.xenapi.VBD; import com.xensource.xenapi.VDI; @@ -82,9 +84,18 @@ public class XcpOssResource extends CitrixResourceBase { } protected VBD createPatchVbd(Connection conn, String vmName, VM vm) throws XmlRpcException, XenAPIException { - if (_host.localSRuuid != null) { + String localStorageUuid = null; + Map<SR, SR.Record> map = SR.getAllRecords(conn); + for (Map.Entry<SR, SR.Record> entry : map.entrySet()) { + SR.Record srRec = entry.getValue(); + if (srRec.nameLabel.equalsIgnoreCase("local-storage")) { + localStorageUuid = srRec.uuid; + break; + } + } + if (localStorageUuid != null) { //create an iso vdi on it - String result = callHostPlugin(conn, "vmops", "createISOVHD", "uuid", _host.localSRuuid); + String result = callHostPlugin(conn, "vmops", "createISOVHD", "uuid", localStorageUuid); if (result == null || result.equalsIgnoreCase("Failed")) { throw new CloudRuntimeException("can not create systemvm vdi"); }
