Updated Branches:
  refs/heads/master d09b46751 -> a95a9dc07

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/a95a9dc0
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/a95a9dc0
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/a95a9dc0

Branch: refs/heads/master
Commit: a95a9dc07c4edcfd1ef4c3ece955ce13f2223b79
Parents: d09b467
Author: Edison Su <[email protected]>
Authored: Wed Sep 26 11:49:34 2012 -0700
Committer: Edison Su <[email protected]>
Committed: Wed Sep 26 11:50:23 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/a95a9dc0/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");
                }

Reply via email to