To use this function add it to the class library file named vCenterServerService.ts
GitHub Repository: https://github.com/SimonSparksUK/Orchestrator
Filename: vCenterServerService.ts
public VcVirtualMachineClone(objVcVirtualMachine: VcVirtualMachine, strCloneName: string, objVcFolder: VcFolder): void {
let objVcVirtualMachineRuntimeInfo: VcVirtualMachineRuntimeInfo = objVcVirtualMachine.runtime;
let arrVcDatastore: VcDatastore[] = objVcVirtualMachine.datastore;
let objVcVirtualMachineRelocateSpec: VcVirtualMachineRelocateSpec = new VcVirtualMachineRelocateSpec();
objVcVirtualMachineRelocateSpec.transform = VcVirtualMachineRelocateTransformation["sparse"];
objVcVirtualMachineRelocateSpec.pool = objVcVirtualMachine.resourcePool;
objVcVirtualMachineRelocateSpec.host = objVcVirtualMachineRuntimeInfo.host;
objVcVirtualMachineRelocateSpec.datastore = arrVcDatastore[0];
let objVcVirtualMachineCloneSpec: VcVirtualMachineCloneSpec = new VcVirtualMachineCloneSpec();
objVcVirtualMachineCloneSpec.powerOn = false;
objVcVirtualMachineCloneSpec.memory = false;
objVcVirtualMachineCloneSpec.template = false;
objVcVirtualMachineCloneSpec.location = objVcVirtualMachineRelocateSpec;
let objVcTask: VcTask = objVcVirtualMachine.cloneVM_Task(objVcFolder, strCloneName, objVcVirtualMachineCloneSpec);
this.WaitForVcTaskEnd(objVcTask, 2);
this.objLogger.info("Cloning task started for: " + strCloneName);
}Discover more from Cloud Build Tools
Subscribe to get the latest posts sent to your email.
