@pulumi/f5bigip 3.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +202 -0
- package/README.md +60 -0
- package/as3.d.ts +575 -0
- package/as3.js +524 -0
- package/as3.js.map +1 -0
- package/bigIqAs3.d.ts +153 -0
- package/bigIqAs3.js +97 -0
- package/bigIqAs3.js.map +1 -0
- package/cm/device.d.ts +102 -0
- package/cm/device.js +80 -0
- package/cm/device.js.map +1 -0
- package/cm/deviceGroup.d.ts +182 -0
- package/cm/deviceGroup.js +93 -0
- package/cm/deviceGroup.js.map +1 -0
- package/cm/index.d.ts +2 -0
- package/cm/index.js +31 -0
- package/cm/index.js.map +1 -0
- package/command.d.ts +80 -0
- package/command.js +74 -0
- package/command.js.map +1 -0
- package/commonLicenseManageBigIq.d.ts +291 -0
- package/commonLicenseManageBigIq.js +158 -0
- package/commonLicenseManageBigIq.js.map +1 -0
- package/config/index.d.ts +1 -0
- package/config/index.js +10 -0
- package/config/index.js.map +1 -0
- package/config/vars.d.ts +32 -0
- package/config/vars.js +39 -0
- package/config/vars.js.map +1 -0
- package/do.d.ts +95 -0
- package/do.js +74 -0
- package/do.js.map +1 -0
- package/eventServiceDiscovery.d.ts +61 -0
- package/eventServiceDiscovery.js +55 -0
- package/eventServiceDiscovery.js.map +1 -0
- package/fastApplication.d.ts +92 -0
- package/fastApplication.js +75 -0
- package/fastApplication.js.map +1 -0
- package/fastTemplate.d.ts +76 -0
- package/fastTemplate.js +64 -0
- package/fastTemplate.js.map +1 -0
- package/index.d.ts +21 -0
- package/index.js +107 -0
- package/index.js.map +1 -0
- package/ipsecPolicy.d.ts +214 -0
- package/ipsecPolicy.js +100 -0
- package/ipsecPolicy.js.map +1 -0
- package/ltm/dataGroup.d.ts +100 -0
- package/ltm/dataGroup.js +87 -0
- package/ltm/dataGroup.js.map +1 -0
- package/ltm/getDataGroup.d.ts +58 -0
- package/ltm/getDataGroup.js +37 -0
- package/ltm/getDataGroup.js.map +1 -0
- package/ltm/getIrule.d.ts +53 -0
- package/ltm/getIrule.js +37 -0
- package/ltm/getIrule.js.map +1 -0
- package/ltm/getMonitor.d.ts +81 -0
- package/ltm/getMonitor.js +35 -0
- package/ltm/getMonitor.js.map +1 -0
- package/ltm/getNode.d.ts +81 -0
- package/ltm/getNode.js +27 -0
- package/ltm/getNode.js.map +1 -0
- package/ltm/getPool.d.ts +45 -0
- package/ltm/getPool.js +35 -0
- package/ltm/getPool.js.map +1 -0
- package/ltm/index.d.ts +30 -0
- package/ltm/index.js +151 -0
- package/ltm/index.js.map +1 -0
- package/ltm/irule.d.ts +65 -0
- package/ltm/irule.js +63 -0
- package/ltm/irule.js.map +1 -0
- package/ltm/monitor.d.ts +341 -0
- package/ltm/monitor.js +139 -0
- package/ltm/monitor.js.map +1 -0
- package/ltm/node.d.ts +186 -0
- package/ltm/node.js +102 -0
- package/ltm/node.js.map +1 -0
- package/ltm/persistenceProfileCookie.d.ts +309 -0
- package/ltm/persistenceProfileCookie.js +153 -0
- package/ltm/persistenceProfileCookie.js.map +1 -0
- package/ltm/persistenceProfileDstAddr.d.ts +206 -0
- package/ltm/persistenceProfileDstAddr.js +117 -0
- package/ltm/persistenceProfileDstAddr.js.map +1 -0
- package/ltm/persistenceProfileSrcAddr.d.ts +225 -0
- package/ltm/persistenceProfileSrcAddr.js +126 -0
- package/ltm/persistenceProfileSrcAddr.js.map +1 -0
- package/ltm/persistenceProfileSsl.d.ts +177 -0
- package/ltm/persistenceProfileSsl.js +111 -0
- package/ltm/persistenceProfileSsl.js.map +1 -0
- package/ltm/policy.d.ts +143 -0
- package/ltm/policy.js +97 -0
- package/ltm/policy.js.map +1 -0
- package/ltm/pool.d.ts +179 -0
- package/ltm/pool.js +94 -0
- package/ltm/pool.js.map +1 -0
- package/ltm/poolAttachment.d.ts +197 -0
- package/ltm/poolAttachment.js +135 -0
- package/ltm/poolAttachment.js.map +1 -0
- package/ltm/profileClientSsl.d.ts +725 -0
- package/ltm/profileClientSsl.js +180 -0
- package/ltm/profileClientSsl.js.map +1 -0
- package/ltm/profileFastHttp.d.ts +194 -0
- package/ltm/profileFastHttp.js +99 -0
- package/ltm/profileFastHttp.js.map +1 -0
- package/ltm/profileFastL4.d.ts +188 -0
- package/ltm/profileFastL4.js +103 -0
- package/ltm/profileFastL4.js.map +1 -0
- package/ltm/profileFtp.d.ts +285 -0
- package/ltm/profileFtp.js +134 -0
- package/ltm/profileFtp.js.map +1 -0
- package/ltm/profileHttp.d.ts +397 -0
- package/ltm/profileHttp.js +136 -0
- package/ltm/profileHttp.js.map +1 -0
- package/ltm/profileHttp2.d.ts +223 -0
- package/ltm/profileHttp2.js +108 -0
- package/ltm/profileHttp2.js.map +1 -0
- package/ltm/profileHttpCompress.d.ts +132 -0
- package/ltm/profileHttpCompress.js +87 -0
- package/ltm/profileHttpCompress.js.map +1 -0
- package/ltm/profileOneConnect.d.ts +180 -0
- package/ltm/profileOneConnect.js +95 -0
- package/ltm/profileOneConnect.js.map +1 -0
- package/ltm/profileServerSsl.d.ts +676 -0
- package/ltm/profileServerSsl.js +170 -0
- package/ltm/profileServerSsl.js.map +1 -0
- package/ltm/profileTcp.d.ts +179 -0
- package/ltm/profileTcp.js +94 -0
- package/ltm/profileTcp.js.map +1 -0
- package/ltm/snat.d.ts +199 -0
- package/ltm/snat.js +106 -0
- package/ltm/snat.js.map +1 -0
- package/ltm/snatPool.d.ts +80 -0
- package/ltm/snatPool.js +78 -0
- package/ltm/snatPool.js.map +1 -0
- package/ltm/virtualAddress.d.ts +149 -0
- package/ltm/virtualAddress.js +84 -0
- package/ltm/virtualAddress.js.map +1 -0
- package/ltm/virtualServer.d.ts +355 -0
- package/ltm/virtualServer.js +153 -0
- package/ltm/virtualServer.js.map +1 -0
- package/net/index.d.ts +3 -0
- package/net/index.js +36 -0
- package/net/index.js.map +1 -0
- package/net/route.d.ts +114 -0
- package/net/route.js +82 -0
- package/net/route.js.map +1 -0
- package/net/selfIp.d.ts +105 -0
- package/net/selfIp.js +86 -0
- package/net/selfIp.js.map +1 -0
- package/net/vlan.d.ts +94 -0
- package/net/vlan.js +78 -0
- package/net/vlan.js.map +1 -0
- package/netIkePeer.d.ts +460 -0
- package/netIkePeer.js +138 -0
- package/netIkePeer.js.map +1 -0
- package/netTunnel.d.ts +256 -0
- package/netTunnel.js +107 -0
- package/netTunnel.js.map +1 -0
- package/package.json +26 -0
- package/package.json.bak +25 -0
- package/package.json.dev +25 -0
- package/provider.d.ts +83 -0
- package/provider.js +53 -0
- package/provider.js.map +1 -0
- package/scripts/install-pulumi-plugin.js +21 -0
- package/ssl/certificate.d.ts +102 -0
- package/ssl/certificate.js +80 -0
- package/ssl/certificate.js.map +1 -0
- package/ssl/getCertificate.d.ts +50 -0
- package/ssl/getCertificate.js +37 -0
- package/ssl/getCertificate.js.map +1 -0
- package/ssl/getVWanConfig.d.ts +80 -0
- package/ssl/getVWanConfig.js +50 -0
- package/ssl/getVWanConfig.js.map +1 -0
- package/ssl/index.d.ts +4 -0
- package/ssl/index.js +33 -0
- package/ssl/index.js.map +1 -0
- package/ssl/key.d.ts +102 -0
- package/ssl/key.js +80 -0
- package/ssl/key.js.map +1 -0
- package/sys/bigIpLicense.d.ts +60 -0
- package/sys/bigIpLicense.js +58 -0
- package/sys/bigIpLicense.js.map +1 -0
- package/sys/dns.d.ts +101 -0
- package/sys/dns.js +76 -0
- package/sys/dns.js.map +1 -0
- package/sys/iapp.d.ts +241 -0
- package/sys/iapp.js +118 -0
- package/sys/iapp.js.map +1 -0
- package/sys/index.d.ts +7 -0
- package/sys/index.js +56 -0
- package/sys/index.js.map +1 -0
- package/sys/ntp.d.ts +89 -0
- package/sys/ntp.js +74 -0
- package/sys/ntp.js.map +1 -0
- package/sys/provision.d.ts +126 -0
- package/sys/provision.js +81 -0
- package/sys/provision.js.map +1 -0
- package/sys/snmp.d.ts +87 -0
- package/sys/snmp.js +69 -0
- package/sys/snmp.js.map +1 -0
- package/sys/snmpTraps.d.ts +221 -0
- package/sys/snmpTraps.js +93 -0
- package/sys/snmpTraps.js.map +1 -0
- package/trafficSelector.d.ts +177 -0
- package/trafficSelector.js +95 -0
- package/trafficSelector.js.map +1 -0
- package/types/index.d.ts +3 -0
- package/types/index.js +10 -0
- package/types/index.js.map +1 -0
- package/types/input.d.ts +353 -0
- package/types/input.js +5 -0
- package/types/input.js.map +1 -0
- package/types/output.d.ts +352 -0
- package/types/output.js +5 -0
- package/types/output.js.map +1 -0
- package/utilities.d.ts +4 -0
- package/utilities.js +51 -0
- package/utilities.js.map +1 -0
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
const pulumi = require("@pulumi/pulumi");
|
|
6
|
+
const utilities = require("../utilities");
|
|
7
|
+
/**
|
|
8
|
+
* Configures an SSL persistence profile
|
|
9
|
+
*
|
|
10
|
+
* ## Example
|
|
11
|
+
*
|
|
12
|
+
* ```typescript
|
|
13
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
14
|
+
* import * as f5bigip from "@pulumi/f5bigip";
|
|
15
|
+
*
|
|
16
|
+
* const ppssl = new f5bigip.ltm.PersistenceProfileSsl("ppssl", {
|
|
17
|
+
* defaultsFrom: "/Common/ssl",
|
|
18
|
+
* matchAcrossPools: "enabled",
|
|
19
|
+
* matchAcrossServices: "enabled",
|
|
20
|
+
* matchAcrossVirtuals: "enabled",
|
|
21
|
+
* mirror: "enabled",
|
|
22
|
+
* name: "/Common/terraform_ssl",
|
|
23
|
+
* overrideConnLimit: "enabled",
|
|
24
|
+
* timeout: 3600,
|
|
25
|
+
* });
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* ## Reference
|
|
29
|
+
*
|
|
30
|
+
* `name` - (Required) Name of the virtual address
|
|
31
|
+
*
|
|
32
|
+
* `defaultsFrom` - (Required) Parent cookie persistence profile
|
|
33
|
+
*
|
|
34
|
+
* `matchAcrossPools` (Optional) (enabled or disabled) match across pools with given persistence record
|
|
35
|
+
*
|
|
36
|
+
* `matchAcrossServices` (Optional) (enabled or disabled) match across services with given persistence record
|
|
37
|
+
*
|
|
38
|
+
* `matchAcrossVirtuals` (Optional) (enabled or disabled) match across virtual servers with given persistence record
|
|
39
|
+
*
|
|
40
|
+
* `mirror` (Optional) (enabled or disabled) mirror persistence record
|
|
41
|
+
*
|
|
42
|
+
* `timeout` (Optional) (enabled or disabled) Timeout for persistence of the session in seconds
|
|
43
|
+
*
|
|
44
|
+
* `overrideConnLimit` (Optional) (enabled or disabled) Enable or dissable pool member connection limits are overridden for persisted clients. Per-virtual connection limits remain hard limits and are not overridden.
|
|
45
|
+
*/
|
|
46
|
+
class PersistenceProfileSsl extends pulumi.CustomResource {
|
|
47
|
+
constructor(name, argsOrState, opts) {
|
|
48
|
+
let inputs = {};
|
|
49
|
+
opts = opts || {};
|
|
50
|
+
if (opts.id) {
|
|
51
|
+
const state = argsOrState;
|
|
52
|
+
inputs["appService"] = state ? state.appService : undefined;
|
|
53
|
+
inputs["defaultsFrom"] = state ? state.defaultsFrom : undefined;
|
|
54
|
+
inputs["matchAcrossPools"] = state ? state.matchAcrossPools : undefined;
|
|
55
|
+
inputs["matchAcrossServices"] = state ? state.matchAcrossServices : undefined;
|
|
56
|
+
inputs["matchAcrossVirtuals"] = state ? state.matchAcrossVirtuals : undefined;
|
|
57
|
+
inputs["mirror"] = state ? state.mirror : undefined;
|
|
58
|
+
inputs["name"] = state ? state.name : undefined;
|
|
59
|
+
inputs["overrideConnLimit"] = state ? state.overrideConnLimit : undefined;
|
|
60
|
+
inputs["timeout"] = state ? state.timeout : undefined;
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
const args = argsOrState;
|
|
64
|
+
if ((!args || args.defaultsFrom === undefined) && !opts.urn) {
|
|
65
|
+
throw new Error("Missing required property 'defaultsFrom'");
|
|
66
|
+
}
|
|
67
|
+
if ((!args || args.name === undefined) && !opts.urn) {
|
|
68
|
+
throw new Error("Missing required property 'name'");
|
|
69
|
+
}
|
|
70
|
+
inputs["appService"] = args ? args.appService : undefined;
|
|
71
|
+
inputs["defaultsFrom"] = args ? args.defaultsFrom : undefined;
|
|
72
|
+
inputs["matchAcrossPools"] = args ? args.matchAcrossPools : undefined;
|
|
73
|
+
inputs["matchAcrossServices"] = args ? args.matchAcrossServices : undefined;
|
|
74
|
+
inputs["matchAcrossVirtuals"] = args ? args.matchAcrossVirtuals : undefined;
|
|
75
|
+
inputs["mirror"] = args ? args.mirror : undefined;
|
|
76
|
+
inputs["name"] = args ? args.name : undefined;
|
|
77
|
+
inputs["overrideConnLimit"] = args ? args.overrideConnLimit : undefined;
|
|
78
|
+
inputs["timeout"] = args ? args.timeout : undefined;
|
|
79
|
+
}
|
|
80
|
+
if (!opts.version) {
|
|
81
|
+
opts = pulumi.mergeOptions(opts, { version: utilities.getVersion() });
|
|
82
|
+
}
|
|
83
|
+
super(PersistenceProfileSsl.__pulumiType, name, inputs, opts);
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Get an existing PersistenceProfileSsl resource's state with the given name, ID, and optional extra
|
|
87
|
+
* properties used to qualify the lookup.
|
|
88
|
+
*
|
|
89
|
+
* @param name The _unique_ name of the resulting resource.
|
|
90
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
91
|
+
* @param state Any extra arguments used during the lookup.
|
|
92
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
93
|
+
*/
|
|
94
|
+
static get(name, id, state, opts) {
|
|
95
|
+
return new PersistenceProfileSsl(name, state, Object.assign(Object.assign({}, opts), { id: id }));
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Returns true if the given object is an instance of PersistenceProfileSsl. This is designed to work even
|
|
99
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
100
|
+
*/
|
|
101
|
+
static isInstance(obj) {
|
|
102
|
+
if (obj === undefined || obj === null) {
|
|
103
|
+
return false;
|
|
104
|
+
}
|
|
105
|
+
return obj['__pulumiType'] === PersistenceProfileSsl.__pulumiType;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
exports.PersistenceProfileSsl = PersistenceProfileSsl;
|
|
109
|
+
/** @internal */
|
|
110
|
+
PersistenceProfileSsl.__pulumiType = 'f5bigip:ltm/persistenceProfileSsl:PersistenceProfileSsl';
|
|
111
|
+
//# sourceMappingURL=persistenceProfileSsl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"persistenceProfileSsl.js","sourceRoot":"","sources":["../../ltm/persistenceProfileSsl.ts"],"names":[],"mappings":"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"}
|
package/ltm/policy.d.ts
ADDED
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
import { input as inputs, output as outputs } from "../types";
|
|
3
|
+
/**
|
|
4
|
+
* `f5bigip.ltm.Policy` Configures ltm policies to manage traffic assigned to a virtual server
|
|
5
|
+
*
|
|
6
|
+
* For resources should be named with their "full path". The full path is the combination of the partition + name of the resource. For example /Common/my-pool.
|
|
7
|
+
*
|
|
8
|
+
* ## Example Usage
|
|
9
|
+
*
|
|
10
|
+
* ```typescript
|
|
11
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
12
|
+
* import * as f5bigip from "@pulumi/f5bigip";
|
|
13
|
+
*
|
|
14
|
+
* const mypool = new f5bigip.ltm.Pool("mypool", {
|
|
15
|
+
* name: "/Common/test-pool",
|
|
16
|
+
* allowNat: "yes",
|
|
17
|
+
* allowSnat: "yes",
|
|
18
|
+
* loadBalancingMode: "round-robin",
|
|
19
|
+
* });
|
|
20
|
+
* const test_policy = new f5bigip.ltm.Policy("test-policy", {
|
|
21
|
+
* name: "/Common/test-policy",
|
|
22
|
+
* strategy: "first-match",
|
|
23
|
+
* requires: ["http"],
|
|
24
|
+
* controls: ["forwarding"],
|
|
25
|
+
* rules: [{
|
|
26
|
+
* name: "rule6",
|
|
27
|
+
* actions: [{
|
|
28
|
+
* forward: true,
|
|
29
|
+
* pool: mypool.name,
|
|
30
|
+
* }],
|
|
31
|
+
* }],
|
|
32
|
+
* }, {
|
|
33
|
+
* dependsOn: [mypool],
|
|
34
|
+
* });
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
export declare class Policy extends pulumi.CustomResource {
|
|
38
|
+
/**
|
|
39
|
+
* Get an existing Policy resource's state with the given name, ID, and optional extra
|
|
40
|
+
* properties used to qualify the lookup.
|
|
41
|
+
*
|
|
42
|
+
* @param name The _unique_ name of the resulting resource.
|
|
43
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
44
|
+
* @param state Any extra arguments used during the lookup.
|
|
45
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
46
|
+
*/
|
|
47
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: PolicyState, opts?: pulumi.CustomResourceOptions): Policy;
|
|
48
|
+
/**
|
|
49
|
+
* Returns true if the given object is an instance of Policy. This is designed to work even
|
|
50
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
51
|
+
*/
|
|
52
|
+
static isInstance(obj: any): obj is Policy;
|
|
53
|
+
/**
|
|
54
|
+
* Specifies the controls
|
|
55
|
+
*/
|
|
56
|
+
readonly controls: pulumi.Output<string[] | undefined>;
|
|
57
|
+
/**
|
|
58
|
+
* Name of the Policy ( policy name should be in full path which is combination of partition and policy name )
|
|
59
|
+
*/
|
|
60
|
+
readonly name: pulumi.Output<string>;
|
|
61
|
+
/**
|
|
62
|
+
* If you want to publish the policy else it will be deployed in Drafts mode.
|
|
63
|
+
*/
|
|
64
|
+
readonly publishedCopy: pulumi.Output<string | undefined>;
|
|
65
|
+
/**
|
|
66
|
+
* Specifies the protocol
|
|
67
|
+
*/
|
|
68
|
+
readonly requires: pulumi.Output<string[] | undefined>;
|
|
69
|
+
/**
|
|
70
|
+
* Rules can be applied using the policy
|
|
71
|
+
*/
|
|
72
|
+
readonly rules: pulumi.Output<outputs.ltm.PolicyRule[] | undefined>;
|
|
73
|
+
/**
|
|
74
|
+
* Specifies the match strategy
|
|
75
|
+
*/
|
|
76
|
+
readonly strategy: pulumi.Output<string | undefined>;
|
|
77
|
+
/**
|
|
78
|
+
* Create a Policy resource with the given unique name, arguments, and options.
|
|
79
|
+
*
|
|
80
|
+
* @param name The _unique_ name of the resource.
|
|
81
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
82
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
83
|
+
*/
|
|
84
|
+
constructor(name: string, args: PolicyArgs, opts?: pulumi.CustomResourceOptions);
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Input properties used for looking up and filtering Policy resources.
|
|
88
|
+
*/
|
|
89
|
+
export interface PolicyState {
|
|
90
|
+
/**
|
|
91
|
+
* Specifies the controls
|
|
92
|
+
*/
|
|
93
|
+
controls?: pulumi.Input<pulumi.Input<string>[]>;
|
|
94
|
+
/**
|
|
95
|
+
* Name of the Policy ( policy name should be in full path which is combination of partition and policy name )
|
|
96
|
+
*/
|
|
97
|
+
name?: pulumi.Input<string>;
|
|
98
|
+
/**
|
|
99
|
+
* If you want to publish the policy else it will be deployed in Drafts mode.
|
|
100
|
+
*/
|
|
101
|
+
publishedCopy?: pulumi.Input<string>;
|
|
102
|
+
/**
|
|
103
|
+
* Specifies the protocol
|
|
104
|
+
*/
|
|
105
|
+
requires?: pulumi.Input<pulumi.Input<string>[]>;
|
|
106
|
+
/**
|
|
107
|
+
* Rules can be applied using the policy
|
|
108
|
+
*/
|
|
109
|
+
rules?: pulumi.Input<pulumi.Input<inputs.ltm.PolicyRule>[]>;
|
|
110
|
+
/**
|
|
111
|
+
* Specifies the match strategy
|
|
112
|
+
*/
|
|
113
|
+
strategy?: pulumi.Input<string>;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* The set of arguments for constructing a Policy resource.
|
|
117
|
+
*/
|
|
118
|
+
export interface PolicyArgs {
|
|
119
|
+
/**
|
|
120
|
+
* Specifies the controls
|
|
121
|
+
*/
|
|
122
|
+
controls?: pulumi.Input<pulumi.Input<string>[]>;
|
|
123
|
+
/**
|
|
124
|
+
* Name of the Policy ( policy name should be in full path which is combination of partition and policy name )
|
|
125
|
+
*/
|
|
126
|
+
name: pulumi.Input<string>;
|
|
127
|
+
/**
|
|
128
|
+
* If you want to publish the policy else it will be deployed in Drafts mode.
|
|
129
|
+
*/
|
|
130
|
+
publishedCopy?: pulumi.Input<string>;
|
|
131
|
+
/**
|
|
132
|
+
* Specifies the protocol
|
|
133
|
+
*/
|
|
134
|
+
requires?: pulumi.Input<pulumi.Input<string>[]>;
|
|
135
|
+
/**
|
|
136
|
+
* Rules can be applied using the policy
|
|
137
|
+
*/
|
|
138
|
+
rules?: pulumi.Input<pulumi.Input<inputs.ltm.PolicyRule>[]>;
|
|
139
|
+
/**
|
|
140
|
+
* Specifies the match strategy
|
|
141
|
+
*/
|
|
142
|
+
strategy?: pulumi.Input<string>;
|
|
143
|
+
}
|
package/ltm/policy.js
ADDED
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
const pulumi = require("@pulumi/pulumi");
|
|
6
|
+
const utilities = require("../utilities");
|
|
7
|
+
/**
|
|
8
|
+
* `f5bigip.ltm.Policy` Configures ltm policies to manage traffic assigned to a virtual server
|
|
9
|
+
*
|
|
10
|
+
* For resources should be named with their "full path". The full path is the combination of the partition + name of the resource. For example /Common/my-pool.
|
|
11
|
+
*
|
|
12
|
+
* ## Example Usage
|
|
13
|
+
*
|
|
14
|
+
* ```typescript
|
|
15
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
16
|
+
* import * as f5bigip from "@pulumi/f5bigip";
|
|
17
|
+
*
|
|
18
|
+
* const mypool = new f5bigip.ltm.Pool("mypool", {
|
|
19
|
+
* name: "/Common/test-pool",
|
|
20
|
+
* allowNat: "yes",
|
|
21
|
+
* allowSnat: "yes",
|
|
22
|
+
* loadBalancingMode: "round-robin",
|
|
23
|
+
* });
|
|
24
|
+
* const test_policy = new f5bigip.ltm.Policy("test-policy", {
|
|
25
|
+
* name: "/Common/test-policy",
|
|
26
|
+
* strategy: "first-match",
|
|
27
|
+
* requires: ["http"],
|
|
28
|
+
* controls: ["forwarding"],
|
|
29
|
+
* rules: [{
|
|
30
|
+
* name: "rule6",
|
|
31
|
+
* actions: [{
|
|
32
|
+
* forward: true,
|
|
33
|
+
* pool: mypool.name,
|
|
34
|
+
* }],
|
|
35
|
+
* }],
|
|
36
|
+
* }, {
|
|
37
|
+
* dependsOn: [mypool],
|
|
38
|
+
* });
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
class Policy extends pulumi.CustomResource {
|
|
42
|
+
constructor(name, argsOrState, opts) {
|
|
43
|
+
let inputs = {};
|
|
44
|
+
opts = opts || {};
|
|
45
|
+
if (opts.id) {
|
|
46
|
+
const state = argsOrState;
|
|
47
|
+
inputs["controls"] = state ? state.controls : undefined;
|
|
48
|
+
inputs["name"] = state ? state.name : undefined;
|
|
49
|
+
inputs["publishedCopy"] = state ? state.publishedCopy : undefined;
|
|
50
|
+
inputs["requires"] = state ? state.requires : undefined;
|
|
51
|
+
inputs["rules"] = state ? state.rules : undefined;
|
|
52
|
+
inputs["strategy"] = state ? state.strategy : undefined;
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
const args = argsOrState;
|
|
56
|
+
if ((!args || args.name === undefined) && !opts.urn) {
|
|
57
|
+
throw new Error("Missing required property 'name'");
|
|
58
|
+
}
|
|
59
|
+
inputs["controls"] = args ? args.controls : undefined;
|
|
60
|
+
inputs["name"] = args ? args.name : undefined;
|
|
61
|
+
inputs["publishedCopy"] = args ? args.publishedCopy : undefined;
|
|
62
|
+
inputs["requires"] = args ? args.requires : undefined;
|
|
63
|
+
inputs["rules"] = args ? args.rules : undefined;
|
|
64
|
+
inputs["strategy"] = args ? args.strategy : undefined;
|
|
65
|
+
}
|
|
66
|
+
if (!opts.version) {
|
|
67
|
+
opts = pulumi.mergeOptions(opts, { version: utilities.getVersion() });
|
|
68
|
+
}
|
|
69
|
+
super(Policy.__pulumiType, name, inputs, opts);
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Get an existing Policy resource's state with the given name, ID, and optional extra
|
|
73
|
+
* properties used to qualify the lookup.
|
|
74
|
+
*
|
|
75
|
+
* @param name The _unique_ name of the resulting resource.
|
|
76
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
77
|
+
* @param state Any extra arguments used during the lookup.
|
|
78
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
79
|
+
*/
|
|
80
|
+
static get(name, id, state, opts) {
|
|
81
|
+
return new Policy(name, state, Object.assign(Object.assign({}, opts), { id: id }));
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Returns true if the given object is an instance of Policy. This is designed to work even
|
|
85
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
86
|
+
*/
|
|
87
|
+
static isInstance(obj) {
|
|
88
|
+
if (obj === undefined || obj === null) {
|
|
89
|
+
return false;
|
|
90
|
+
}
|
|
91
|
+
return obj['__pulumiType'] === Policy.__pulumiType;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
exports.Policy = Policy;
|
|
95
|
+
/** @internal */
|
|
96
|
+
Policy.__pulumiType = 'f5bigip:ltm/policy:Policy';
|
|
97
|
+
//# sourceMappingURL=policy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policy.js","sourceRoot":"","sources":["../../ltm/policy.ts"],"names":[],"mappings":"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"}
|
package/ltm/pool.d.ts
ADDED
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
/**
|
|
3
|
+
* `f5bigip.ltm.Pool` Manages F5 BIG-IP LTM pools via iControl REST API.
|
|
4
|
+
*
|
|
5
|
+
* Resources should be named with their "full path". The full path is the combination of the partition + name (example: /Common/my-pool ) or partition + directory + name of the resource (example: /Common/test/my-pool )
|
|
6
|
+
*
|
|
7
|
+
* ## Example Usage
|
|
8
|
+
*
|
|
9
|
+
* ```typescript
|
|
10
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
11
|
+
* import * as f5bigip from "@pulumi/f5bigip";
|
|
12
|
+
*
|
|
13
|
+
* const monitor = new f5bigip.ltm.Monitor("monitor", {
|
|
14
|
+
* name: "/Common/terraform_monitor",
|
|
15
|
+
* parent: "/Common/http",
|
|
16
|
+
* });
|
|
17
|
+
* const pool = new f5bigip.ltm.Pool("pool", {
|
|
18
|
+
* name: "/Common/Axiom_Environment_APP1_Pool",
|
|
19
|
+
* loadBalancingMode: "round-robin",
|
|
20
|
+
* minimumActiveMembers: 1,
|
|
21
|
+
* monitors: [monitor.name],
|
|
22
|
+
* });
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export declare class Pool extends pulumi.CustomResource {
|
|
26
|
+
/**
|
|
27
|
+
* Get an existing Pool resource's state with the given name, ID, and optional extra
|
|
28
|
+
* properties used to qualify the lookup.
|
|
29
|
+
*
|
|
30
|
+
* @param name The _unique_ name of the resulting resource.
|
|
31
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
32
|
+
* @param state Any extra arguments used during the lookup.
|
|
33
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
34
|
+
*/
|
|
35
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: PoolState, opts?: pulumi.CustomResourceOptions): Pool;
|
|
36
|
+
/**
|
|
37
|
+
* Returns true if the given object is an instance of Pool. This is designed to work even
|
|
38
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
39
|
+
*/
|
|
40
|
+
static isInstance(obj: any): obj is Pool;
|
|
41
|
+
/**
|
|
42
|
+
* Specifies whether NATs are automatically enabled or disabled for any connections using this pool, [ Default : `yes`, Possible Values `yes` or `no`].
|
|
43
|
+
*/
|
|
44
|
+
readonly allowNat: pulumi.Output<string>;
|
|
45
|
+
/**
|
|
46
|
+
* Specifies whether SNATs are automatically enabled or disabled for any connections using this pool,[ Default : `yes`, Possible Values `yes` or `no`].
|
|
47
|
+
*/
|
|
48
|
+
readonly allowSnat: pulumi.Output<string>;
|
|
49
|
+
/**
|
|
50
|
+
* Specifies descriptive text that identifies the pool.
|
|
51
|
+
*/
|
|
52
|
+
readonly description: pulumi.Output<string | undefined>;
|
|
53
|
+
/**
|
|
54
|
+
* Specifies the load balancing method. The default is Round Robin.
|
|
55
|
+
*/
|
|
56
|
+
readonly loadBalancingMode: pulumi.Output<string>;
|
|
57
|
+
/**
|
|
58
|
+
* Specifies whether the system load balances traffic according to the priority number assigned to the pool member,Default Value is `0` meaning `disabled`.
|
|
59
|
+
*/
|
|
60
|
+
readonly minimumActiveMembers: pulumi.Output<number>;
|
|
61
|
+
/**
|
|
62
|
+
* List of monitor names to associate with the pool
|
|
63
|
+
*/
|
|
64
|
+
readonly monitors: pulumi.Output<string[]>;
|
|
65
|
+
/**
|
|
66
|
+
* Name of the pool,it should be "full path".The full path is the combination of the partition + name of the pool.(For example `/Common/my-pool`)
|
|
67
|
+
*/
|
|
68
|
+
readonly name: pulumi.Output<string>;
|
|
69
|
+
/**
|
|
70
|
+
* Specifies the number of times the system tries to contact a new pool member after a passive failure.
|
|
71
|
+
*/
|
|
72
|
+
readonly reselectTries: pulumi.Output<number>;
|
|
73
|
+
/**
|
|
74
|
+
* Specifies how the system should respond when the target pool member becomes unavailable. The default is `None`, Possible values: `[none, reset, reselect, drop]`.
|
|
75
|
+
*/
|
|
76
|
+
readonly serviceDownAction: pulumi.Output<string>;
|
|
77
|
+
/**
|
|
78
|
+
* Specifies the duration during which the system sends less traffic to a newly-enabled pool member.
|
|
79
|
+
*/
|
|
80
|
+
readonly slowRampTime: pulumi.Output<number>;
|
|
81
|
+
/**
|
|
82
|
+
* Create a Pool resource with the given unique name, arguments, and options.
|
|
83
|
+
*
|
|
84
|
+
* @param name The _unique_ name of the resource.
|
|
85
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
86
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
87
|
+
*/
|
|
88
|
+
constructor(name: string, args: PoolArgs, opts?: pulumi.CustomResourceOptions);
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Input properties used for looking up and filtering Pool resources.
|
|
92
|
+
*/
|
|
93
|
+
export interface PoolState {
|
|
94
|
+
/**
|
|
95
|
+
* Specifies whether NATs are automatically enabled or disabled for any connections using this pool, [ Default : `yes`, Possible Values `yes` or `no`].
|
|
96
|
+
*/
|
|
97
|
+
allowNat?: pulumi.Input<string>;
|
|
98
|
+
/**
|
|
99
|
+
* Specifies whether SNATs are automatically enabled or disabled for any connections using this pool,[ Default : `yes`, Possible Values `yes` or `no`].
|
|
100
|
+
*/
|
|
101
|
+
allowSnat?: pulumi.Input<string>;
|
|
102
|
+
/**
|
|
103
|
+
* Specifies descriptive text that identifies the pool.
|
|
104
|
+
*/
|
|
105
|
+
description?: pulumi.Input<string>;
|
|
106
|
+
/**
|
|
107
|
+
* Specifies the load balancing method. The default is Round Robin.
|
|
108
|
+
*/
|
|
109
|
+
loadBalancingMode?: pulumi.Input<string>;
|
|
110
|
+
/**
|
|
111
|
+
* Specifies whether the system load balances traffic according to the priority number assigned to the pool member,Default Value is `0` meaning `disabled`.
|
|
112
|
+
*/
|
|
113
|
+
minimumActiveMembers?: pulumi.Input<number>;
|
|
114
|
+
/**
|
|
115
|
+
* List of monitor names to associate with the pool
|
|
116
|
+
*/
|
|
117
|
+
monitors?: pulumi.Input<pulumi.Input<string>[]>;
|
|
118
|
+
/**
|
|
119
|
+
* Name of the pool,it should be "full path".The full path is the combination of the partition + name of the pool.(For example `/Common/my-pool`)
|
|
120
|
+
*/
|
|
121
|
+
name?: pulumi.Input<string>;
|
|
122
|
+
/**
|
|
123
|
+
* Specifies the number of times the system tries to contact a new pool member after a passive failure.
|
|
124
|
+
*/
|
|
125
|
+
reselectTries?: pulumi.Input<number>;
|
|
126
|
+
/**
|
|
127
|
+
* Specifies how the system should respond when the target pool member becomes unavailable. The default is `None`, Possible values: `[none, reset, reselect, drop]`.
|
|
128
|
+
*/
|
|
129
|
+
serviceDownAction?: pulumi.Input<string>;
|
|
130
|
+
/**
|
|
131
|
+
* Specifies the duration during which the system sends less traffic to a newly-enabled pool member.
|
|
132
|
+
*/
|
|
133
|
+
slowRampTime?: pulumi.Input<number>;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* The set of arguments for constructing a Pool resource.
|
|
137
|
+
*/
|
|
138
|
+
export interface PoolArgs {
|
|
139
|
+
/**
|
|
140
|
+
* Specifies whether NATs are automatically enabled or disabled for any connections using this pool, [ Default : `yes`, Possible Values `yes` or `no`].
|
|
141
|
+
*/
|
|
142
|
+
allowNat?: pulumi.Input<string>;
|
|
143
|
+
/**
|
|
144
|
+
* Specifies whether SNATs are automatically enabled or disabled for any connections using this pool,[ Default : `yes`, Possible Values `yes` or `no`].
|
|
145
|
+
*/
|
|
146
|
+
allowSnat?: pulumi.Input<string>;
|
|
147
|
+
/**
|
|
148
|
+
* Specifies descriptive text that identifies the pool.
|
|
149
|
+
*/
|
|
150
|
+
description?: pulumi.Input<string>;
|
|
151
|
+
/**
|
|
152
|
+
* Specifies the load balancing method. The default is Round Robin.
|
|
153
|
+
*/
|
|
154
|
+
loadBalancingMode?: pulumi.Input<string>;
|
|
155
|
+
/**
|
|
156
|
+
* Specifies whether the system load balances traffic according to the priority number assigned to the pool member,Default Value is `0` meaning `disabled`.
|
|
157
|
+
*/
|
|
158
|
+
minimumActiveMembers?: pulumi.Input<number>;
|
|
159
|
+
/**
|
|
160
|
+
* List of monitor names to associate with the pool
|
|
161
|
+
*/
|
|
162
|
+
monitors?: pulumi.Input<pulumi.Input<string>[]>;
|
|
163
|
+
/**
|
|
164
|
+
* Name of the pool,it should be "full path".The full path is the combination of the partition + name of the pool.(For example `/Common/my-pool`)
|
|
165
|
+
*/
|
|
166
|
+
name: pulumi.Input<string>;
|
|
167
|
+
/**
|
|
168
|
+
* Specifies the number of times the system tries to contact a new pool member after a passive failure.
|
|
169
|
+
*/
|
|
170
|
+
reselectTries?: pulumi.Input<number>;
|
|
171
|
+
/**
|
|
172
|
+
* Specifies how the system should respond when the target pool member becomes unavailable. The default is `None`, Possible values: `[none, reset, reselect, drop]`.
|
|
173
|
+
*/
|
|
174
|
+
serviceDownAction?: pulumi.Input<string>;
|
|
175
|
+
/**
|
|
176
|
+
* Specifies the duration during which the system sends less traffic to a newly-enabled pool member.
|
|
177
|
+
*/
|
|
178
|
+
slowRampTime?: pulumi.Input<number>;
|
|
179
|
+
}
|
package/ltm/pool.js
ADDED
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
const pulumi = require("@pulumi/pulumi");
|
|
6
|
+
const utilities = require("../utilities");
|
|
7
|
+
/**
|
|
8
|
+
* `f5bigip.ltm.Pool` Manages F5 BIG-IP LTM pools via iControl REST API.
|
|
9
|
+
*
|
|
10
|
+
* Resources should be named with their "full path". The full path is the combination of the partition + name (example: /Common/my-pool ) or partition + directory + name of the resource (example: /Common/test/my-pool )
|
|
11
|
+
*
|
|
12
|
+
* ## Example Usage
|
|
13
|
+
*
|
|
14
|
+
* ```typescript
|
|
15
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
16
|
+
* import * as f5bigip from "@pulumi/f5bigip";
|
|
17
|
+
*
|
|
18
|
+
* const monitor = new f5bigip.ltm.Monitor("monitor", {
|
|
19
|
+
* name: "/Common/terraform_monitor",
|
|
20
|
+
* parent: "/Common/http",
|
|
21
|
+
* });
|
|
22
|
+
* const pool = new f5bigip.ltm.Pool("pool", {
|
|
23
|
+
* name: "/Common/Axiom_Environment_APP1_Pool",
|
|
24
|
+
* loadBalancingMode: "round-robin",
|
|
25
|
+
* minimumActiveMembers: 1,
|
|
26
|
+
* monitors: [monitor.name],
|
|
27
|
+
* });
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
class Pool extends pulumi.CustomResource {
|
|
31
|
+
constructor(name, argsOrState, opts) {
|
|
32
|
+
let inputs = {};
|
|
33
|
+
opts = opts || {};
|
|
34
|
+
if (opts.id) {
|
|
35
|
+
const state = argsOrState;
|
|
36
|
+
inputs["allowNat"] = state ? state.allowNat : undefined;
|
|
37
|
+
inputs["allowSnat"] = state ? state.allowSnat : undefined;
|
|
38
|
+
inputs["description"] = state ? state.description : undefined;
|
|
39
|
+
inputs["loadBalancingMode"] = state ? state.loadBalancingMode : undefined;
|
|
40
|
+
inputs["minimumActiveMembers"] = state ? state.minimumActiveMembers : undefined;
|
|
41
|
+
inputs["monitors"] = state ? state.monitors : undefined;
|
|
42
|
+
inputs["name"] = state ? state.name : undefined;
|
|
43
|
+
inputs["reselectTries"] = state ? state.reselectTries : undefined;
|
|
44
|
+
inputs["serviceDownAction"] = state ? state.serviceDownAction : undefined;
|
|
45
|
+
inputs["slowRampTime"] = state ? state.slowRampTime : undefined;
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
const args = argsOrState;
|
|
49
|
+
if ((!args || args.name === undefined) && !opts.urn) {
|
|
50
|
+
throw new Error("Missing required property 'name'");
|
|
51
|
+
}
|
|
52
|
+
inputs["allowNat"] = args ? args.allowNat : undefined;
|
|
53
|
+
inputs["allowSnat"] = args ? args.allowSnat : undefined;
|
|
54
|
+
inputs["description"] = args ? args.description : undefined;
|
|
55
|
+
inputs["loadBalancingMode"] = args ? args.loadBalancingMode : undefined;
|
|
56
|
+
inputs["minimumActiveMembers"] = args ? args.minimumActiveMembers : undefined;
|
|
57
|
+
inputs["monitors"] = args ? args.monitors : undefined;
|
|
58
|
+
inputs["name"] = args ? args.name : undefined;
|
|
59
|
+
inputs["reselectTries"] = args ? args.reselectTries : undefined;
|
|
60
|
+
inputs["serviceDownAction"] = args ? args.serviceDownAction : undefined;
|
|
61
|
+
inputs["slowRampTime"] = args ? args.slowRampTime : undefined;
|
|
62
|
+
}
|
|
63
|
+
if (!opts.version) {
|
|
64
|
+
opts = pulumi.mergeOptions(opts, { version: utilities.getVersion() });
|
|
65
|
+
}
|
|
66
|
+
super(Pool.__pulumiType, name, inputs, opts);
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Get an existing Pool resource's state with the given name, ID, and optional extra
|
|
70
|
+
* properties used to qualify the lookup.
|
|
71
|
+
*
|
|
72
|
+
* @param name The _unique_ name of the resulting resource.
|
|
73
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
74
|
+
* @param state Any extra arguments used during the lookup.
|
|
75
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
76
|
+
*/
|
|
77
|
+
static get(name, id, state, opts) {
|
|
78
|
+
return new Pool(name, state, Object.assign(Object.assign({}, opts), { id: id }));
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Returns true if the given object is an instance of Pool. This is designed to work even
|
|
82
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
83
|
+
*/
|
|
84
|
+
static isInstance(obj) {
|
|
85
|
+
if (obj === undefined || obj === null) {
|
|
86
|
+
return false;
|
|
87
|
+
}
|
|
88
|
+
return obj['__pulumiType'] === Pool.__pulumiType;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
exports.Pool = Pool;
|
|
92
|
+
/** @internal */
|
|
93
|
+
Pool.__pulumiType = 'f5bigip:ltm/pool:Pool';
|
|
94
|
+
//# sourceMappingURL=pool.js.map
|
package/ltm/pool.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pool.js","sourceRoot":"","sources":["../../ltm/pool.ts"],"names":[],"mappings":"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"}
|