pulumi-cloudamqp 3.21.0a1743571485__py3-none-any.whl → 3.22.0a1744182778__py3-none-any.whl

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.

Potentially problematic release.


This version of pulumi-cloudamqp might be problematic. Click here for more details.

Files changed (49) hide show
  1. pulumi_cloudamqp/__init__.py +10 -0
  2. pulumi_cloudamqp/_inputs.py +92 -72
  3. pulumi_cloudamqp/account_action.py +39 -31
  4. pulumi_cloudamqp/alarm.py +229 -168
  5. pulumi_cloudamqp/config/__init__.py +1 -0
  6. pulumi_cloudamqp/config/__init__.pyi +1 -0
  7. pulumi_cloudamqp/config/vars.py +1 -0
  8. pulumi_cloudamqp/custom_domain.py +81 -38
  9. pulumi_cloudamqp/extra_disk_size.py +172 -155
  10. pulumi_cloudamqp/get_account.py +10 -3
  11. pulumi_cloudamqp/get_account_vpcs.py +15 -41
  12. pulumi_cloudamqp/get_alarm.py +74 -67
  13. pulumi_cloudamqp/get_credentials.py +19 -26
  14. pulumi_cloudamqp/get_instance.py +75 -25
  15. pulumi_cloudamqp/get_nodes.py +10 -56
  16. pulumi_cloudamqp/get_notification.py +39 -41
  17. pulumi_cloudamqp/get_plugins.py +28 -54
  18. pulumi_cloudamqp/get_plugins_community.py +29 -52
  19. pulumi_cloudamqp/get_upgradable_versions.py +19 -24
  20. pulumi_cloudamqp/get_vpc_gcp_info.py +44 -138
  21. pulumi_cloudamqp/get_vpc_info.py +34 -127
  22. pulumi_cloudamqp/instance.py +557 -333
  23. pulumi_cloudamqp/integration_aws_eventbridge.py +182 -117
  24. pulumi_cloudamqp/integration_log.py +488 -402
  25. pulumi_cloudamqp/integration_metric.py +345 -296
  26. pulumi_cloudamqp/maintenance_window.py +516 -0
  27. pulumi_cloudamqp/node_actions.py +82 -59
  28. pulumi_cloudamqp/notification.py +174 -92
  29. pulumi_cloudamqp/outputs.py +216 -125
  30. pulumi_cloudamqp/plugin.py +170 -105
  31. pulumi_cloudamqp/plugin_community.py +168 -107
  32. pulumi_cloudamqp/privatelink_aws.py +140 -347
  33. pulumi_cloudamqp/privatelink_azure.py +142 -345
  34. pulumi_cloudamqp/provider.py +22 -21
  35. pulumi_cloudamqp/pulumi-plugin.json +1 -1
  36. pulumi_cloudamqp/rabbit_configuration.py +334 -210
  37. pulumi_cloudamqp/security_firewall.py +111 -57
  38. pulumi_cloudamqp/upgrade_lavinmq.py +29 -102
  39. pulumi_cloudamqp/upgrade_rabbitmq.py +53 -299
  40. pulumi_cloudamqp/vpc.py +112 -79
  41. pulumi_cloudamqp/vpc_connect.py +219 -606
  42. pulumi_cloudamqp/vpc_gcp_peering.py +227 -591
  43. pulumi_cloudamqp/vpc_peering.py +120 -105
  44. pulumi_cloudamqp/webhook.py +143 -103
  45. {pulumi_cloudamqp-3.21.0a1743571485.dist-info → pulumi_cloudamqp-3.22.0a1744182778.dist-info}/METADATA +1 -1
  46. pulumi_cloudamqp-3.22.0a1744182778.dist-info/RECORD +50 -0
  47. pulumi_cloudamqp-3.21.0a1743571485.dist-info/RECORD +0 -49
  48. {pulumi_cloudamqp-3.21.0a1743571485.dist-info → pulumi_cloudamqp-3.22.0a1744182778.dist-info}/WHEEL +0 -0
  49. {pulumi_cloudamqp-3.21.0a1743571485.dist-info → pulumi_cloudamqp-3.22.0a1744182778.dist-info}/top_level.txt +0 -0
@@ -2,6 +2,7 @@
2
2
  # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
+ import builtins
5
6
  import copy
6
7
  import warnings
7
8
  import sys
@@ -19,18 +20,22 @@ __all__ = ['PrivatelinkAwsArgs', 'PrivatelinkAws']
19
20
  @pulumi.input_type
20
21
  class PrivatelinkAwsArgs:
21
22
  def __init__(__self__, *,
22
- allowed_principals: pulumi.Input[Sequence[pulumi.Input[str]]],
23
- instance_id: pulumi.Input[int],
24
- sleep: Optional[pulumi.Input[int]] = None,
25
- timeout: Optional[pulumi.Input[int]] = None):
23
+ allowed_principals: pulumi.Input[Sequence[pulumi.Input[builtins.str]]],
24
+ instance_id: pulumi.Input[builtins.int],
25
+ sleep: Optional[pulumi.Input[builtins.int]] = None,
26
+ timeout: Optional[pulumi.Input[builtins.int]] = None):
26
27
  """
27
28
  The set of arguments for constructing a PrivatelinkAws resource.
28
- :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_principals: Allowed principals to access the endpoint service.
29
- :param pulumi.Input[int] instance_id: The CloudAMQP instance identifier.
30
- :param pulumi.Input[int] sleep: Configurable sleep time (seconds) when enable PrivateLink.
31
- Default set to 10 seconds. *Available from v1.29.0*
32
- :param pulumi.Input[int] timeout: Configurable timeout time (seconds) when enable PrivateLink.
33
- Default set to 1800 seconds. *Available from v1.29.0*
29
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] allowed_principals: Allowed principals to access the endpoint service.
30
+ :param pulumi.Input[builtins.int] instance_id: The CloudAMQP instance identifier.
31
+ :param pulumi.Input[builtins.int] sleep: Configurable sleep time (seconds) when enable PrivateLink.
32
+ Default set to 10 seconds.
33
+
34
+ ***Note:*** Available from [v1.29.0]
35
+ :param pulumi.Input[builtins.int] timeout: Configurable timeout time (seconds) when enable PrivateLink.
36
+ Default set to 1800 seconds.
37
+
38
+ ***Note:*** Available from [v1.29.0]
34
39
 
35
40
  Allowed principals format: <br>
36
41
  `arn:aws:iam::aws-account-id:root` <br>
@@ -46,47 +51,51 @@ class PrivatelinkAwsArgs:
46
51
 
47
52
  @property
48
53
  @pulumi.getter(name="allowedPrincipals")
49
- def allowed_principals(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
54
+ def allowed_principals(self) -> pulumi.Input[Sequence[pulumi.Input[builtins.str]]]:
50
55
  """
51
56
  Allowed principals to access the endpoint service.
52
57
  """
53
58
  return pulumi.get(self, "allowed_principals")
54
59
 
55
60
  @allowed_principals.setter
56
- def allowed_principals(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
61
+ def allowed_principals(self, value: pulumi.Input[Sequence[pulumi.Input[builtins.str]]]):
57
62
  pulumi.set(self, "allowed_principals", value)
58
63
 
59
64
  @property
60
65
  @pulumi.getter(name="instanceId")
61
- def instance_id(self) -> pulumi.Input[int]:
66
+ def instance_id(self) -> pulumi.Input[builtins.int]:
62
67
  """
63
68
  The CloudAMQP instance identifier.
64
69
  """
65
70
  return pulumi.get(self, "instance_id")
66
71
 
67
72
  @instance_id.setter
68
- def instance_id(self, value: pulumi.Input[int]):
73
+ def instance_id(self, value: pulumi.Input[builtins.int]):
69
74
  pulumi.set(self, "instance_id", value)
70
75
 
71
76
  @property
72
77
  @pulumi.getter
73
- def sleep(self) -> Optional[pulumi.Input[int]]:
78
+ def sleep(self) -> Optional[pulumi.Input[builtins.int]]:
74
79
  """
75
80
  Configurable sleep time (seconds) when enable PrivateLink.
76
- Default set to 10 seconds. *Available from v1.29.0*
81
+ Default set to 10 seconds.
82
+
83
+ ***Note:*** Available from [v1.29.0]
77
84
  """
78
85
  return pulumi.get(self, "sleep")
79
86
 
80
87
  @sleep.setter
81
- def sleep(self, value: Optional[pulumi.Input[int]]):
88
+ def sleep(self, value: Optional[pulumi.Input[builtins.int]]):
82
89
  pulumi.set(self, "sleep", value)
83
90
 
84
91
  @property
85
92
  @pulumi.getter
86
- def timeout(self) -> Optional[pulumi.Input[int]]:
93
+ def timeout(self) -> Optional[pulumi.Input[builtins.int]]:
87
94
  """
88
95
  Configurable timeout time (seconds) when enable PrivateLink.
89
- Default set to 1800 seconds. *Available from v1.29.0*
96
+ Default set to 1800 seconds.
97
+
98
+ ***Note:*** Available from [v1.29.0]
90
99
 
91
100
  Allowed principals format: <br>
92
101
  `arn:aws:iam::aws-account-id:root` <br>
@@ -96,31 +105,35 @@ class PrivatelinkAwsArgs:
96
105
  return pulumi.get(self, "timeout")
97
106
 
98
107
  @timeout.setter
99
- def timeout(self, value: Optional[pulumi.Input[int]]):
108
+ def timeout(self, value: Optional[pulumi.Input[builtins.int]]):
100
109
  pulumi.set(self, "timeout", value)
101
110
 
102
111
 
103
112
  @pulumi.input_type
104
113
  class _PrivatelinkAwsState:
105
114
  def __init__(__self__, *,
106
- active_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
107
- allowed_principals: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
108
- instance_id: Optional[pulumi.Input[int]] = None,
109
- service_name: Optional[pulumi.Input[str]] = None,
110
- sleep: Optional[pulumi.Input[int]] = None,
111
- status: Optional[pulumi.Input[str]] = None,
112
- timeout: Optional[pulumi.Input[int]] = None):
115
+ active_zones: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
116
+ allowed_principals: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
117
+ instance_id: Optional[pulumi.Input[builtins.int]] = None,
118
+ service_name: Optional[pulumi.Input[builtins.str]] = None,
119
+ sleep: Optional[pulumi.Input[builtins.int]] = None,
120
+ status: Optional[pulumi.Input[builtins.str]] = None,
121
+ timeout: Optional[pulumi.Input[builtins.int]] = None):
113
122
  """
114
123
  Input properties used for looking up and filtering PrivatelinkAws resources.
115
- :param pulumi.Input[Sequence[pulumi.Input[str]]] active_zones: Covering availability zones used when creating an Endpoint from other VPC.
116
- :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_principals: Allowed principals to access the endpoint service.
117
- :param pulumi.Input[int] instance_id: The CloudAMQP instance identifier.
118
- :param pulumi.Input[str] service_name: Service name of the PrivateLink used when creating the endpoint from other VPC.
119
- :param pulumi.Input[int] sleep: Configurable sleep time (seconds) when enable PrivateLink.
120
- Default set to 10 seconds. *Available from v1.29.0*
121
- :param pulumi.Input[str] status: PrivateLink status [enable, pending, disable]
122
- :param pulumi.Input[int] timeout: Configurable timeout time (seconds) when enable PrivateLink.
123
- Default set to 1800 seconds. *Available from v1.29.0*
124
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] active_zones: Covering availability zones used when creating an Endpoint from other VPC.
125
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] allowed_principals: Allowed principals to access the endpoint service.
126
+ :param pulumi.Input[builtins.int] instance_id: The CloudAMQP instance identifier.
127
+ :param pulumi.Input[builtins.str] service_name: Service name of the PrivateLink used when creating the endpoint from other VPC.
128
+ :param pulumi.Input[builtins.int] sleep: Configurable sleep time (seconds) when enable PrivateLink.
129
+ Default set to 10 seconds.
130
+
131
+ ***Note:*** Available from [v1.29.0]
132
+ :param pulumi.Input[builtins.str] status: PrivateLink status [enable, pending, disable]
133
+ :param pulumi.Input[builtins.int] timeout: Configurable timeout time (seconds) when enable PrivateLink.
134
+ Default set to 1800 seconds.
135
+
136
+ ***Note:*** Available from [v1.29.0]
124
137
 
125
138
  Allowed principals format: <br>
126
139
  `arn:aws:iam::aws-account-id:root` <br>
@@ -144,83 +157,87 @@ class _PrivatelinkAwsState:
144
157
 
145
158
  @property
146
159
  @pulumi.getter(name="activeZones")
147
- def active_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
160
+ def active_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
148
161
  """
149
162
  Covering availability zones used when creating an Endpoint from other VPC.
150
163
  """
151
164
  return pulumi.get(self, "active_zones")
152
165
 
153
166
  @active_zones.setter
154
- def active_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
167
+ def active_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
155
168
  pulumi.set(self, "active_zones", value)
156
169
 
157
170
  @property
158
171
  @pulumi.getter(name="allowedPrincipals")
159
- def allowed_principals(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
172
+ def allowed_principals(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
160
173
  """
161
174
  Allowed principals to access the endpoint service.
162
175
  """
163
176
  return pulumi.get(self, "allowed_principals")
164
177
 
165
178
  @allowed_principals.setter
166
- def allowed_principals(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
179
+ def allowed_principals(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
167
180
  pulumi.set(self, "allowed_principals", value)
168
181
 
169
182
  @property
170
183
  @pulumi.getter(name="instanceId")
171
- def instance_id(self) -> Optional[pulumi.Input[int]]:
184
+ def instance_id(self) -> Optional[pulumi.Input[builtins.int]]:
172
185
  """
173
186
  The CloudAMQP instance identifier.
174
187
  """
175
188
  return pulumi.get(self, "instance_id")
176
189
 
177
190
  @instance_id.setter
178
- def instance_id(self, value: Optional[pulumi.Input[int]]):
191
+ def instance_id(self, value: Optional[pulumi.Input[builtins.int]]):
179
192
  pulumi.set(self, "instance_id", value)
180
193
 
181
194
  @property
182
195
  @pulumi.getter(name="serviceName")
183
- def service_name(self) -> Optional[pulumi.Input[str]]:
196
+ def service_name(self) -> Optional[pulumi.Input[builtins.str]]:
184
197
  """
185
198
  Service name of the PrivateLink used when creating the endpoint from other VPC.
186
199
  """
187
200
  return pulumi.get(self, "service_name")
188
201
 
189
202
  @service_name.setter
190
- def service_name(self, value: Optional[pulumi.Input[str]]):
203
+ def service_name(self, value: Optional[pulumi.Input[builtins.str]]):
191
204
  pulumi.set(self, "service_name", value)
192
205
 
193
206
  @property
194
207
  @pulumi.getter
195
- def sleep(self) -> Optional[pulumi.Input[int]]:
208
+ def sleep(self) -> Optional[pulumi.Input[builtins.int]]:
196
209
  """
197
210
  Configurable sleep time (seconds) when enable PrivateLink.
198
- Default set to 10 seconds. *Available from v1.29.0*
211
+ Default set to 10 seconds.
212
+
213
+ ***Note:*** Available from [v1.29.0]
199
214
  """
200
215
  return pulumi.get(self, "sleep")
201
216
 
202
217
  @sleep.setter
203
- def sleep(self, value: Optional[pulumi.Input[int]]):
218
+ def sleep(self, value: Optional[pulumi.Input[builtins.int]]):
204
219
  pulumi.set(self, "sleep", value)
205
220
 
206
221
  @property
207
222
  @pulumi.getter
208
- def status(self) -> Optional[pulumi.Input[str]]:
223
+ def status(self) -> Optional[pulumi.Input[builtins.str]]:
209
224
  """
210
225
  PrivateLink status [enable, pending, disable]
211
226
  """
212
227
  return pulumi.get(self, "status")
213
228
 
214
229
  @status.setter
215
- def status(self, value: Optional[pulumi.Input[str]]):
230
+ def status(self, value: Optional[pulumi.Input[builtins.str]]):
216
231
  pulumi.set(self, "status", value)
217
232
 
218
233
  @property
219
234
  @pulumi.getter
220
- def timeout(self) -> Optional[pulumi.Input[int]]:
235
+ def timeout(self) -> Optional[pulumi.Input[builtins.int]]:
221
236
  """
222
237
  Configurable timeout time (seconds) when enable PrivateLink.
223
- Default set to 1800 seconds. *Available from v1.29.0*
238
+ Default set to 1800 seconds.
239
+
240
+ ***Note:*** Available from [v1.29.0]
224
241
 
225
242
  Allowed principals format: <br>
226
243
  `arn:aws:iam::aws-account-id:root` <br>
@@ -230,7 +247,7 @@ class _PrivatelinkAwsState:
230
247
  return pulumi.get(self, "timeout")
231
248
 
232
249
  @timeout.setter
233
- def timeout(self, value: Optional[pulumi.Input[int]]):
250
+ def timeout(self, value: Optional[pulumi.Input[builtins.int]]):
234
251
  pulumi.set(self, "timeout", value)
235
252
 
236
253
 
@@ -239,162 +256,48 @@ class PrivatelinkAws(pulumi.CustomResource):
239
256
  def __init__(__self__,
240
257
  resource_name: str,
241
258
  opts: Optional[pulumi.ResourceOptions] = None,
242
- allowed_principals: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
243
- instance_id: Optional[pulumi.Input[int]] = None,
244
- sleep: Optional[pulumi.Input[int]] = None,
245
- timeout: Optional[pulumi.Input[int]] = None,
259
+ allowed_principals: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
260
+ instance_id: Optional[pulumi.Input[builtins.int]] = None,
261
+ sleep: Optional[pulumi.Input[builtins.int]] = None,
262
+ timeout: Optional[pulumi.Input[builtins.int]] = None,
246
263
  __props__=None):
247
264
  """
248
- Enable PrivateLink for a CloudAMQP instance hosted in AWS. If no existing VPC available when enable
249
- PrivateLink, a new VPC will be created with subnet `10.52.72.0/24`.
250
-
251
- > **Note:** Enabling PrivateLink will automatically add firewall rules for the peered subnet.
252
- <details>
253
- <summary>
254
- <i>Default PrivateLink firewall rule</i>
255
- </summary>
256
-
257
- ## Example Usage
258
-
259
- <details>
260
- <summary>
261
- <b>
262
- <i>CloudAMQP instance without existing VPC</i>
263
- </b>
264
- </summary>
265
-
266
- ```python
267
- import pulumi
268
- import pulumi_cloudamqp as cloudamqp
269
-
270
- instance = cloudamqp.Instance("instance",
271
- name="Instance 01",
272
- plan="bunny-1",
273
- region="amazon-web-services::us-west-1",
274
- tags=[])
275
- privatelink = cloudamqp.PrivatelinkAws("privatelink",
276
- instance_id=instance.id,
277
- allowed_principals=["arn:aws:iam::aws-account-id:user/user-name"])
278
- ```
279
-
280
- </details>
281
-
282
- <details>
283
- <summary>
284
- <b>
285
- <i>CloudAMQP instance in an existing VPC</i>
286
- </b>
287
- </summary>
288
-
289
- ```python
290
- import pulumi
291
- import pulumi_cloudamqp as cloudamqp
292
-
293
- vpc = cloudamqp.Vpc("vpc",
294
- name="Standalone VPC",
295
- region="amazon-web-services::us-west-1",
296
- subnet="10.56.72.0/24",
297
- tags=[])
298
- instance = cloudamqp.Instance("instance",
299
- name="Instance 01",
300
- plan="bunny-1",
301
- region="amazon-web-services::us-west-1",
302
- tags=[],
303
- vpc_id=vpc.id,
304
- keep_associated_vpc=True)
305
- privatelink = cloudamqp.PrivatelinkAws("privatelink",
306
- instance_id=instance.id,
307
- allowed_principals=["arn:aws:iam::aws-account-id:user/user-name"])
308
- ```
265
+ ## Import
309
266
 
310
- </details>
311
-
312
- ### With Additional Firewall Rules
313
-
314
- <details>
315
- <summary>
316
- <b>
317
- <i>CloudAMQP instance in an existing VPC with managed firewall rules</i>
318
- </b>
319
- </summary>
320
-
321
- ```python
322
- import pulumi
323
- import pulumi_cloudamqp as cloudamqp
324
-
325
- vpc = cloudamqp.Vpc("vpc",
326
- name="Standalone VPC",
327
- region="amazon-web-services::us-west-1",
328
- subnet="10.56.72.0/24",
329
- tags=[])
330
- instance = cloudamqp.Instance("instance",
331
- name="Instance 01",
332
- plan="bunny-1",
333
- region="amazon-web-services::us-west-1",
334
- tags=[],
335
- vpc_id=vpc.id,
336
- keep_associated_vpc=True)
337
- privatelink = cloudamqp.PrivatelinkAws("privatelink",
338
- instance_id=instance.id,
339
- allowed_principals=["arn:aws:iam::aws-account-id:user/user-name"])
340
- firewall_settings = cloudamqp.SecurityFirewall("firewall_settings",
341
- instance_id=instance.id,
342
- rules=[
343
- {
344
- "description": "Custom PrivateLink setup",
345
- "ip": vpc.subnet,
346
- "ports": [],
347
- "services": [
348
- "AMQP",
349
- "AMQPS",
350
- "HTTPS",
351
- "STREAM",
352
- "STREAM_SSL",
353
- ],
354
- },
355
- {
356
- "description": "MGMT interface",
357
- "ip": "0.0.0.0/0",
358
- "ports": [],
359
- "services": ["HTTPS"],
360
- },
361
- ],
362
- opts = pulumi.ResourceOptions(depends_on=[privatelink]))
363
- ```
267
+ `cloudamqp_privatelink_aws` can be imported using CloudAMQP instance identifier. To retrieve the
364
268
 
365
- </details>
269
+ identifier, use [CloudAMQP API list intances].
366
270
 
367
- ## Depedency
271
+ From Terraform v1.5.0, the `import` block can be used to import this resource:
368
272
 
369
- This resource depends on CloudAMQP instance identifier, `cloudamqp_instance.instance.id`.
273
+ hcl
370
274
 
371
- ## Create PrivateLink with additional firewall rules
275
+ import {
372
276
 
373
- To create a PrivateLink configuration with additional firewall rules, it's required to chain the SecurityFirewall
374
- resource to avoid parallel conflicting resource calls. You can do this by making the firewall
375
- resource depend on the PrivateLink resource, `cloudamqp_privatelink_aws.privatelink`.
277
+ to = cloudamqp_privatelink_aws.privatelink
376
278
 
377
- Furthermore, since all firewall rules are overwritten, the otherwise automatically added rules for
378
- the PrivateLink also needs to be added.
279
+ id = cloudamqp_instance.instance.id
379
280
 
380
- ## Import
281
+ }
381
282
 
382
- `cloudamqp_privatelink_aws` can be imported using CloudAMQP internal identifier.
283
+ Or use Terraform CLI:
383
284
 
384
285
  ```sh
385
286
  $ pulumi import cloudamqp:index/privatelinkAws:PrivatelinkAws privatelink <id>`
386
287
  ```
387
288
 
388
- The resource uses the same identifier as the CloudAMQP instance. To retrieve the identifier for an instance, either use [CloudAMQP customer API](https://docs.cloudamqp.com/#list-instances) or use the data source [`cloudamqp_account`](./data-sources/account.md).
389
-
390
289
  :param str resource_name: The name of the resource.
391
290
  :param pulumi.ResourceOptions opts: Options for the resource.
392
- :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_principals: Allowed principals to access the endpoint service.
393
- :param pulumi.Input[int] instance_id: The CloudAMQP instance identifier.
394
- :param pulumi.Input[int] sleep: Configurable sleep time (seconds) when enable PrivateLink.
395
- Default set to 10 seconds. *Available from v1.29.0*
396
- :param pulumi.Input[int] timeout: Configurable timeout time (seconds) when enable PrivateLink.
397
- Default set to 1800 seconds. *Available from v1.29.0*
291
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] allowed_principals: Allowed principals to access the endpoint service.
292
+ :param pulumi.Input[builtins.int] instance_id: The CloudAMQP instance identifier.
293
+ :param pulumi.Input[builtins.int] sleep: Configurable sleep time (seconds) when enable PrivateLink.
294
+ Default set to 10 seconds.
295
+
296
+ ***Note:*** Available from [v1.29.0]
297
+ :param pulumi.Input[builtins.int] timeout: Configurable timeout time (seconds) when enable PrivateLink.
298
+ Default set to 1800 seconds.
299
+
300
+ ***Note:*** Available from [v1.29.0]
398
301
 
399
302
  Allowed principals format: <br>
400
303
  `arn:aws:iam::aws-account-id:root` <br>
@@ -408,148 +311,30 @@ class PrivatelinkAws(pulumi.CustomResource):
408
311
  args: PrivatelinkAwsArgs,
409
312
  opts: Optional[pulumi.ResourceOptions] = None):
410
313
  """
411
- Enable PrivateLink for a CloudAMQP instance hosted in AWS. If no existing VPC available when enable
412
- PrivateLink, a new VPC will be created with subnet `10.52.72.0/24`.
413
-
414
- > **Note:** Enabling PrivateLink will automatically add firewall rules for the peered subnet.
415
- <details>
416
- <summary>
417
- <i>Default PrivateLink firewall rule</i>
418
- </summary>
419
-
420
- ## Example Usage
421
-
422
- <details>
423
- <summary>
424
- <b>
425
- <i>CloudAMQP instance without existing VPC</i>
426
- </b>
427
- </summary>
428
-
429
- ```python
430
- import pulumi
431
- import pulumi_cloudamqp as cloudamqp
432
-
433
- instance = cloudamqp.Instance("instance",
434
- name="Instance 01",
435
- plan="bunny-1",
436
- region="amazon-web-services::us-west-1",
437
- tags=[])
438
- privatelink = cloudamqp.PrivatelinkAws("privatelink",
439
- instance_id=instance.id,
440
- allowed_principals=["arn:aws:iam::aws-account-id:user/user-name"])
441
- ```
442
-
443
- </details>
444
-
445
- <details>
446
- <summary>
447
- <b>
448
- <i>CloudAMQP instance in an existing VPC</i>
449
- </b>
450
- </summary>
451
-
452
- ```python
453
- import pulumi
454
- import pulumi_cloudamqp as cloudamqp
455
-
456
- vpc = cloudamqp.Vpc("vpc",
457
- name="Standalone VPC",
458
- region="amazon-web-services::us-west-1",
459
- subnet="10.56.72.0/24",
460
- tags=[])
461
- instance = cloudamqp.Instance("instance",
462
- name="Instance 01",
463
- plan="bunny-1",
464
- region="amazon-web-services::us-west-1",
465
- tags=[],
466
- vpc_id=vpc.id,
467
- keep_associated_vpc=True)
468
- privatelink = cloudamqp.PrivatelinkAws("privatelink",
469
- instance_id=instance.id,
470
- allowed_principals=["arn:aws:iam::aws-account-id:user/user-name"])
471
- ```
314
+ ## Import
472
315
 
473
- </details>
474
-
475
- ### With Additional Firewall Rules
476
-
477
- <details>
478
- <summary>
479
- <b>
480
- <i>CloudAMQP instance in an existing VPC with managed firewall rules</i>
481
- </b>
482
- </summary>
483
-
484
- ```python
485
- import pulumi
486
- import pulumi_cloudamqp as cloudamqp
487
-
488
- vpc = cloudamqp.Vpc("vpc",
489
- name="Standalone VPC",
490
- region="amazon-web-services::us-west-1",
491
- subnet="10.56.72.0/24",
492
- tags=[])
493
- instance = cloudamqp.Instance("instance",
494
- name="Instance 01",
495
- plan="bunny-1",
496
- region="amazon-web-services::us-west-1",
497
- tags=[],
498
- vpc_id=vpc.id,
499
- keep_associated_vpc=True)
500
- privatelink = cloudamqp.PrivatelinkAws("privatelink",
501
- instance_id=instance.id,
502
- allowed_principals=["arn:aws:iam::aws-account-id:user/user-name"])
503
- firewall_settings = cloudamqp.SecurityFirewall("firewall_settings",
504
- instance_id=instance.id,
505
- rules=[
506
- {
507
- "description": "Custom PrivateLink setup",
508
- "ip": vpc.subnet,
509
- "ports": [],
510
- "services": [
511
- "AMQP",
512
- "AMQPS",
513
- "HTTPS",
514
- "STREAM",
515
- "STREAM_SSL",
516
- ],
517
- },
518
- {
519
- "description": "MGMT interface",
520
- "ip": "0.0.0.0/0",
521
- "ports": [],
522
- "services": ["HTTPS"],
523
- },
524
- ],
525
- opts = pulumi.ResourceOptions(depends_on=[privatelink]))
526
- ```
316
+ `cloudamqp_privatelink_aws` can be imported using CloudAMQP instance identifier. To retrieve the
527
317
 
528
- </details>
318
+ identifier, use [CloudAMQP API list intances].
529
319
 
530
- ## Depedency
320
+ From Terraform v1.5.0, the `import` block can be used to import this resource:
531
321
 
532
- This resource depends on CloudAMQP instance identifier, `cloudamqp_instance.instance.id`.
322
+ hcl
533
323
 
534
- ## Create PrivateLink with additional firewall rules
324
+ import {
535
325
 
536
- To create a PrivateLink configuration with additional firewall rules, it's required to chain the SecurityFirewall
537
- resource to avoid parallel conflicting resource calls. You can do this by making the firewall
538
- resource depend on the PrivateLink resource, `cloudamqp_privatelink_aws.privatelink`.
326
+ to = cloudamqp_privatelink_aws.privatelink
539
327
 
540
- Furthermore, since all firewall rules are overwritten, the otherwise automatically added rules for
541
- the PrivateLink also needs to be added.
328
+ id = cloudamqp_instance.instance.id
542
329
 
543
- ## Import
330
+ }
544
331
 
545
- `cloudamqp_privatelink_aws` can be imported using CloudAMQP internal identifier.
332
+ Or use Terraform CLI:
546
333
 
547
334
  ```sh
548
335
  $ pulumi import cloudamqp:index/privatelinkAws:PrivatelinkAws privatelink <id>`
549
336
  ```
550
337
 
551
- The resource uses the same identifier as the CloudAMQP instance. To retrieve the identifier for an instance, either use [CloudAMQP customer API](https://docs.cloudamqp.com/#list-instances) or use the data source [`cloudamqp_account`](./data-sources/account.md).
552
-
553
338
  :param str resource_name: The name of the resource.
554
339
  :param PrivatelinkAwsArgs args: The arguments to use to populate this resource's properties.
555
340
  :param pulumi.ResourceOptions opts: Options for the resource.
@@ -565,10 +350,10 @@ class PrivatelinkAws(pulumi.CustomResource):
565
350
  def _internal_init(__self__,
566
351
  resource_name: str,
567
352
  opts: Optional[pulumi.ResourceOptions] = None,
568
- allowed_principals: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
569
- instance_id: Optional[pulumi.Input[int]] = None,
570
- sleep: Optional[pulumi.Input[int]] = None,
571
- timeout: Optional[pulumi.Input[int]] = None,
353
+ allowed_principals: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
354
+ instance_id: Optional[pulumi.Input[builtins.int]] = None,
355
+ sleep: Optional[pulumi.Input[builtins.int]] = None,
356
+ timeout: Optional[pulumi.Input[builtins.int]] = None,
572
357
  __props__=None):
573
358
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
574
359
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -599,13 +384,13 @@ class PrivatelinkAws(pulumi.CustomResource):
599
384
  def get(resource_name: str,
600
385
  id: pulumi.Input[str],
601
386
  opts: Optional[pulumi.ResourceOptions] = None,
602
- active_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
603
- allowed_principals: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
604
- instance_id: Optional[pulumi.Input[int]] = None,
605
- service_name: Optional[pulumi.Input[str]] = None,
606
- sleep: Optional[pulumi.Input[int]] = None,
607
- status: Optional[pulumi.Input[str]] = None,
608
- timeout: Optional[pulumi.Input[int]] = None) -> 'PrivatelinkAws':
387
+ active_zones: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
388
+ allowed_principals: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
389
+ instance_id: Optional[pulumi.Input[builtins.int]] = None,
390
+ service_name: Optional[pulumi.Input[builtins.str]] = None,
391
+ sleep: Optional[pulumi.Input[builtins.int]] = None,
392
+ status: Optional[pulumi.Input[builtins.str]] = None,
393
+ timeout: Optional[pulumi.Input[builtins.int]] = None) -> 'PrivatelinkAws':
609
394
  """
610
395
  Get an existing PrivatelinkAws resource's state with the given name, id, and optional extra
611
396
  properties used to qualify the lookup.
@@ -613,15 +398,19 @@ class PrivatelinkAws(pulumi.CustomResource):
613
398
  :param str resource_name: The unique name of the resulting resource.
614
399
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
615
400
  :param pulumi.ResourceOptions opts: Options for the resource.
616
- :param pulumi.Input[Sequence[pulumi.Input[str]]] active_zones: Covering availability zones used when creating an Endpoint from other VPC.
617
- :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_principals: Allowed principals to access the endpoint service.
618
- :param pulumi.Input[int] instance_id: The CloudAMQP instance identifier.
619
- :param pulumi.Input[str] service_name: Service name of the PrivateLink used when creating the endpoint from other VPC.
620
- :param pulumi.Input[int] sleep: Configurable sleep time (seconds) when enable PrivateLink.
621
- Default set to 10 seconds. *Available from v1.29.0*
622
- :param pulumi.Input[str] status: PrivateLink status [enable, pending, disable]
623
- :param pulumi.Input[int] timeout: Configurable timeout time (seconds) when enable PrivateLink.
624
- Default set to 1800 seconds. *Available from v1.29.0*
401
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] active_zones: Covering availability zones used when creating an Endpoint from other VPC.
402
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] allowed_principals: Allowed principals to access the endpoint service.
403
+ :param pulumi.Input[builtins.int] instance_id: The CloudAMQP instance identifier.
404
+ :param pulumi.Input[builtins.str] service_name: Service name of the PrivateLink used when creating the endpoint from other VPC.
405
+ :param pulumi.Input[builtins.int] sleep: Configurable sleep time (seconds) when enable PrivateLink.
406
+ Default set to 10 seconds.
407
+
408
+ ***Note:*** Available from [v1.29.0]
409
+ :param pulumi.Input[builtins.str] status: PrivateLink status [enable, pending, disable]
410
+ :param pulumi.Input[builtins.int] timeout: Configurable timeout time (seconds) when enable PrivateLink.
411
+ Default set to 1800 seconds.
412
+
413
+ ***Note:*** Available from [v1.29.0]
625
414
 
626
415
  Allowed principals format: <br>
627
416
  `arn:aws:iam::aws-account-id:root` <br>
@@ -643,7 +432,7 @@ class PrivatelinkAws(pulumi.CustomResource):
643
432
 
644
433
  @property
645
434
  @pulumi.getter(name="activeZones")
646
- def active_zones(self) -> pulumi.Output[Sequence[str]]:
435
+ def active_zones(self) -> pulumi.Output[Sequence[builtins.str]]:
647
436
  """
648
437
  Covering availability zones used when creating an Endpoint from other VPC.
649
438
  """
@@ -651,7 +440,7 @@ class PrivatelinkAws(pulumi.CustomResource):
651
440
 
652
441
  @property
653
442
  @pulumi.getter(name="allowedPrincipals")
654
- def allowed_principals(self) -> pulumi.Output[Sequence[str]]:
443
+ def allowed_principals(self) -> pulumi.Output[Sequence[builtins.str]]:
655
444
  """
656
445
  Allowed principals to access the endpoint service.
657
446
  """
@@ -659,7 +448,7 @@ class PrivatelinkAws(pulumi.CustomResource):
659
448
 
660
449
  @property
661
450
  @pulumi.getter(name="instanceId")
662
- def instance_id(self) -> pulumi.Output[int]:
451
+ def instance_id(self) -> pulumi.Output[builtins.int]:
663
452
  """
664
453
  The CloudAMQP instance identifier.
665
454
  """
@@ -667,7 +456,7 @@ class PrivatelinkAws(pulumi.CustomResource):
667
456
 
668
457
  @property
669
458
  @pulumi.getter(name="serviceName")
670
- def service_name(self) -> pulumi.Output[str]:
459
+ def service_name(self) -> pulumi.Output[builtins.str]:
671
460
  """
672
461
  Service name of the PrivateLink used when creating the endpoint from other VPC.
673
462
  """
@@ -675,16 +464,18 @@ class PrivatelinkAws(pulumi.CustomResource):
675
464
 
676
465
  @property
677
466
  @pulumi.getter
678
- def sleep(self) -> pulumi.Output[Optional[int]]:
467
+ def sleep(self) -> pulumi.Output[Optional[builtins.int]]:
679
468
  """
680
469
  Configurable sleep time (seconds) when enable PrivateLink.
681
- Default set to 10 seconds. *Available from v1.29.0*
470
+ Default set to 10 seconds.
471
+
472
+ ***Note:*** Available from [v1.29.0]
682
473
  """
683
474
  return pulumi.get(self, "sleep")
684
475
 
685
476
  @property
686
477
  @pulumi.getter
687
- def status(self) -> pulumi.Output[str]:
478
+ def status(self) -> pulumi.Output[builtins.str]:
688
479
  """
689
480
  PrivateLink status [enable, pending, disable]
690
481
  """
@@ -692,10 +483,12 @@ class PrivatelinkAws(pulumi.CustomResource):
692
483
 
693
484
  @property
694
485
  @pulumi.getter
695
- def timeout(self) -> pulumi.Output[Optional[int]]:
486
+ def timeout(self) -> pulumi.Output[Optional[builtins.int]]:
696
487
  """
697
488
  Configurable timeout time (seconds) when enable PrivateLink.
698
- Default set to 1800 seconds. *Available from v1.29.0*
489
+ Default set to 1800 seconds.
490
+
491
+ ***Note:*** Available from [v1.29.0]
699
492
 
700
493
  Allowed principals format: <br>
701
494
  `arn:aws:iam::aws-account-id:root` <br>