Skip to content

Instantly share code, notes, and snippets.

@kclinden
Last active April 2, 2018 18:24
Show Gist options
  • Select an option

  • Save kclinden/c731879da4622395ed69b7d33bd6c8a6 to your computer and use it in GitHub Desktop.

Select an option

Save kclinden/c731879da4622395ed69b7d33bd6c8a6 to your computer and use it in GitHub Desktop.
Get vCAC Network Ranges
//Name: getNetworkRanges
//Description: Used to get all network ranges from a given vCAC IaaS Host
//Inputs: vcacHost [vCAC:VCACHost]
//Return Type: string
//Initialize Array or JSON
var networkRanges = [];
var netRanges = vCACEntityManager.readModelEntitiesBySystemExpandQuery(vcacHost.id,"ManagementModelEntities.svc","StaticIPv4Ranges",null,'StaticIPv4NetworkProfile/ID',null,null,null,null,null);
for each (netRange in netRanges){
//Create JSON Object
var networkRange = {};
networkRange["name"] = netRange.getProperties().get("StaticIPv4RangeName");
networkRange["rangeDescription"] = netRange.getProperties().get("IPv4RangeDescription");
networkRange["networkProfileId"] = netRange.getLink(vcacHost, "StaticIPv4NetworkProfile")[0].getProperties().get("ID");; //Gets the id from a forien key in StaticIPv4NetworkProfile
networkRange["rangeId"] = netRange.getProperties().get("ID");
networkRange["rangeState"] = netRange.getProperties().get("StaticIPv4State");
networkRange["externalId"] = netRange.getProperties().get("ExternalId");
networkRanges.push(networkRange);
}
return JSON.stringify(networkRanges,null,4)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment