To use this function add it to the class library file named PluginAVIService.ts
GitHub Repository: https://github.com/SimonSparksUK/Orchestrator
Filename: PluginAVIService.ts
Description: Orchestrator Function to Build an AVI Virtual Service.
Private Function: AviVirtualServiceBuild
privateAviVirtualServiceBuild(strUUID:string,strName:string,strDescription:string,strTenant:string="admin",strAviCloud:string="Default-Cloud",arrAviService:AviService[],intMaxCpsPerClient:number,
strPoolName:string,strPoolGroupName:string,strAnalyticsProfileName:string,strSSLProfileName:string,strApplicationProfileName:string,strSslKeyAndCertificateName:string,strNetworkProfileName:string,
blnEnableAutogw:boolean=true,blnEnableRhiSnat:boolean=false,blnUseVipAsSnat:boolean=false,blnEnableRhi:boolean=false,blnIgnPoolNetReach:boolean=false,blnUseBridgeIpAsVip:boolean=false,blnAllowInvalidClientCert:boolean=false,blnScaleoutEcmp:boolean=false,blnTrafficEnabled:boolean=true,blnRemoveListeningPortOnVsDown:boolean=true,blnCloseClientConnOnConfigUpdate:boolean=true):AviVirtualService{
letobjAviVirtualService:AviVirtualService=newAviVirtualService();
objAviVirtualService.setName(strName);
objAviVirtualService.setDescription(strDescription);
objAviVirtualService.setServices(arrAviService);
objAviVirtualService.setVsvipRef("/api/vsvip?name="+strName);
objAviVirtualService.setCloudRef("/api/cloud?name="+strAviCloud);
objAviVirtualService.setTenantRef("/api/tenant?name="+strTenant);
objAviVirtualService.setApplicationProfileRef("/api/applicationprofile?name="+strApplicationProfileName);
objAviVirtualService.setAnalyticsProfileRef("/api/analyticsprofile?name="+strAnalyticsProfileName);
objAviVirtualService.setSslProfileRef("/api/sslprofile?name="+strSSLProfileName);
objAviVirtualService.addSslKeyAndCertificateRefsItem("/api/sslkeyandcertificate/?name="+strSslKeyAndCertificateName);
objAviVirtualService.setPoolGroupRef("/api/poolgroup?name="+strPoolGroupName);
objAviVirtualService.setPoolRef("/api/pool?name="+strPoolName);
objAviVirtualService.setNetworkProfileRef("/api/networkprofile?name="+strNetworkProfileName);
if (strUUID){
objAviVirtualService.setUuid(strUUID);
}
if (blnAllowInvalidClientCert){
objAviVirtualService.setAllowInvalidClientCert(blnAllowInvalidClientCert);
}
if (blnCloseClientConnOnConfigUpdate){
objAviVirtualService.setCloseClientConnOnConfigUpdate(blnCloseClientConnOnConfigUpdate);
}
if (intMaxCpsPerClient){
objAviVirtualService.setMaxCpsPerClient(intMaxCpsPerClient);
}
if (blnRemoveListeningPortOnVsDown){
objAviVirtualService.setRemoveListeningPortOnVsDown(blnRemoveListeningPortOnVsDown);
}
if (blnScaleoutEcmp){
objAviVirtualService.setScaleoutEcmp(blnScaleoutEcmp);
}
if (blnTrafficEnabled){
objAviVirtualService.setTrafficEnabled(blnTrafficEnabled);
}
if (blnUseBridgeIpAsVip){
objAviVirtualService.setUseBridgeIpAsVip(blnUseBridgeIpAsVip);
}
if (blnUseVipAsSnat){
objAviVirtualService.setUseVipAsSnat(blnUseVipAsSnat);
}
if (blnEnableAutogw){
objAviVirtualService.setEnableAutogw(blnEnableAutogw);
}
if (blnEnableRhi){
objAviVirtualService.setEnableRhi(blnEnableRhi);
}
if (blnEnableRhiSnat){
objAviVirtualService.setEnableRhiSnat(blnEnableRhiSnat);
}
if (blnIgnPoolNetReach){
objAviVirtualService.setIgnPoolNetReach(blnIgnPoolNetReach);
}
returnobjAviVirtualService;
}Discover more from Cloud Build Tools
Subscribe to get the latest posts sent to your email.
