CLOUDSTACK-6027:CreateVolume from snapshot is failing with S3 on Vmware. (cherry picked from commit d7ec9ca815609d95c29b9db09ee1720bc7df4816)
Signed-off-by: Animesh Chaturvedi <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/85091e9b Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/85091e9b Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/85091e9b Branch: refs/heads/4.3 Commit: 85091e9b6b05a263ca47e1eca483d398b28b4e31 Parents: a439ec9 Author: Min Chen <[email protected]> Authored: Tue Feb 4 15:04:11 2014 -0800 Committer: Animesh Chaturvedi <[email protected]> Committed: Fri Feb 7 13:15:45 2014 -0800 ---------------------------------------------------------------------- .../src/com/cloud/storage/resource/VmwareStorageProcessor.java | 6 ++++++ 1 file changed, 6 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cloudstack/blob/85091e9b/plugins/hypervisors/vmware/src/com/cloud/storage/resource/VmwareStorageProcessor.java ---------------------------------------------------------------------- diff --git a/plugins/hypervisors/vmware/src/com/cloud/storage/resource/VmwareStorageProcessor.java b/plugins/hypervisors/vmware/src/com/cloud/storage/resource/VmwareStorageProcessor.java index fe568cd..6f3f2ef 100644 --- a/plugins/hypervisors/vmware/src/com/cloud/storage/resource/VmwareStorageProcessor.java +++ b/plugins/hypervisors/vmware/src/com/cloud/storage/resource/VmwareStorageProcessor.java @@ -1705,6 +1705,12 @@ public class VmwareStorageProcessor implements StorageProcessor { throw new Exception(msg); } + // strip off the extension since restoreVolumeFromSecStorage internally will append suffix there. + if (backedUpSnapshotUuid.endsWith(".ova")){ + backedUpSnapshotUuid = backedUpSnapshotUuid.replace(".ova", ""); + } else if (backedUpSnapshotUuid.endsWith(".ovf")){ + backedUpSnapshotUuid = backedUpSnapshotUuid.replace(".ovf", ""); + } DatastoreMO primaryDsMo = new DatastoreMO(hyperHost.getContext(), morPrimaryDs); restoreVolumeFromSecStorage(hyperHost, primaryDsMo, newVolumeName, secondaryStorageUrl, backupPath, backedUpSnapshotUuid);
