UNPKG

@pulumi/f5bigip

Version:

A Pulumi package for creating and managing F5 BigIP resources.

153 lines 7.54 kB
"use strict"; // *** WARNING: this file was generated by pulumi-language-nodejs. *** // *** Do not edit by hand unless you're certain you know what you are doing! *** Object.defineProperty(exports, "__esModule", { value: true }); exports.FastHttpApp = void 0; const pulumi = require("@pulumi/pulumi"); const utilities = require("./utilities"); /** * `f5bigip.FastHttpApp` This resource will create and manage FAST HTTP applications on BIG-IP * * [FAST documentation](https://clouddocs.f5.com/products/extensions/f5-appsvcs-templates/latest/) * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as f5bigip from "@pulumi/f5bigip"; * * const fastHttpApp = new f5bigip.FastHttpApp("fast_http_app", { * tenant: "fasthttptenant", * application: "fasthttpapp", * virtualServer: { * ip: "10.30.30.44", * port: 443, * }, * }); * ``` * * ### With Service Discovery * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as f5bigip from "@pulumi/f5bigip"; * * const TC3 = f5bigip.fast.getAzureServiceDiscovery({ * resourceGroup: "testazurerg", * subscriptionId: "testazuresid", * tagKey: "testazuretag", * tagValue: "testazurevalue", * }); * const TC3GetGceServiceDiscovery = f5bigip.fast.getGceServiceDiscovery({ * tagKey: "testgcetag", * tagValue: "testgcevalue", * region: "testgceregion", * }); * const fastHttpsApp = new f5bigip.FastHttpApp("fast_https_app", { * tenant: "fasthttptenant", * application: "fasthttpapp", * virtualServer: { * ip: "10.30.40.44", * port: 443, * }, * poolMembers: [{ * addresses: [ * "10.11.40.120", * "10.11.30.121", * "10.11.30.122", * ], * port: 80, * }], * serviceDiscoveries: [ * TC3GetGceServiceDiscovery.then(TC3GetGceServiceDiscovery => TC3GetGceServiceDiscovery.gceSdJson), * TC3.then(TC3 => TC3.azureSdJson), * ], * }); * ``` */ class FastHttpApp extends pulumi.CustomResource { /** * Get an existing FastHttpApp resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name, id, state, opts) { return new FastHttpApp(name, state, Object.assign(Object.assign({}, opts), { id: id })); } /** * Returns true if the given object is an instance of FastHttpApp. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj) { if (obj === undefined || obj === null) { return false; } return obj['__pulumiType'] === FastHttpApp.__pulumiType; } constructor(name, argsOrState, opts) { let resourceInputs = {}; opts = opts || {}; if (opts.id) { const state = argsOrState; resourceInputs["application"] = state ? state.application : undefined; resourceInputs["endpointLtmPolicies"] = state ? state.endpointLtmPolicies : undefined; resourceInputs["existingMonitor"] = state ? state.existingMonitor : undefined; resourceInputs["existingPool"] = state ? state.existingPool : undefined; resourceInputs["existingSnatPool"] = state ? state.existingSnatPool : undefined; resourceInputs["existingWafSecurityPolicy"] = state ? state.existingWafSecurityPolicy : undefined; resourceInputs["fallbackPersistence"] = state ? state.fallbackPersistence : undefined; resourceInputs["fastHttpJson"] = state ? state.fastHttpJson : undefined; resourceInputs["loadBalancingMode"] = state ? state.loadBalancingMode : undefined; resourceInputs["monitor"] = state ? state.monitor : undefined; resourceInputs["persistenceProfile"] = state ? state.persistenceProfile : undefined; resourceInputs["persistenceType"] = state ? state.persistenceType : undefined; resourceInputs["poolMembers"] = state ? state.poolMembers : undefined; resourceInputs["securityLogProfiles"] = state ? state.securityLogProfiles : undefined; resourceInputs["serviceDiscoveries"] = state ? state.serviceDiscoveries : undefined; resourceInputs["slowRampTime"] = state ? state.slowRampTime : undefined; resourceInputs["snatPoolAddresses"] = state ? state.snatPoolAddresses : undefined; resourceInputs["tenant"] = state ? state.tenant : undefined; resourceInputs["virtualServer"] = state ? state.virtualServer : undefined; resourceInputs["wafSecurityPolicy"] = state ? state.wafSecurityPolicy : undefined; } else { const args = argsOrState; if ((!args || args.application === undefined) && !opts.urn) { throw new Error("Missing required property 'application'"); } if ((!args || args.tenant === undefined) && !opts.urn) { throw new Error("Missing required property 'tenant'"); } resourceInputs["application"] = args ? args.application : undefined; resourceInputs["endpointLtmPolicies"] = args ? args.endpointLtmPolicies : undefined; resourceInputs["existingMonitor"] = args ? args.existingMonitor : undefined; resourceInputs["existingPool"] = args ? args.existingPool : undefined; resourceInputs["existingSnatPool"] = args ? args.existingSnatPool : undefined; resourceInputs["existingWafSecurityPolicy"] = args ? args.existingWafSecurityPolicy : undefined; resourceInputs["fallbackPersistence"] = args ? args.fallbackPersistence : undefined; resourceInputs["loadBalancingMode"] = args ? args.loadBalancingMode : undefined; resourceInputs["monitor"] = args ? args.monitor : undefined; resourceInputs["persistenceProfile"] = args ? args.persistenceProfile : undefined; resourceInputs["persistenceType"] = args ? args.persistenceType : undefined; resourceInputs["poolMembers"] = args ? args.poolMembers : undefined; resourceInputs["securityLogProfiles"] = args ? args.securityLogProfiles : undefined; resourceInputs["serviceDiscoveries"] = args ? args.serviceDiscoveries : undefined; resourceInputs["slowRampTime"] = args ? args.slowRampTime : undefined; resourceInputs["snatPoolAddresses"] = args ? args.snatPoolAddresses : undefined; resourceInputs["tenant"] = args ? args.tenant : undefined; resourceInputs["virtualServer"] = args ? args.virtualServer : undefined; resourceInputs["wafSecurityPolicy"] = args ? args.wafSecurityPolicy : undefined; resourceInputs["fastHttpJson"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); super(FastHttpApp.__pulumiType, name, resourceInputs, opts); } } exports.FastHttpApp = FastHttpApp; /** @internal */ FastHttpApp.__pulumiType = 'f5bigip:index/fastHttpApp:FastHttpApp'; //# sourceMappingURL=fastHttpApp.js.map