diff --git a/Orchestrator/Workflows/VM Provision/Tasks/01_unpack_payload.js b/Orchestrator/Workflows/VM Provision/Tasks/01_unpack_payload.js new file mode 100644 index 0000000..173be96 --- /dev/null +++ b/Orchestrator/Workflows/VM Provision/Tasks/01_unpack_payload.js @@ -0,0 +1,10 @@ +/* JavaScript: unpack payload + Extracts needed variables from the vRA inputProperties + Inputs: inputProperties (Properties) + Outputs: originalNames (Array/string), domain (string), nameBase (string), endpointId (string), digits (number) +*/ +nameBase = inputProperties.customProperties.nameBase; +originalNames = inputProperties.resourceNames; +domain = inputProperties.customProperties.domain; +endpointId = inputProperties.endpointId; +digits = inputProperties.customProperties.digits; \ No newline at end of file diff --git a/Orchestrator/Workflows/VM Provision/Tasks/02_get_vCenterName.js b/Orchestrator/Workflows/VM Provision/Tasks/02_get_vCenterName.js new file mode 100644 index 0000000..03ec61f --- /dev/null +++ b/Orchestrator/Workflows/VM Provision/Tasks/02_get_vCenterName.js @@ -0,0 +1,12 @@ +/* JavaScript: get vCenterName + Queries vRA to match the vCenter endpointId to a fully-qualified name, which gets returned to vRA as a customProperty on the deployment and also passed to subsequent workflow tasks + Inputs: endpointId (string) + Outputs: customProperties (Properties), vCenterName (string) +*/ +var cloudAccountId = null; +var token = System.getModule("com.virtuallypotato.utility").vraLogin(); +vCenterName = JSON.parse(System.getModule("com.virtuallypotato.utility").vraExecute(token, "GET", "/iaas/api/cloud-accounts-vsphere/" + endpointId, null)).hostName; +System.getModule("com.virtuallypotato.utility").vraLogout(token); +System.debug("Found vCenter: " + vCenterName); +customProperties = new Properties(); +customProperties.put("vCenter", vCenterName); \ No newline at end of file