To use this function add it to the class library file named PluginVCVirtualMachineService.ts
GitHub Repository: https://github.com/SimonSparksUK/Orchestrator
Filename: PluginVCVirtualMachineService.ts
Description: Orchestrator Function to Get all orphan virtual machine files.
Function GetOrphaned
public GetOrphaned(objVcSdkConnection: VcSdkConnection): VcVirtualMachine[] {
let arrVcVirtualMachineOrphaned: VcVirtualMachine[] = [];
let arrVcVirtualMachine: VcVirtualMachine[] = objVcSdkConnection.getAllVirtualMachines(null, null);
arrVcVirtualMachine.forEach((objVcVirtualMachine: VcVirtualMachine): void => {
let objVcVirtualMachineConfigInfo: VcVirtualMachineConfigInfo = objVcVirtualMachine.config;
let objVcVirtualMachineFileInfo: VcVirtualMachineFileInfo = objVcVirtualMachineConfigInfo.files;
this.objLogger.info(`File: ${objVcVirtualMachineFileInfo.vmPathName}`);
let objVcVirtualMachineSummary: VcVirtualMachineSummary = objVcVirtualMachine.summary;
let objVcVirtualMachineRuntimeInfo: VcVirtualMachineRuntimeInfo = objVcVirtualMachineSummary.runtime;
if (objVcVirtualMachineRuntimeInfo.connectionState === VcVirtualMachineConnectionState["orphaned"]) {
arrVcVirtualMachineOrphaned.push(objVcVirtualMachine);
}
let arrVcVirtualDisk: VcVirtualDisk[] = this.GetAllVcVirtualDisk(objVcVirtualMachine);
arrVcVirtualDisk.forEach((objVcVirtualDisk: VcVirtualDisk): void => {
if (objVcVirtualDisk.backing instanceof VcVirtualDiskFlatVer2BackingInfo) {
let objVcVirtualDiskFlatVer2BackingInfo: VcVirtualDiskFlatVer2BackingInfo = objVcVirtualDisk.backing as VcVirtualDiskFlatVer2BackingInfo;
this.objLogger.info(`File: ${objVcVirtualDiskFlatVer2BackingInfo.fileName}.`);
}
});
});
return arrVcVirtualMachineOrphaned;
}Discover more from Cloud Build Tools
Subscribe to get the latest posts sent to your email.
