mirror of https://github.com/apache/cloudstack.git
fixed a template creation bug
Conflicts: server/src/com/cloud/storage/StorageManager.java
This commit is contained in:
parent
e186369c51
commit
d902d313b7
|
|
@ -3,12 +3,12 @@
|
|||
# major.minor.patch versioning scheme for vmops
|
||||
company.major.version=2
|
||||
company.minor.version=2
|
||||
company.patch.version=4
|
||||
company.patch.version=8
|
||||
|
||||
svn.revision=2
|
||||
|
||||
# copyright year
|
||||
company.copyright.year=2008-2010
|
||||
company.url=http://www.vmops.com
|
||||
company.copyright.year=2008-2011
|
||||
company.url=http://www.cloud.com
|
||||
company.license.name=GPL
|
||||
company.name=VMOps Inc.
|
||||
company.name=Cloud.com Inc.
|
||||
|
|
|
|||
|
|
@ -435,12 +435,7 @@ public class ApiDBUtils {
|
|||
if (vmTemplate.getHypervisorType() == HypervisorType.BareMetal) {
|
||||
return _templateHostDao.listByTemplateId(templateId).get(0);
|
||||
} else {
|
||||
HostVO secondaryStorageHost = _storageMgr.getSecondaryStorageHost(zoneId);
|
||||
if (secondaryStorageHost == null) {
|
||||
return null;
|
||||
} else {
|
||||
return _templateHostDao.findByHostTemplate(secondaryStorageHost.getId(), templateId);
|
||||
}
|
||||
return _storageMgr.getTemplateHostRef(zoneId, templateId);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -200,4 +200,10 @@ public interface StorageManager extends Manager {
|
|||
List<HostVO> getSecondaryStorageHosts(long zoneId);
|
||||
|
||||
List<StoragePoolVO> ListByDataCenterHypervisor(long datacenterId, HypervisorType type);
|
||||
|
||||
List<VMInstanceVO> listByStoragePool(long storagePoolId);
|
||||
|
||||
StoragePoolVO findLocalStorageOnHost(long hostId);
|
||||
|
||||
VMTemplateHostVO getTemplateHostRef(long zoneId, long tmpltId);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -974,6 +974,21 @@ public class StorageManagerImpl implements StorageManager, StorageService, Manag
|
|||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public VMTemplateHostVO getTemplateHostRef(long zoneId, long tmpltId) {
|
||||
List<HostVO> hosts = _hostDao.listSecondaryStorageHosts(zoneId);
|
||||
if( hosts == null || hosts.size() == 0) {
|
||||
return null;
|
||||
}
|
||||
for( HostVO host : hosts ) {
|
||||
VMTemplateHostVO tmpltHost = _vmTemplateHostDao.findByHostTemplate(host.getId(), tmpltId);
|
||||
if (tmpltHost != null && !tmpltHost.getDestroyed() && tmpltHost.getDownloadState() == VMTemplateStorageResourceAssoc.Status.DOWNLOADED) {
|
||||
return tmpltHost;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public HostVO getSecondaryStorageHost(long zoneId) {
|
||||
List<HostVO> hosts = _hostDao.listSecondaryStorageHosts(zoneId);
|
||||
|
|
|
|||
Loading…
Reference in New Issue