You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by de...@apache.org on 2014/06/13 10:33:14 UTC

[1/3] git commit: updated refs/heads/master to b43036d

Repository: cloudstack
Updated Branches:
  refs/heads/master 8e0aba460 -> b43036d10


CLOUDSTACK-6865 , CLOUDSTACK-6868: [hyperv] while attaching the volume we were changing the volume's Image format to hypervisor's default Image format, hence it was failing to find the volume with vhdx format. Now changed the behavior to set Image Format for volume only when it is not set


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/66d1eb92
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/66d1eb92
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/66d1eb92

Branch: refs/heads/master
Commit: 66d1eb92f03c39734dcaf83e20639cd9a338e388
Parents: 8e0aba4
Author: Anshul Gangwar <an...@citrix.com>
Authored: Tue Jun 10 16:28:32 2014 +0530
Committer: Devdeep Singh <de...@gmail.com>
Committed: Fri Jun 13 13:26:02 2014 +0530

----------------------------------------------------------------------
 .../cloudstack/engine/orchestration/VolumeOrchestrator.java      | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/66d1eb92/engine/orchestration/src/org/apache/cloudstack/engine/orchestration/VolumeOrchestrator.java
----------------------------------------------------------------------
diff --git a/engine/orchestration/src/org/apache/cloudstack/engine/orchestration/VolumeOrchestrator.java b/engine/orchestration/src/org/apache/cloudstack/engine/orchestration/VolumeOrchestrator.java
index 6256e25..3cf8c6c 100644
--- a/engine/orchestration/src/org/apache/cloudstack/engine/orchestration/VolumeOrchestrator.java
+++ b/engine/orchestration/src/org/apache/cloudstack/engine/orchestration/VolumeOrchestrator.java
@@ -773,7 +773,9 @@ public class VolumeOrchestrator extends ManagerBase implements VolumeOrchestrati
             throw new CloudRuntimeException("Volume shouldn't be null " + volume.getId());
         }
         VolumeVO volVO = _volsDao.findById(vol.getId());
-        volVO.setFormat(getSupportedImageFormatForCluster(rootDiskHyperType));
+        if (volVO.getFormat() == null) {
+            volVO.setFormat(getSupportedImageFormatForCluster(rootDiskHyperType));
+        }
         _volsDao.update(volVO.getId(), volVO);
         return volFactory.getVolume(volVO.getId());
     }


[2/3] git commit: updated refs/heads/master to b43036d

Posted by de...@apache.org.
CLOUDSTACK-6867: Added option to upload the volume in VHDX format


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/7ea3930a
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/7ea3930a
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/7ea3930a

Branch: refs/heads/master
Commit: 7ea3930ae9770c2c52749de9a523f007b80d8b24
Parents: 66d1eb9
Author: Anshul Gangwar <an...@citrix.com>
Authored: Tue Jun 10 16:43:40 2014 +0530
Committer: Devdeep Singh <de...@gmail.com>
Committed: Fri Jun 13 13:26:16 2014 +0530

----------------------------------------------------------------------
 ui/scripts/storage.js | 4 ++++
 1 file changed, 4 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/7ea3930a/ui/scripts/storage.js
----------------------------------------------------------------------
diff --git a/ui/scripts/storage.js b/ui/scripts/storage.js
index 45890b0..df1c998 100644
--- a/ui/scripts/storage.js
+++ b/ui/scripts/storage.js
@@ -306,6 +306,10 @@
                                                 description: 'VHD'
                                             });
                                             items.push({
+                                                id: 'VHDX',
+                                                description: 'VHDX'
+                                            });
+                                            items.push({
                                                 id: 'OVA',
                                                 description: 'OVA'
                                             });


[3/3] git commit: updated refs/heads/master to b43036d

Posted by de...@apache.org.
CLOUDSTACK-6872: [hyperv] removed the redundant connectToRemote, DisconnectRemote methods which in turn fixes this bug. connectToRemote was used to connect to share, but once the share is domain joined we don't need this method as we already have required permissions


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/b43036d1
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/b43036d1
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/b43036d1

Branch: refs/heads/master
Commit: b43036d10e718eea869574780e8ad70b18862b16
Parents: 7ea3930
Author: Anshul Gangwar <an...@citrix.com>
Authored: Wed Jun 11 11:04:35 2014 +0530
Committer: Devdeep Singh <de...@gmail.com>
Committed: Fri Jun 13 13:26:30 2014 +0530

----------------------------------------------------------------------
 .../HypervResource/HypervResourceController.cs  | 15 ---------
 .../ServerResource/HypervResource/Utils.cs      | 33 --------------------
 .../ServerResource/HypervResource/WmiCallsV2.cs |  3 +-
 3 files changed, 1 insertion(+), 50 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/b43036d1/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/HypervResourceController.cs
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/HypervResourceController.cs b/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/HypervResourceController.cs
index 0ad95b8..195a964 100644
--- a/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/HypervResourceController.cs
+++ b/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/HypervResourceController.cs
@@ -236,7 +236,6 @@ namespace HypervResource
                     {
                         TemplateObjectTO dataStore = disk.templateObjectTO;
                         NFSTO share = dataStore.nfsDataStoreTO;
-                        Utils.ConnectToRemote(share.UncPath, share.Domain, share.User, share.Password);
                         string diskPath = Utils.NormalizePath(Path.Combine(share.UncPath, dataStore.path));
                         wmiCallsV2.AttachIso(vmName, diskPath);
                         result = true;
@@ -244,11 +243,6 @@ namespace HypervResource
                     else if (disk.type.Equals("DATADISK"))
                     {
                         VolumeObjectTO volume = disk.volumeObjectTO;
-                        PrimaryDataStoreTO primary = volume.primaryDataStore;
-                        if (!primary.isLocal)
-                        {
-                            Utils.ConnectToRemote(primary.UncPath, primary.Domain, primary.User, primary.Password);
-                        }
                         string diskPath = Utils.NormalizePath(volume.FullFileName);
                         wmiCallsV2.AttachDisk(vmName, diskPath, disk.diskSequence);
                         result = true;
@@ -989,7 +983,6 @@ namespace HypervResource
                     hostPath = Utils.NormalizePath(share.UncPath);
 
                     // Check access to share.
-                    Utils.ConnectToRemote(share.UncPath, share.Domain, share.User, share.Password);
                     Utils.GetShareDetails(share.UncPath, out capacityBytes, out availableBytes);
                     config.setPrimaryStorage((string)cmd.pool.uuid, hostPath);
                 }
@@ -1281,7 +1274,6 @@ namespace HypervResource
                     {
                         volumePath = @"\\" + primary.uri.Host + primary.uri.LocalPath + @"\" + volumeName;
                         volumePath = Utils.NormalizePath(volumePath);
-                        Utils.ConnectToRemote(primary.UncPath, primary.Domain, primary.User, primary.Password);
                     }
                     volume.path = volume.uuid;
                     wmiCallsV2.CreateDynamicVirtualHardDisk(volumeSize, volumePath);
@@ -1554,17 +1546,10 @@ namespace HypervResource
                         if (destTemplateObjectTO.primaryDataStore != null)
                         {
                             destFile = destTemplateObjectTO.FullFileName;
-                            if (!destTemplateObjectTO.primaryDataStore.isLocal)
-                            {
-                                PrimaryDataStoreTO primary = destTemplateObjectTO.primaryDataStore;
-                                Utils.ConnectToRemote(primary.UncPath, primary.Domain, primary.User, primary.Password);
-                            }
                         }
                         else if (destTemplateObjectTO.nfsDataStoreTO != null)
                         {
                             destFile = destTemplateObjectTO.FullFileName;
-                            NFSTO store = destTemplateObjectTO.nfsDataStoreTO;
-                            Utils.ConnectToRemote(store.UncPath, store.Domain, store.User, store.Password);
                         }
                     }
 

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/b43036d1/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/Utils.cs
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/Utils.cs b/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/Utils.cs
index c8e951e..b40cb8f 100644
--- a/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/Utils.cs
+++ b/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/Utils.cs
@@ -128,32 +128,6 @@ namespace HypervResource
             }
         }
 
-        public static void ConnectToRemote(string remoteUNC, string domain, string username, string password)
-        {
-            NETRESOURCE nr = new NETRESOURCE();
-            nr.dwType = RESOURCETYPE_DISK;
-            nr.lpRemoteName = Utils.NormalizePath(remoteUNC);
-            if (domain != null)
-            {
-                username = domain + @"\" + username;
-            }
-
-            int ret = WNetUseConnection(IntPtr.Zero, nr, password, username, 0, null, null, null);
-            if (ret != NO_ERROR)
-            {
-                throw new ArgumentException("net use of share " + remoteUNC + "failed with "+ getErrorForNumber(ret));
-            }
-        }
-
-        public static void DisconnectRemote(string remoteUNC)
-        {
-            int ret = WNetCancelConnection2(remoteUNC, CONNECT_UPDATE_PROFILE, false);
-            if (ret != NO_ERROR)
-            {
-                throw new ArgumentException("net disconnect of share " + remoteUNC + "failed with " + getErrorForNumber(ret));
-            }
-        }
-
         public static void GetShareDetails(string remoteUNC, out long capacity, out long available)
         {
             ulong freeBytesAvailable;
@@ -228,13 +202,6 @@ namespace HypervResource
         [DllImport("advapi32.dll", CharSet = CharSet.Auto, SetLastError = true)]
         public extern static bool DuplicateToken(IntPtr existingTokenHandle, int SECURITY_IMPERSONATION_LEVEL, ref IntPtr duplicateTokenHandle);
 
-        [DllImport("Mpr.dll")]
-        private static extern int WNetUseConnection(IntPtr hwndOwner, NETRESOURCE lpNetResource, string lpPassword, string lpUserID, int dwFlags,
-            string lpAccessName, string lpBufferSize, string lpResult);
-
-        [DllImport("Mpr.dll")]
-        private static extern int WNetCancelConnection2(string lpName, int dwFlags, bool fForce);
-
         [DllImport("kernel32.dll", SetLastError = true, CharSet = CharSet.Auto)]
         private static extern bool GetDiskFreeSpaceEx(string lpDirectoryName,
            out ulong lpFreeBytesAvailable,

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/b43036d1/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCallsV2.cs
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCallsV2.cs b/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCallsV2.cs
index 372f848..b2a7b45 100644
--- a/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCallsV2.cs
+++ b/plugins/hypervisors/hyperv/DotNet/ServerResource/HypervResource/WmiCallsV2.cs
@@ -1,4 +1,4 @@
-// Licensed to the Apache Software Foundation (ASF) under one
+// Licensed to the Apache Software Foundation (ASF) under one
 // or more contributor license agreements.  See the NOTICE file
 // distributed with this work for additional information
 // regarding copyright ownership.  The ASF licenses this file
@@ -333,7 +333,6 @@ namespace HypervResource
                 else if (templateInfo != null && templateInfo.nfsDataStoreTO != null)
                 {
                     NFSTO share = templateInfo.nfsDataStoreTO;
-                    Utils.ConnectToRemote(share.UncPath, share.Domain, share.User, share.Password);
                     // The share is mapped, now attach the iso
                     isoPath = Utils.NormalizePath(Path.Combine(share.UncPath, templateInfo.path));
                 }