To use this function add it to the class library file named vCenterServerService.ts
GitHub Repository: https://github.com/SimonSparksUK/Orchestrator
Filename: vCenterServerService.ts
Function: VcVirtualMachineGetByUUID
publicVcVirtualMachineGetByUUID(strVirtualMachineUUID:string):VcVirtualMachine{
letarrVcSdkConnection:VcSdkConnection[]=this.serverFindAllForType<VcSdkConnection>("VC:SdkConnection");
letarrVcVirtualMachine:VcVirtualMachine[]=arrVcSdkConnection.map((objVcSdkConnection:VcSdkConnection):VcVirtualMachine=>{
letobjVcSearchIndex:VcSearchIndex=objVcSdkConnection.searchIndex;
try{
objVcVirtualMachine=objVcSearchIndex.findByUuid(null,strVirtualMachineUUID,true,true)asVcVirtualMachine;
if (objVcVirtualMachineinstanceofVcVirtualMachine){
returnobjVcVirtualMachine;
}
}
catch (objException){
Utilities.logException(objException,this.objLogger,"VcVirtualMachineGetByVirtualMachineUUID",`Unable to find VM by instance UUID '${strVirtualMachineUUID}', for SDK connection '${objVcSdkConnection.name}', will fallback to search by BIOS UUID.`);
try{
objVcVirtualMachine=objVcSearchIndex.findByUuid(null,strVirtualMachineUUID,true,false)asVcVirtualMachine;
}
catch (objException){
Utilities.logException(objException,this.objLogger,"VcVirtualMachineGetByVirtualMachineUUID",`Unable to find VM by instance UUID '${strVirtualMachineUUID}', for SDK connection '${objVcSdkConnection.name}', will fallback to search by BIOS UUID.`);
}
}
});
letobjVcVirtualMachine:VcVirtualMachine=arrVcVirtualMachine.find((objVcVirtualMachine:VcVirtualMachine):boolean=>{
returnobjVcVirtualMachine.instanceId===strVirtualMachineUUID;
});
returnobjVcVirtualMachine;
}Discover more from Cloud Build Tools
Subscribe to get the latest posts sent to your email.
