Skip to content

Commit d3c5345

Browse files
author
Fabrício Duarte
committed
Merge branch 'fix-vmware-tools-iso' into '4.20.0.0-scclouds'
Correção no uso das ISOs `vmware-tools.iso` e `xs-tools.iso` Closes #3160 See merge request scclouds/scclouds!1318
2 parents da30064 + e733843 commit d3c5345

1 file changed

Lines changed: 11 additions & 2 deletions

File tree

server/src/main/java/com/cloud/template/TemplateManagerImpl.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1243,15 +1243,24 @@ public boolean attachIso(long isoId, long vmId, boolean forced) {
12431243
public TemplateInfo prepareIso(long isoId, long dcId, Long hostId, Long poolId) {
12441244
TemplateInfo tmplt;
12451245
boolean bypassed = false;
1246-
if (_tmplFactory.isTemplateMarkedForDirectDownload(isoId)) {
1246+
VMTemplateVO iso = _tmpltDao.findById(isoId);
1247+
1248+
if (iso == null) {
1249+
logger.warn("ISO [{}] does not exist.", isoId);
1250+
return null;
1251+
}
1252+
1253+
if (iso.isDirectDownload()) {
12471254
tmplt = _tmplFactory.getReadyBypassedTemplateOnPrimaryStore(isoId, poolId, hostId);
12481255
bypassed = true;
1256+
} else if (TemplateType.PERHOST.equals(iso.getTemplateType())) {
1257+
tmplt = _tmplFactory.getTemplate(isoId, DataStoreRole.Image, dcId);
12491258
} else {
12501259
tmplt = _tmplFactory.getReadyTemplateOnImageStore(isoId, dcId);
12511260
}
12521261

12531262
if (tmplt == null || tmplt.getFormat() != ImageFormat.ISO) {
1254-
logger.warn("ISO: " + isoId + " does not exist in vm_template table");
1263+
logger.warn("ISO [{}] does not exist in vm_template table.", isoId);
12551264
return null;
12561265
}
12571266

0 commit comments

Comments
 (0)