Skip to content

Commit aa710bd

Browse files
Handle running instances
1 parent 6b3dc07 commit aa710bd

File tree

2 files changed

+8
-7
lines changed

2 files changed

+8
-7
lines changed

agent/conf/agent.properties

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -458,9 +458,6 @@ iscsi.session.cleanup.enabled=false
458458
# Instance conversion VIRT_V2V_TMPDIR env var
459459
#convert.instance.env.virtv2v.tmpdir=
460460

461-
# LIBGUESTFS backend to use for VMware to KVM conversion via VDDK (default: direct)
462-
#libguestfs.backend=direct
463-
464461
# Path to the VDDK library directory for VMware to KVM conversion via VDDK,
465462
# passed to virt-v2v as -io vddk-libdir=<path>
466463
#vddk.lib.dir=

plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtConvertInstanceCommandWrapper.java

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,12 @@
2222
import java.nio.charset.Charset;
2323
import java.nio.file.Files;
2424
import java.nio.file.Path;
25+
import java.nio.file.attribute.PosixFilePermission;
2526
import java.util.Locale;
2627
import java.util.Arrays;
2728
import java.util.List;
2829
import java.util.Map;
30+
import java.util.Set;
2931
import java.util.UUID;
3032
import java.util.regex.Matcher;
3133
import java.util.regex.Pattern;
@@ -320,14 +322,15 @@ protected boolean performInstanceConversionUsingVddk(RemoteInstanceTO vmwareInst
320322
UUID.randomUUID());
321323
try {
322324
Files.writeString(Path.of(passwordFilePath), vcenterPassword);
325+
Files.setPosixFilePermissions(Path.of(passwordFilePath), Set.of(PosixFilePermission.OWNER_READ, PosixFilePermission.OWNER_WRITE));
323326
logger.debug("({}) Written vCenter password to {}", originalVMName, passwordFilePath);
324327
} catch (Exception e) {
325328
logger.error("({}) Failed to write vCenter password file {}: {}", originalVMName, passwordFilePath, e.getMessage());
326329
return false;
327330
}
328331

329332
try {
330-
String vpxUrl = buildVpxUrl(vmwareInstance, originalVMName);
333+
String vpxUrl = buildVpxUrl(vmwareInstance);
331334

332335
StringBuilder cmd = new StringBuilder();
333336

@@ -357,7 +360,7 @@ protected boolean performInstanceConversionUsingVddk(RemoteInstanceTO vmwareInst
357360
if (StringUtils.isNotBlank(vddkTransports)) {
358361
cmd.append("-io vddk-transports=").append(vddkTransports).append(" ");
359362
}
360-
cmd.append(originalVMName).append(" ");
363+
cmd.append(vmwareInstance.getInstanceName()).append(" ");
361364
cmd.append("-o local ");
362365
cmd.append("-os ").append(temporaryConvertFolder).append(" ");
363366
cmd.append("-of qcow2 ");
@@ -459,8 +462,9 @@ private String extractSha1Fingerprint(String output) {
459462
* Format:
460463
* vpx://user@vcenter/DC/cluster/host?no_verify=1
461464
*/
462-
private String buildVpxUrl(RemoteInstanceTO vmwareInstance, String originalVMName) {
465+
private String buildVpxUrl(RemoteInstanceTO vmwareInstance) {
463466

467+
String vmName = vmwareInstance.getInstanceName();
464468
String vcenter = vmwareInstance.getVcenterHost();
465469
String username = vmwareInstance.getVcenterUsername();
466470
String datacenter = vmwareInstance.getDatacenterName();
@@ -487,7 +491,7 @@ private String buildVpxUrl(RemoteInstanceTO vmwareInstance, String originalVMNam
487491

488492
url.append("?no_verify=1");
489493

490-
logger.info("({}) Using VPX URL: {}", originalVMName, url);
494+
logger.info("({}) Using VPX URL: {}", vmName, url);
491495
return url.toString();
492496
}
493497
}

0 commit comments

Comments
 (0)