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
private AviVirtualServiceBuild(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 {
let objAviVirtualService: AviVirtualService = new AviVirtualService();
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);
}
return objAviVirtualService;
}Discover more from Cloud Build Tools
Subscribe to get the latest posts sent to your email.
