@pulumi/aws 6.0.0-alpha.3 → 6.0.0-alpha.4

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.
Files changed (190) hide show
  1. package/applicationloadbalancing/index.d.ts +0 -27
  2. package/applicationloadbalancing/index.js +1 -51
  3. package/applicationloadbalancing/index.js.map +1 -1
  4. package/appmesh/virtualGateway.d.ts +23 -2
  5. package/appmesh/virtualGateway.js +23 -2
  6. package/appmesh/virtualGateway.js.map +1 -1
  7. package/appmesh/virtualNode.d.ts +8 -8
  8. package/appmesh/virtualNode.js +8 -8
  9. package/appmesh/virtualRouter.d.ts +2 -2
  10. package/appmesh/virtualRouter.js +2 -2
  11. package/appsync/dataSource.d.ts +18 -18
  12. package/cloudtrail/index.d.ts +0 -3
  13. package/cloudtrail/index.js +1 -4
  14. package/cloudtrail/index.js.map +1 -1
  15. package/ec2/fleet.d.ts +5 -5
  16. package/ec2/fleet.js +6 -6
  17. package/ec2/fleet.js.map +1 -1
  18. package/ec2/index.d.ts +0 -3
  19. package/ec2/index.js +2 -7
  20. package/ec2/index.js.map +1 -1
  21. package/ec2/securityGroup.d.ts +14 -0
  22. package/ec2/securityGroup.js +14 -0
  23. package/ec2/securityGroup.js.map +1 -1
  24. package/fms/policy.d.ts +2 -0
  25. package/fms/policy.js +2 -0
  26. package/fms/policy.js.map +1 -1
  27. package/iam/{getOpenidConnectProvider.d.ts → getOpenIdConnectProvider.d.ts} +12 -12
  28. package/iam/{getOpenidConnectProvider.js → getOpenIdConnectProvider.js} +12 -12
  29. package/iam/{getOpenidConnectProvider.js.map → getOpenIdConnectProvider.js.map} +1 -1
  30. package/iam/index.d.ts +3 -3
  31. package/iam/index.js +4 -4
  32. package/iam/virtualMfaDevice.d.ts +22 -2
  33. package/iam/virtualMfaDevice.js +8 -0
  34. package/iam/virtualMfaDevice.js.map +1 -1
  35. package/index.d.ts +1 -21
  36. package/index.js +5 -27
  37. package/index.js.map +1 -1
  38. package/iot/topicRule.d.ts +35 -35
  39. package/iot/topicRule.js +16 -16
  40. package/iot/topicRule.js.map +1 -1
  41. package/kendra/dataSource.d.ts +32 -9
  42. package/kendra/dataSource.js +23 -0
  43. package/kendra/dataSource.js.map +1 -1
  44. package/kinesis/firehoseDeliveryStream.d.ts +89 -0
  45. package/kinesis/firehoseDeliveryStream.js +89 -0
  46. package/kinesis/firehoseDeliveryStream.js.map +1 -1
  47. package/opensearch/serverlessSecurityPolicy.d.ts +122 -8
  48. package/opensearch/serverlessSecurityPolicy.js +122 -8
  49. package/opensearch/serverlessSecurityPolicy.js.map +1 -1
  50. package/package.json +2 -2
  51. package/package.json.dev +2 -2
  52. package/rds/instance.d.ts +0 -9
  53. package/rds/instance.js.map +1 -1
  54. package/securityhub/standardsControl.d.ts +3 -3
  55. package/ses/index.d.ts +0 -3
  56. package/ses/index.js +1 -6
  57. package/ses/index.js.map +1 -1
  58. package/ssm/getParameter.d.ts +1 -0
  59. package/ssm/getParameter.js.map +1 -1
  60. package/types/input.d.ts +1302 -2573
  61. package/types/output.d.ts +4459 -5933
  62. package/utils.d.ts +0 -1
  63. package/utils.js +0 -6
  64. package/utils.js.map +1 -1
  65. package/wafv2/getIpSet.d.ts +1 -1
  66. package/wafv2/ipSet.d.ts +3 -3
  67. package/wafv2/regexPatternSet.d.ts +3 -3
  68. package/applicationloadbalancing/getListener.d.ts +0 -120
  69. package/applicationloadbalancing/getListener.js +0 -80
  70. package/applicationloadbalancing/getListener.js.map +0 -1
  71. package/applicationloadbalancing/getLoadBalancer.d.ts +0 -133
  72. package/applicationloadbalancing/getLoadBalancer.js +0 -73
  73. package/applicationloadbalancing/getLoadBalancer.js.map +0 -1
  74. package/applicationloadbalancing/getTargetGroup.d.ts +0 -126
  75. package/applicationloadbalancing/getTargetGroup.js +0 -73
  76. package/applicationloadbalancing/getTargetGroup.js.map +0 -1
  77. package/applicationloadbalancing/listener.d.ts +0 -377
  78. package/applicationloadbalancing/listener.js +0 -276
  79. package/applicationloadbalancing/listener.js.map +0 -1
  80. package/applicationloadbalancing/listenerCertificate.d.ts +0 -96
  81. package/applicationloadbalancing/listenerCertificate.js +0 -95
  82. package/applicationloadbalancing/listenerCertificate.js.map +0 -1
  83. package/applicationloadbalancing/listenerRule.d.ts +0 -301
  84. package/applicationloadbalancing/listenerRule.js +0 -249
  85. package/applicationloadbalancing/listenerRule.js.map +0 -1
  86. package/applicationloadbalancing/loadBalancer.d.ts +0 -463
  87. package/applicationloadbalancing/loadBalancer.js +0 -201
  88. package/applicationloadbalancing/loadBalancer.js.map +0 -1
  89. package/applicationloadbalancing/targetGroup.d.ts +0 -402
  90. package/applicationloadbalancing/targetGroup.js +0 -161
  91. package/applicationloadbalancing/targetGroup.js.map +0 -1
  92. package/applicationloadbalancing/targetGroupAttachment.d.ts +0 -142
  93. package/applicationloadbalancing/targetGroupAttachment.js +0 -115
  94. package/applicationloadbalancing/targetGroupAttachment.js.map +0 -1
  95. package/awsMixins.d.ts +0 -21
  96. package/awsMixins.js +0 -40
  97. package/awsMixins.js.map +0 -1
  98. package/cloudtrail/getFunction.d.ts +0 -102
  99. package/cloudtrail/getFunction.js +0 -55
  100. package/cloudtrail/getFunction.js.map +0 -1
  101. package/ec2/transitGatewayPeeringAttachmentAccepter.d.ts +0 -132
  102. package/ec2/transitGatewayPeeringAttachmentAccepter.js +0 -94
  103. package/ec2/transitGatewayPeeringAttachmentAccepter.js.map +0 -1
  104. package/elasticloadbalancing/appCookieStickinessPolicy.d.ts +0 -129
  105. package/elasticloadbalancing/appCookieStickinessPolicy.js +0 -102
  106. package/elasticloadbalancing/appCookieStickinessPolicy.js.map +0 -1
  107. package/elasticloadbalancing/attachment.d.ts +0 -86
  108. package/elasticloadbalancing/attachment.js +0 -85
  109. package/elasticloadbalancing/attachment.js.map +0 -1
  110. package/elasticloadbalancing/getHostedZoneId.d.ts +0 -81
  111. package/elasticloadbalancing/getHostedZoneId.js +0 -69
  112. package/elasticloadbalancing/getHostedZoneId.js.map +0 -1
  113. package/elasticloadbalancing/getLoadBalancer.d.ts +0 -105
  114. package/elasticloadbalancing/getLoadBalancer.js +0 -67
  115. package/elasticloadbalancing/getLoadBalancer.js.map +0 -1
  116. package/elasticloadbalancing/getServiceAccount.d.ts +0 -135
  117. package/elasticloadbalancing/getServiceAccount.js +0 -119
  118. package/elasticloadbalancing/getServiceAccount.js.map +0 -1
  119. package/elasticloadbalancing/index.d.ts +0 -33
  120. package/elasticloadbalancing/index.js +0 -66
  121. package/elasticloadbalancing/index.js.map +0 -1
  122. package/elasticloadbalancing/listenerPolicy.d.ts +0 -176
  123. package/elasticloadbalancing/listenerPolicy.js +0 -149
  124. package/elasticloadbalancing/listenerPolicy.js.map +0 -1
  125. package/elasticloadbalancing/loadBalancer.d.ts +0 -398
  126. package/elasticloadbalancing/loadBalancer.js +0 -177
  127. package/elasticloadbalancing/loadBalancer.js.map +0 -1
  128. package/elasticloadbalancing/loadBalancerBackendServerPolicy.d.ts +0 -123
  129. package/elasticloadbalancing/loadBalancerBackendServerPolicy.js +0 -112
  130. package/elasticloadbalancing/loadBalancerBackendServerPolicy.js.map +0 -1
  131. package/elasticloadbalancing/loadBalancerCookieStickinessPolicy.d.ts +0 -124
  132. package/elasticloadbalancing/loadBalancerCookieStickinessPolicy.js +0 -91
  133. package/elasticloadbalancing/loadBalancerCookieStickinessPolicy.js.map +0 -1
  134. package/elasticloadbalancing/loadBalancerPolicy.d.ts +0 -166
  135. package/elasticloadbalancing/loadBalancerPolicy.js +0 -146
  136. package/elasticloadbalancing/loadBalancerPolicy.js.map +0 -1
  137. package/elasticloadbalancing/sslNegotiationPolicy.d.ts +0 -183
  138. package/elasticloadbalancing/sslNegotiationPolicy.js +0 -123
  139. package/elasticloadbalancing/sslNegotiationPolicy.js.map +0 -1
  140. package/elasticloadbalancingv2/getListener.d.ts +0 -120
  141. package/elasticloadbalancingv2/getListener.js +0 -80
  142. package/elasticloadbalancingv2/getListener.js.map +0 -1
  143. package/elasticloadbalancingv2/getLoadBalancer.d.ts +0 -133
  144. package/elasticloadbalancingv2/getLoadBalancer.js +0 -73
  145. package/elasticloadbalancingv2/getLoadBalancer.js.map +0 -1
  146. package/elasticloadbalancingv2/getTargetGroup.d.ts +0 -126
  147. package/elasticloadbalancingv2/getTargetGroup.js +0 -73
  148. package/elasticloadbalancingv2/getTargetGroup.js.map +0 -1
  149. package/elasticloadbalancingv2/index.d.ts +0 -27
  150. package/elasticloadbalancingv2/index.js +0 -56
  151. package/elasticloadbalancingv2/index.js.map +0 -1
  152. package/elasticloadbalancingv2/listener.d.ts +0 -377
  153. package/elasticloadbalancingv2/listener.js +0 -276
  154. package/elasticloadbalancingv2/listener.js.map +0 -1
  155. package/elasticloadbalancingv2/listenerCertificate.d.ts +0 -96
  156. package/elasticloadbalancingv2/listenerCertificate.js +0 -95
  157. package/elasticloadbalancingv2/listenerCertificate.js.map +0 -1
  158. package/elasticloadbalancingv2/listenerRule.d.ts +0 -301
  159. package/elasticloadbalancingv2/listenerRule.js +0 -249
  160. package/elasticloadbalancingv2/listenerRule.js.map +0 -1
  161. package/elasticloadbalancingv2/loadBalancer.d.ts +0 -462
  162. package/elasticloadbalancingv2/loadBalancer.js +0 -201
  163. package/elasticloadbalancingv2/loadBalancer.js.map +0 -1
  164. package/elasticloadbalancingv2/targetGroup.d.ts +0 -402
  165. package/elasticloadbalancingv2/targetGroup.js +0 -161
  166. package/elasticloadbalancingv2/targetGroup.js.map +0 -1
  167. package/elasticloadbalancingv2/targetGroupAttachment.d.ts +0 -142
  168. package/elasticloadbalancingv2/targetGroupAttachment.js +0 -115
  169. package/elasticloadbalancingv2/targetGroupAttachment.js.map +0 -1
  170. package/getAmi.d.ts +0 -331
  171. package/getAmi.js +0 -93
  172. package/getAmi.js.map +0 -1
  173. package/getAmiIds.d.ts +0 -135
  174. package/getAmiIds.js +0 -63
  175. package/getAmiIds.js.map +0 -1
  176. package/getAutoscalingGroups.d.ts +0 -119
  177. package/getAutoscalingGroups.js +0 -92
  178. package/getAutoscalingGroups.js.map +0 -1
  179. package/getCanonicalUserId.d.ts +0 -32
  180. package/getCanonicalUserId.js +0 -31
  181. package/getCanonicalUserId.js.map +0 -1
  182. package/getElasticIp.d.ts +0 -221
  183. package/getElasticIp.js +0 -126
  184. package/getElasticIp.js.map +0 -1
  185. package/getPrefixList.d.ts +0 -160
  186. package/getPrefixList.js +0 -125
  187. package/getPrefixList.js.map +0 -1
  188. package/ses/confgurationSet.d.ts +0 -153
  189. package/ses/confgurationSet.js +0 -96
  190. package/ses/confgurationSet.js.map +0 -1
@@ -1,402 +0,0 @@
1
- import * as pulumi from "@pulumi/pulumi";
2
- import * as inputs from "../types/input";
3
- import * as outputs from "../types/output";
4
- /**
5
- * Provides a Target Group resource for use with Load Balancer resources.
6
- *
7
- * > **Note:** `aws.alb.TargetGroup` is known as `aws.lb.TargetGroup`. The functionality is identical.
8
- *
9
- * ## Example Usage
10
- * ### Instance Target Group
11
- *
12
- * ```typescript
13
- * import * as pulumi from "@pulumi/pulumi";
14
- * import * as aws from "@pulumi/aws";
15
- *
16
- * const main = new aws.ec2.Vpc("main", {cidrBlock: "10.0.0.0/16"});
17
- * const test = new aws.lb.TargetGroup("test", {
18
- * port: 80,
19
- * protocol: "HTTP",
20
- * vpcId: main.id,
21
- * });
22
- * ```
23
- * ### IP Target Group
24
- *
25
- * ```typescript
26
- * import * as pulumi from "@pulumi/pulumi";
27
- * import * as aws from "@pulumi/aws";
28
- *
29
- * const main = new aws.ec2.Vpc("main", {cidrBlock: "10.0.0.0/16"});
30
- * const ip_example = new aws.lb.TargetGroup("ip-example", {
31
- * port: 80,
32
- * protocol: "HTTP",
33
- * targetType: "ip",
34
- * vpcId: main.id,
35
- * });
36
- * ```
37
- * ### Lambda Target Group
38
- *
39
- * ```typescript
40
- * import * as pulumi from "@pulumi/pulumi";
41
- * import * as aws from "@pulumi/aws";
42
- *
43
- * const lambda_example = new aws.lb.TargetGroup("lambda-example", {targetType: "lambda"});
44
- * ```
45
- * ### ALB Target Group
46
- *
47
- * ```typescript
48
- * import * as pulumi from "@pulumi/pulumi";
49
- * import * as aws from "@pulumi/aws";
50
- *
51
- * const alb_example = new aws.lb.TargetGroup("alb-example", {
52
- * targetType: "alb",
53
- * port: 80,
54
- * protocol: "TCP",
55
- * vpcId: aws_vpc.main.id,
56
- * });
57
- * ```
58
- *
59
- * ## Import
60
- *
61
- * Target Groups can be imported using their ARN, e.g.,
62
- *
63
- * ```sh
64
- * $ pulumi import aws:applicationloadbalancing/targetGroup:TargetGroup app_front_end arn:aws:elasticloadbalancing:us-west-2:187416307283:targetgroup/app-front-end/20cfe21448b66314
65
- * ```
66
- *
67
- * @deprecated aws.applicationloadbalancing.TargetGroup has been deprecated in favor of aws.alb.TargetGroup
68
- */
69
- export declare class TargetGroup extends pulumi.CustomResource {
70
- /**
71
- * Get an existing TargetGroup resource's state with the given name, ID, and optional extra
72
- * properties used to qualify the lookup.
73
- *
74
- * @param name The _unique_ name of the resulting resource.
75
- * @param id The _unique_ provider ID of the resource to lookup.
76
- * @param state Any extra arguments used during the lookup.
77
- * @param opts Optional settings to control the behavior of the CustomResource.
78
- */
79
- static get(name: string, id: pulumi.Input<pulumi.ID>, state?: TargetGroupState, opts?: pulumi.CustomResourceOptions): TargetGroup;
80
- /**
81
- * Returns true if the given object is an instance of TargetGroup. 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: any): obj is TargetGroup;
85
- /**
86
- * ARN of the Target Group (matches `id`).
87
- */
88
- readonly arn: pulumi.Output<string>;
89
- /**
90
- * ARN suffix for use with CloudWatch Metrics.
91
- */
92
- readonly arnSuffix: pulumi.Output<string>;
93
- /**
94
- * Whether to terminate connections at the end of the deregistration timeout on Network Load Balancers. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#deregistration-delay) for more information. Default is `false`.
95
- */
96
- readonly connectionTermination: pulumi.Output<boolean | undefined>;
97
- /**
98
- * Amount time for Elastic Load Balancing to wait before changing the state of a deregistering target from draining to unused. The range is 0-3600 seconds. The default value is 300 seconds.
99
- */
100
- readonly deregistrationDelay: pulumi.Output<number | undefined>;
101
- /**
102
- * Health Check configuration block. Detailed below.
103
- */
104
- readonly healthCheck: pulumi.Output<outputs.applicationloadbalancing.TargetGroupHealthCheck>;
105
- /**
106
- * The type of IP addresses used by the target group, only supported when target type is set to `ip`. Possible values are `ipv4` or `ipv6`.
107
- */
108
- readonly ipAddressType: pulumi.Output<string>;
109
- /**
110
- * Whether the request and response headers exchanged between the load balancer and the Lambda function include arrays of values or strings. Only applies when `targetType` is `lambda`. Default is `false`.
111
- */
112
- readonly lambdaMultiValueHeadersEnabled: pulumi.Output<boolean | undefined>;
113
- /**
114
- * Determines how the load balancer selects targets when routing requests. Only applicable for Application Load Balancer Target Groups. The value is `roundRobin` or `leastOutstandingRequests`. The default is `roundRobin`.
115
- */
116
- readonly loadBalancingAlgorithmType: pulumi.Output<string>;
117
- /**
118
- * Indicates whether cross zone load balancing is enabled. The value is `"true"`, `"false"` or `"useLoadBalancerConfiguration"`. The default is `"useLoadBalancerConfiguration"`.
119
- */
120
- readonly loadBalancingCrossZoneEnabled: pulumi.Output<string>;
121
- /**
122
- * Name of the target group. If omitted, this provider will assign a random, unique name. This name must be unique per region per account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen.
123
- */
124
- readonly name: pulumi.Output<string>;
125
- /**
126
- * Creates a unique name beginning with the specified prefix. Conflicts with `name`. Cannot be longer than 6 characters.
127
- */
128
- readonly namePrefix: pulumi.Output<string | undefined>;
129
- /**
130
- * Port on which targets receive traffic, unless overridden when registering a specific target. Required when `targetType` is `instance`, `ip` or `alb`. Does not apply when `targetType` is `lambda`.
131
- */
132
- readonly port: pulumi.Output<number | undefined>;
133
- /**
134
- * Whether client IP preservation is enabled. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#client-ip-preservation) for more information.
135
- */
136
- readonly preserveClientIp: pulumi.Output<string>;
137
- /**
138
- * Protocol to use for routing traffic to the targets. Should be one of `GENEVE`, `HTTP`, `HTTPS`, `TCP`, `TCP_UDP`, `TLS`, or `UDP`. Required when `targetType` is `instance`, `ip` or `alb`. Does not apply when `targetType` is `lambda`.
139
- */
140
- readonly protocol: pulumi.Output<string | undefined>;
141
- /**
142
- * Only applicable when `protocol` is `HTTP` or `HTTPS`. The protocol version. Specify `GRPC` to send requests to targets using gRPC. Specify `HTTP2` to send requests to targets using HTTP/2. The default is `HTTP1`, which sends requests to targets using HTTP/1.1
143
- */
144
- readonly protocolVersion: pulumi.Output<string>;
145
- /**
146
- * Whether to enable support for proxy protocol v2 on Network Load Balancers. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#proxy-protocol) for more information. Default is `false`.
147
- */
148
- readonly proxyProtocolV2: pulumi.Output<boolean | undefined>;
149
- /**
150
- * Amount time for targets to warm up before the load balancer sends them a full share of requests. The range is 30-900 seconds or 0 to disable. The default value is 0 seconds.
151
- */
152
- readonly slowStart: pulumi.Output<number | undefined>;
153
- /**
154
- * Stickiness configuration block. Detailed below.
155
- */
156
- readonly stickiness: pulumi.Output<outputs.applicationloadbalancing.TargetGroupStickiness>;
157
- /**
158
- * Map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
159
- */
160
- readonly tags: pulumi.Output<{
161
- [key: string]: string;
162
- } | undefined>;
163
- /**
164
- * A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
165
- */
166
- readonly tagsAll: pulumi.Output<{
167
- [key: string]: string;
168
- }>;
169
- /**
170
- * Target failover block. Only applicable for Gateway Load Balancer target groups. See targetFailover for more information.
171
- */
172
- readonly targetFailovers: pulumi.Output<outputs.applicationloadbalancing.TargetGroupTargetFailover[]>;
173
- /**
174
- * Type of target that you must specify when registering targets with this target group. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_CreateTargetGroup.html) for supported values. The default is `instance`.
175
- *
176
- * Note that you can't specify targets for a target group using both instance IDs and IP addresses.
177
- *
178
- * If the target type is `ip`, specify IP addresses from the subnets of the virtual private cloud (VPC) for the target group, the RFC 1918 range (10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16), and the RFC 6598 range (100.64.0.0/10). You can't specify publicly routable IP addresses.
179
- *
180
- * Network Load Balancers do not support the `lambda` target type.
181
- *
182
- * Application Load Balancers do not support the `alb` target type.
183
- */
184
- readonly targetType: pulumi.Output<string | undefined>;
185
- /**
186
- * Identifier of the VPC in which to create the target group. Required when `targetType` is `instance`, `ip` or `alb`. Does not apply when `targetType` is `lambda`.
187
- */
188
- readonly vpcId: pulumi.Output<string | undefined>;
189
- /**
190
- * Create a TargetGroup resource with the given unique name, arguments, and options.
191
- *
192
- * @param name The _unique_ name of the resource.
193
- * @param args The arguments to use to populate this resource's properties.
194
- * @param opts A bag of options that control this resource's behavior.
195
- */
196
- /** @deprecated aws.applicationloadbalancing.TargetGroup has been deprecated in favor of aws.alb.TargetGroup */
197
- constructor(name: string, args?: TargetGroupArgs, opts?: pulumi.CustomResourceOptions);
198
- }
199
- /**
200
- * Input properties used for looking up and filtering TargetGroup resources.
201
- */
202
- export interface TargetGroupState {
203
- /**
204
- * ARN of the Target Group (matches `id`).
205
- */
206
- arn?: pulumi.Input<string>;
207
- /**
208
- * ARN suffix for use with CloudWatch Metrics.
209
- */
210
- arnSuffix?: pulumi.Input<string>;
211
- /**
212
- * Whether to terminate connections at the end of the deregistration timeout on Network Load Balancers. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#deregistration-delay) for more information. Default is `false`.
213
- */
214
- connectionTermination?: pulumi.Input<boolean>;
215
- /**
216
- * Amount time for Elastic Load Balancing to wait before changing the state of a deregistering target from draining to unused. The range is 0-3600 seconds. The default value is 300 seconds.
217
- */
218
- deregistrationDelay?: pulumi.Input<number>;
219
- /**
220
- * Health Check configuration block. Detailed below.
221
- */
222
- healthCheck?: pulumi.Input<inputs.applicationloadbalancing.TargetGroupHealthCheck>;
223
- /**
224
- * The type of IP addresses used by the target group, only supported when target type is set to `ip`. Possible values are `ipv4` or `ipv6`.
225
- */
226
- ipAddressType?: pulumi.Input<string>;
227
- /**
228
- * Whether the request and response headers exchanged between the load balancer and the Lambda function include arrays of values or strings. Only applies when `targetType` is `lambda`. Default is `false`.
229
- */
230
- lambdaMultiValueHeadersEnabled?: pulumi.Input<boolean>;
231
- /**
232
- * Determines how the load balancer selects targets when routing requests. Only applicable for Application Load Balancer Target Groups. The value is `roundRobin` or `leastOutstandingRequests`. The default is `roundRobin`.
233
- */
234
- loadBalancingAlgorithmType?: pulumi.Input<string>;
235
- /**
236
- * Indicates whether cross zone load balancing is enabled. The value is `"true"`, `"false"` or `"useLoadBalancerConfiguration"`. The default is `"useLoadBalancerConfiguration"`.
237
- */
238
- loadBalancingCrossZoneEnabled?: pulumi.Input<string>;
239
- /**
240
- * Name of the target group. If omitted, this provider will assign a random, unique name. This name must be unique per region per account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen.
241
- */
242
- name?: pulumi.Input<string>;
243
- /**
244
- * Creates a unique name beginning with the specified prefix. Conflicts with `name`. Cannot be longer than 6 characters.
245
- */
246
- namePrefix?: pulumi.Input<string>;
247
- /**
248
- * Port on which targets receive traffic, unless overridden when registering a specific target. Required when `targetType` is `instance`, `ip` or `alb`. Does not apply when `targetType` is `lambda`.
249
- */
250
- port?: pulumi.Input<number>;
251
- /**
252
- * Whether client IP preservation is enabled. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#client-ip-preservation) for more information.
253
- */
254
- preserveClientIp?: pulumi.Input<string>;
255
- /**
256
- * Protocol to use for routing traffic to the targets. Should be one of `GENEVE`, `HTTP`, `HTTPS`, `TCP`, `TCP_UDP`, `TLS`, or `UDP`. Required when `targetType` is `instance`, `ip` or `alb`. Does not apply when `targetType` is `lambda`.
257
- */
258
- protocol?: pulumi.Input<string>;
259
- /**
260
- * Only applicable when `protocol` is `HTTP` or `HTTPS`. The protocol version. Specify `GRPC` to send requests to targets using gRPC. Specify `HTTP2` to send requests to targets using HTTP/2. The default is `HTTP1`, which sends requests to targets using HTTP/1.1
261
- */
262
- protocolVersion?: pulumi.Input<string>;
263
- /**
264
- * Whether to enable support for proxy protocol v2 on Network Load Balancers. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#proxy-protocol) for more information. Default is `false`.
265
- */
266
- proxyProtocolV2?: pulumi.Input<boolean>;
267
- /**
268
- * Amount time for targets to warm up before the load balancer sends them a full share of requests. The range is 30-900 seconds or 0 to disable. The default value is 0 seconds.
269
- */
270
- slowStart?: pulumi.Input<number>;
271
- /**
272
- * Stickiness configuration block. Detailed below.
273
- */
274
- stickiness?: pulumi.Input<inputs.applicationloadbalancing.TargetGroupStickiness>;
275
- /**
276
- * Map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
277
- */
278
- tags?: pulumi.Input<{
279
- [key: string]: pulumi.Input<string>;
280
- }>;
281
- /**
282
- * A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
283
- */
284
- tagsAll?: pulumi.Input<{
285
- [key: string]: pulumi.Input<string>;
286
- }>;
287
- /**
288
- * Target failover block. Only applicable for Gateway Load Balancer target groups. See targetFailover for more information.
289
- */
290
- targetFailovers?: pulumi.Input<pulumi.Input<inputs.applicationloadbalancing.TargetGroupTargetFailover>[]>;
291
- /**
292
- * Type of target that you must specify when registering targets with this target group. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_CreateTargetGroup.html) for supported values. The default is `instance`.
293
- *
294
- * Note that you can't specify targets for a target group using both instance IDs and IP addresses.
295
- *
296
- * If the target type is `ip`, specify IP addresses from the subnets of the virtual private cloud (VPC) for the target group, the RFC 1918 range (10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16), and the RFC 6598 range (100.64.0.0/10). You can't specify publicly routable IP addresses.
297
- *
298
- * Network Load Balancers do not support the `lambda` target type.
299
- *
300
- * Application Load Balancers do not support the `alb` target type.
301
- */
302
- targetType?: pulumi.Input<string>;
303
- /**
304
- * Identifier of the VPC in which to create the target group. Required when `targetType` is `instance`, `ip` or `alb`. Does not apply when `targetType` is `lambda`.
305
- */
306
- vpcId?: pulumi.Input<string>;
307
- }
308
- /**
309
- * The set of arguments for constructing a TargetGroup resource.
310
- */
311
- export interface TargetGroupArgs {
312
- /**
313
- * Whether to terminate connections at the end of the deregistration timeout on Network Load Balancers. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#deregistration-delay) for more information. Default is `false`.
314
- */
315
- connectionTermination?: pulumi.Input<boolean>;
316
- /**
317
- * Amount time for Elastic Load Balancing to wait before changing the state of a deregistering target from draining to unused. The range is 0-3600 seconds. The default value is 300 seconds.
318
- */
319
- deregistrationDelay?: pulumi.Input<number>;
320
- /**
321
- * Health Check configuration block. Detailed below.
322
- */
323
- healthCheck?: pulumi.Input<inputs.applicationloadbalancing.TargetGroupHealthCheck>;
324
- /**
325
- * The type of IP addresses used by the target group, only supported when target type is set to `ip`. Possible values are `ipv4` or `ipv6`.
326
- */
327
- ipAddressType?: pulumi.Input<string>;
328
- /**
329
- * Whether the request and response headers exchanged between the load balancer and the Lambda function include arrays of values or strings. Only applies when `targetType` is `lambda`. Default is `false`.
330
- */
331
- lambdaMultiValueHeadersEnabled?: pulumi.Input<boolean>;
332
- /**
333
- * Determines how the load balancer selects targets when routing requests. Only applicable for Application Load Balancer Target Groups. The value is `roundRobin` or `leastOutstandingRequests`. The default is `roundRobin`.
334
- */
335
- loadBalancingAlgorithmType?: pulumi.Input<string>;
336
- /**
337
- * Indicates whether cross zone load balancing is enabled. The value is `"true"`, `"false"` or `"useLoadBalancerConfiguration"`. The default is `"useLoadBalancerConfiguration"`.
338
- */
339
- loadBalancingCrossZoneEnabled?: pulumi.Input<string>;
340
- /**
341
- * Name of the target group. If omitted, this provider will assign a random, unique name. This name must be unique per region per account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen.
342
- */
343
- name?: pulumi.Input<string>;
344
- /**
345
- * Creates a unique name beginning with the specified prefix. Conflicts with `name`. Cannot be longer than 6 characters.
346
- */
347
- namePrefix?: pulumi.Input<string>;
348
- /**
349
- * Port on which targets receive traffic, unless overridden when registering a specific target. Required when `targetType` is `instance`, `ip` or `alb`. Does not apply when `targetType` is `lambda`.
350
- */
351
- port?: pulumi.Input<number>;
352
- /**
353
- * Whether client IP preservation is enabled. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#client-ip-preservation) for more information.
354
- */
355
- preserveClientIp?: pulumi.Input<string>;
356
- /**
357
- * Protocol to use for routing traffic to the targets. Should be one of `GENEVE`, `HTTP`, `HTTPS`, `TCP`, `TCP_UDP`, `TLS`, or `UDP`. Required when `targetType` is `instance`, `ip` or `alb`. Does not apply when `targetType` is `lambda`.
358
- */
359
- protocol?: pulumi.Input<string>;
360
- /**
361
- * Only applicable when `protocol` is `HTTP` or `HTTPS`. The protocol version. Specify `GRPC` to send requests to targets using gRPC. Specify `HTTP2` to send requests to targets using HTTP/2. The default is `HTTP1`, which sends requests to targets using HTTP/1.1
362
- */
363
- protocolVersion?: pulumi.Input<string>;
364
- /**
365
- * Whether to enable support for proxy protocol v2 on Network Load Balancers. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#proxy-protocol) for more information. Default is `false`.
366
- */
367
- proxyProtocolV2?: pulumi.Input<boolean>;
368
- /**
369
- * Amount time for targets to warm up before the load balancer sends them a full share of requests. The range is 30-900 seconds or 0 to disable. The default value is 0 seconds.
370
- */
371
- slowStart?: pulumi.Input<number>;
372
- /**
373
- * Stickiness configuration block. Detailed below.
374
- */
375
- stickiness?: pulumi.Input<inputs.applicationloadbalancing.TargetGroupStickiness>;
376
- /**
377
- * Map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
378
- */
379
- tags?: pulumi.Input<{
380
- [key: string]: pulumi.Input<string>;
381
- }>;
382
- /**
383
- * Target failover block. Only applicable for Gateway Load Balancer target groups. See targetFailover for more information.
384
- */
385
- targetFailovers?: pulumi.Input<pulumi.Input<inputs.applicationloadbalancing.TargetGroupTargetFailover>[]>;
386
- /**
387
- * Type of target that you must specify when registering targets with this target group. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_CreateTargetGroup.html) for supported values. The default is `instance`.
388
- *
389
- * Note that you can't specify targets for a target group using both instance IDs and IP addresses.
390
- *
391
- * If the target type is `ip`, specify IP addresses from the subnets of the virtual private cloud (VPC) for the target group, the RFC 1918 range (10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16), and the RFC 6598 range (100.64.0.0/10). You can't specify publicly routable IP addresses.
392
- *
393
- * Network Load Balancers do not support the `lambda` target type.
394
- *
395
- * Application Load Balancers do not support the `alb` target type.
396
- */
397
- targetType?: pulumi.Input<string>;
398
- /**
399
- * Identifier of the VPC in which to create the target group. Required when `targetType` is `instance`, `ip` or `alb`. Does not apply when `targetType` is `lambda`.
400
- */
401
- vpcId?: pulumi.Input<string>;
402
- }
@@ -1,161 +0,0 @@
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
- exports.TargetGroup = void 0;
6
- const pulumi = require("@pulumi/pulumi");
7
- const utilities = require("../utilities");
8
- /**
9
- * Provides a Target Group resource for use with Load Balancer resources.
10
- *
11
- * > **Note:** `aws.alb.TargetGroup` is known as `aws.lb.TargetGroup`. The functionality is identical.
12
- *
13
- * ## Example Usage
14
- * ### Instance Target Group
15
- *
16
- * ```typescript
17
- * import * as pulumi from "@pulumi/pulumi";
18
- * import * as aws from "@pulumi/aws";
19
- *
20
- * const main = new aws.ec2.Vpc("main", {cidrBlock: "10.0.0.0/16"});
21
- * const test = new aws.lb.TargetGroup("test", {
22
- * port: 80,
23
- * protocol: "HTTP",
24
- * vpcId: main.id,
25
- * });
26
- * ```
27
- * ### IP Target Group
28
- *
29
- * ```typescript
30
- * import * as pulumi from "@pulumi/pulumi";
31
- * import * as aws from "@pulumi/aws";
32
- *
33
- * const main = new aws.ec2.Vpc("main", {cidrBlock: "10.0.0.0/16"});
34
- * const ip_example = new aws.lb.TargetGroup("ip-example", {
35
- * port: 80,
36
- * protocol: "HTTP",
37
- * targetType: "ip",
38
- * vpcId: main.id,
39
- * });
40
- * ```
41
- * ### Lambda Target Group
42
- *
43
- * ```typescript
44
- * import * as pulumi from "@pulumi/pulumi";
45
- * import * as aws from "@pulumi/aws";
46
- *
47
- * const lambda_example = new aws.lb.TargetGroup("lambda-example", {targetType: "lambda"});
48
- * ```
49
- * ### ALB Target Group
50
- *
51
- * ```typescript
52
- * import * as pulumi from "@pulumi/pulumi";
53
- * import * as aws from "@pulumi/aws";
54
- *
55
- * const alb_example = new aws.lb.TargetGroup("alb-example", {
56
- * targetType: "alb",
57
- * port: 80,
58
- * protocol: "TCP",
59
- * vpcId: aws_vpc.main.id,
60
- * });
61
- * ```
62
- *
63
- * ## Import
64
- *
65
- * Target Groups can be imported using their ARN, e.g.,
66
- *
67
- * ```sh
68
- * $ pulumi import aws:applicationloadbalancing/targetGroup:TargetGroup app_front_end arn:aws:elasticloadbalancing:us-west-2:187416307283:targetgroup/app-front-end/20cfe21448b66314
69
- * ```
70
- *
71
- * @deprecated aws.applicationloadbalancing.TargetGroup has been deprecated in favor of aws.alb.TargetGroup
72
- */
73
- class TargetGroup extends pulumi.CustomResource {
74
- /**
75
- * Get an existing TargetGroup resource's state with the given name, ID, and optional extra
76
- * properties used to qualify the lookup.
77
- *
78
- * @param name The _unique_ name of the resulting resource.
79
- * @param id The _unique_ provider ID of the resource to lookup.
80
- * @param state Any extra arguments used during the lookup.
81
- * @param opts Optional settings to control the behavior of the CustomResource.
82
- */
83
- static get(name, id, state, opts) {
84
- pulumi.log.warn("TargetGroup is deprecated: aws.applicationloadbalancing.TargetGroup has been deprecated in favor of aws.alb.TargetGroup");
85
- return new TargetGroup(name, state, Object.assign(Object.assign({}, opts), { id: id }));
86
- }
87
- /**
88
- * Returns true if the given object is an instance of TargetGroup. This is designed to work even
89
- * when multiple copies of the Pulumi SDK have been loaded into the same process.
90
- */
91
- static isInstance(obj) {
92
- if (obj === undefined || obj === null) {
93
- return false;
94
- }
95
- return obj['__pulumiType'] === TargetGroup.__pulumiType;
96
- }
97
- /** @deprecated aws.applicationloadbalancing.TargetGroup has been deprecated in favor of aws.alb.TargetGroup */
98
- constructor(name, argsOrState, opts) {
99
- pulumi.log.warn("TargetGroup is deprecated: aws.applicationloadbalancing.TargetGroup has been deprecated in favor of aws.alb.TargetGroup");
100
- let resourceInputs = {};
101
- opts = opts || {};
102
- if (opts.id) {
103
- const state = argsOrState;
104
- resourceInputs["arn"] = state ? state.arn : undefined;
105
- resourceInputs["arnSuffix"] = state ? state.arnSuffix : undefined;
106
- resourceInputs["connectionTermination"] = state ? state.connectionTermination : undefined;
107
- resourceInputs["deregistrationDelay"] = state ? state.deregistrationDelay : undefined;
108
- resourceInputs["healthCheck"] = state ? state.healthCheck : undefined;
109
- resourceInputs["ipAddressType"] = state ? state.ipAddressType : undefined;
110
- resourceInputs["lambdaMultiValueHeadersEnabled"] = state ? state.lambdaMultiValueHeadersEnabled : undefined;
111
- resourceInputs["loadBalancingAlgorithmType"] = state ? state.loadBalancingAlgorithmType : undefined;
112
- resourceInputs["loadBalancingCrossZoneEnabled"] = state ? state.loadBalancingCrossZoneEnabled : undefined;
113
- resourceInputs["name"] = state ? state.name : undefined;
114
- resourceInputs["namePrefix"] = state ? state.namePrefix : undefined;
115
- resourceInputs["port"] = state ? state.port : undefined;
116
- resourceInputs["preserveClientIp"] = state ? state.preserveClientIp : undefined;
117
- resourceInputs["protocol"] = state ? state.protocol : undefined;
118
- resourceInputs["protocolVersion"] = state ? state.protocolVersion : undefined;
119
- resourceInputs["proxyProtocolV2"] = state ? state.proxyProtocolV2 : undefined;
120
- resourceInputs["slowStart"] = state ? state.slowStart : undefined;
121
- resourceInputs["stickiness"] = state ? state.stickiness : undefined;
122
- resourceInputs["tags"] = state ? state.tags : undefined;
123
- resourceInputs["tagsAll"] = state ? state.tagsAll : undefined;
124
- resourceInputs["targetFailovers"] = state ? state.targetFailovers : undefined;
125
- resourceInputs["targetType"] = state ? state.targetType : undefined;
126
- resourceInputs["vpcId"] = state ? state.vpcId : undefined;
127
- }
128
- else {
129
- const args = argsOrState;
130
- resourceInputs["connectionTermination"] = args ? args.connectionTermination : undefined;
131
- resourceInputs["deregistrationDelay"] = args ? args.deregistrationDelay : undefined;
132
- resourceInputs["healthCheck"] = args ? args.healthCheck : undefined;
133
- resourceInputs["ipAddressType"] = args ? args.ipAddressType : undefined;
134
- resourceInputs["lambdaMultiValueHeadersEnabled"] = args ? args.lambdaMultiValueHeadersEnabled : undefined;
135
- resourceInputs["loadBalancingAlgorithmType"] = args ? args.loadBalancingAlgorithmType : undefined;
136
- resourceInputs["loadBalancingCrossZoneEnabled"] = args ? args.loadBalancingCrossZoneEnabled : undefined;
137
- resourceInputs["name"] = args ? args.name : undefined;
138
- resourceInputs["namePrefix"] = args ? args.namePrefix : undefined;
139
- resourceInputs["port"] = args ? args.port : undefined;
140
- resourceInputs["preserveClientIp"] = args ? args.preserveClientIp : undefined;
141
- resourceInputs["protocol"] = args ? args.protocol : undefined;
142
- resourceInputs["protocolVersion"] = args ? args.protocolVersion : undefined;
143
- resourceInputs["proxyProtocolV2"] = args ? args.proxyProtocolV2 : undefined;
144
- resourceInputs["slowStart"] = args ? args.slowStart : undefined;
145
- resourceInputs["stickiness"] = args ? args.stickiness : undefined;
146
- resourceInputs["tags"] = args ? args.tags : undefined;
147
- resourceInputs["targetFailovers"] = args ? args.targetFailovers : undefined;
148
- resourceInputs["targetType"] = args ? args.targetType : undefined;
149
- resourceInputs["vpcId"] = args ? args.vpcId : undefined;
150
- resourceInputs["arn"] = undefined /*out*/;
151
- resourceInputs["arnSuffix"] = undefined /*out*/;
152
- resourceInputs["tagsAll"] = undefined /*out*/;
153
- }
154
- opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
155
- super(TargetGroup.__pulumiType, name, resourceInputs, opts);
156
- }
157
- }
158
- exports.TargetGroup = TargetGroup;
159
- /** @internal */
160
- TargetGroup.__pulumiType = 'aws:applicationloadbalancing/targetGroup:TargetGroup';
161
- //# sourceMappingURL=targetGroup.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"targetGroup.js","sourceRoot":"","sources":["../../applicationloadbalancing/targetGroup.ts"],"names":[],"mappings":"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"}