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 VcVirtualMachineConfigureVMwareToolsUpgradePolicy(objVcVirtualMachine: VcVirtualMachine, strDesiredVMwareToolsUpgradePolicy: string): boolean {
let objVcVirtualMachineConfigInfo: VcVirtualMachineConfigInfo = objVcVirtualMachine.config;
let objVcToolsConfigInfo: VcToolsConfigInfo = objVcVirtualMachineConfigInfo.tools;
objVcToolsConfigInfo.toolsUpgradePolicy = strDesiredVMwareToolsUpgradePolicy;
objVcToolsConfigInfo.beforeGuestShutdown = true;
objVcToolsConfigInfo.beforeGuestReboot = true;
objVcToolsConfigInfo.syncTimeWithHost = false;
objVcToolsConfigInfo.upgradeRebootPredict = true;
objVcToolsConfigInfo.beforeGuestStandby = true;
objVcToolsConfigInfo.afterResume = true;
objVcToolsConfigInfo.afterPowerOn = true;
if (objVcToolsConfigInfo.toolsUpgradePolicy === strDesiredVMwareToolsUpgradePolicy) {
this.objLogger.info(`VMware Tools upgrade policy is already set to '${strDesiredVMwareToolsUpgradePolicy}'. No changes needed.`);
return;
}
this.objLogger.info(`Current VMware Tools upgrade policy is '${objVcToolsConfigInfo.toolsUpgradePolicy}'. Updating to '${strDesiredVMwareToolsUpgradePolicy}'.`);
let objVcVirtualMachineConfigSpec: VcVirtualMachineConfigSpec = new VcVirtualMachineConfigSpec();
objVcVirtualMachineConfigSpec.tools = objVcToolsConfigInfo;
let blnReturn: boolean = this.VcVirtualMachineReconfigure(objVcVirtualMachine, objVcVirtualMachineConfigSpec);
this.objLogger.info(`Successfully set VMTools upgrade policy to '${strDesiredVMwareToolsUpgradePolicy}'.`);
return blnReturn;
}Discover more from Cloud Build Tools
Subscribe to get the latest posts sent to your email.
