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