Repository: cloudstack Updated Branches: refs/heads/master 97768b265 -> 9e7fbae52
Revert "CLOUDSTACK-7533: Wrong download URL is generated when using multiple SSVMs in a zone. The public ip of the url would sometime point to the wrong ssvm when the url was created on another one." This reverts commit f3b5a6ebc70d5bfb2c77b6aa359d7eb79b4507e5. Reverting since a better fix is available with CLOUDSTACK-6478 Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/9e7fbae5 Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/9e7fbae5 Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/9e7fbae5 Branch: refs/heads/master Commit: 9e7fbae52fcbc2a99120d08158c6c99bdbd75b2c Parents: 97768b2 Author: Nitin Mehta <[email protected]> Authored: Mon Oct 6 15:00:32 2014 -0700 Committer: Nitin Mehta <[email protected]> Committed: Mon Oct 6 15:00:32 2014 -0700 ---------------------------------------------------------------------- .../src/com/cloud/hypervisor/guru/VMwareGuru.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cloudstack/blob/9e7fbae5/plugins/hypervisors/vmware/src/com/cloud/hypervisor/guru/VMwareGuru.java ---------------------------------------------------------------------- diff --git a/plugins/hypervisors/vmware/src/com/cloud/hypervisor/guru/VMwareGuru.java b/plugins/hypervisors/vmware/src/com/cloud/hypervisor/guru/VMwareGuru.java index ef74794..abc7cdb 100644 --- a/plugins/hypervisors/vmware/src/com/cloud/hypervisor/guru/VMwareGuru.java +++ b/plugins/hypervisors/vmware/src/com/cloud/hypervisor/guru/VMwareGuru.java @@ -48,6 +48,7 @@ import com.cloud.agent.api.CreatePrivateTemplateFromVolumeCommand; import com.cloud.agent.api.CreateVolumeFromSnapshotCommand; import com.cloud.agent.api.UnregisterNicCommand; import com.cloud.agent.api.storage.CopyVolumeCommand; +import com.cloud.agent.api.storage.CreateEntityDownloadURLCommand; import com.cloud.agent.api.storage.CreateVolumeOVACommand; import com.cloud.agent.api.storage.PrepareOVAPackingCommand; import com.cloud.agent.api.to.DataObjectType; @@ -393,8 +394,20 @@ public class VMwareGuru extends HypervisorGuruBase implements HypervisorGuru, Co } else { needDelegation = true; } + } else if (cmd instanceof CreateEntityDownloadURLCommand) { + DataTO srcData = ((CreateEntityDownloadURLCommand)cmd).getData(); + if ((HypervisorType.VMware == srcData.getHypervisorType())) { + needDelegation = true; + } + if (srcData.getObjectType() == DataObjectType.VOLUME) { + VolumeObjectTO volumeObjectTO = (VolumeObjectTO)srcData; + if (Storage.ImageFormat.OVA == volumeObjectTO.getFormat()) { + needDelegation = true; + } + } } - if(!needDelegation) { + + if (!needDelegation) { return new Pair<Boolean, Long>(Boolean.FALSE, new Long(hostId)); } HostVO host = _hostDao.findById(hostId);
