Orchestrator Function: VCFA Event Handler – Provisioning

by Simon Sparks · 9 March 2026

To use this function add it to the class library file named OrchestratorPluginVCFAService.ts

GitHub Repository: https://github.com/SimonSparksUK/Orchestrator

Filename: OrchestratorPluginVCFAService.ts

Description: Orchestrator Function to handle the provisioning event.

Public Function: VccfaEventHandlerProvisioning

publicVccfaEventHandlerProvisioning(objVCFAHost:VCFAHost,inputProperties:Properties):void{
if (objVCFAHost===null){
objVCFAHost=VCFAHostManager.getDefaultHost();
}

letobjJson:Properties=inputProperties.get<Properties>("object");
letobjPropertiesInvolvedObject:Properties=objJson.get("involvedObject");
letobjPropertiesProject:Properties=objJson.get("project");

letstrVirtualMachineName:string=objPropertiesInvolvedObject.get("name");
letstrNamespaceName:string=objPropertiesInvolvedObject.get("namespace");
letstrProjectId:string=objPropertiesProject.get("id");

letobjVCFAProject:VCFAProject=this.VcfaProjectGetById(objVCFAHost,strProjectId);

letobjVCFASupervisorNamespace:VCFASupervisorNamespace=this.VcfaSupervisorNamespaceGetByName(objVCFAHost,objVCFAProject,strNamespaceName)

letstrPath:string=`/proxy/k8s/namespaces/${objVCFASupervisorNamespace.k8sId}/apis/vmoperator.vmware.com/v1alpha3/namespaces/${objVCFASupervisorNamespace.name}/virtualmachines/${strVirtualMachineName}`;

letstrContent:string=this.VcfaGenericRestClient(objVCFAHost,"GET",strPath);

letobjContent:any=JSON.parse(strContent);

if (objContent&&objContent.spec){
this.objLogger.info("Content Status:"+objContent.status);
this.objLogger.info("Content Status:"+objContent.message);
this.objLogger.info("Virtual Machine Spec:"+objContent.spec);
this.objLogger.info("Virtual Machine Spec Power Off Mode:"+objContent.spec.powerOffMode);
}
}
TypeScript

Discover more from Cloud Build Tools

Subscribe to get the latest posts sent to your email.

You may also like