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
public VccfaEventHandlerProvisioning(objVCFAHost: VCFAHost, inputProperties: Properties): void {
if (objVCFAHost === null) {
objVCFAHost = VCFAHostManager.getDefaultHost();
}
let objJson: Properties = inputProperties.get<Properties>("object");
let objPropertiesInvolvedObject: Properties = objJson.get("involvedObject");
let objPropertiesProject: Properties = objJson.get("project");
let strVirtualMachineName: string = objPropertiesInvolvedObject.get("name");
let strNamespaceName: string = objPropertiesInvolvedObject.get("namespace");
let strProjectId: string = objPropertiesProject.get("id");
let objVCFAProject: VCFAProject = this.VcfaProjectGetById(objVCFAHost, strProjectId);
let objVCFASupervisorNamespace: VCFASupervisorNamespace = this.VcfaSupervisorNamespaceGetByName(objVCFAHost, objVCFAProject, strNamespaceName)
let strPath: string = `/proxy/k8s/namespaces/${objVCFASupervisorNamespace.k8sId}/apis/vmoperator.vmware.com/v1alpha3/namespaces/${objVCFASupervisorNamespace.name}/virtualmachines/${strVirtualMachineName}`;
let strContent: string = this.VcfaGenericRestClient(objVCFAHost, "GET", strPath);
let objContent: 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);
}
}TypeScriptDiscover more from Cloud Build Tools
Subscribe to get the latest posts sent to your email.
