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,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,7 +243,7 @@ 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
 
@@ -235,163 +252,51 @@ class PrivatelinkAzure(pulumi.CustomResource):
235
252
  def __init__(__self__,
236
253
  resource_name: str,
237
254
  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,
255
+ approved_subscriptions: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
256
+ instance_id: Optional[pulumi.Input[builtins.int]] = None,
257
+ sleep: Optional[pulumi.Input[builtins.int]] = None,
258
+ timeout: Optional[pulumi.Input[builtins.int]] = None,
242
259
  __props__=None):
243
260
  """
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
- ```
261
+ ## Import
305
262
 
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
- ```
263
+ `cloudamqp_privatelink_azure` can be imported using CloudAMQP instance identifier. To retrieve the
360
264
 
361
- </details>
265
+ identifier, use [CloudAMQP API list intances].
362
266
 
363
- ## Depedency
267
+ From Terraform v1.5.0, the `import` block can be used to import this resource:
364
268
 
365
- This resource depends on CloudAMQP instance identifier, `cloudamqp_instance.instance.id`.
269
+ hcl
366
270
 
367
- ## Create PrivateLink with additional firewall rules
271
+ import {
368
272
 
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`.
273
+ to = cloudamqp_privatelink_azure.privatelink
372
274
 
373
- Furthermore, since all firewall rules are overwritten, the otherwise automatically added rules for
374
- the PrivateLink also needs to be added.
275
+ id = cloudamqp_instance.instance.id
375
276
 
376
- ## Import
277
+ }
377
278
 
378
- `cloudamqp_privatelink_aws` can be imported using CloudAMQP internal identifier.
279
+ Or use Terraform CLI:
379
280
 
380
281
  ```sh
381
282
  $ pulumi import cloudamqp:index/privatelinkAzure:PrivatelinkAzure privatelink <id>`
382
283
  ```
383
284
 
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).
285
+ `cloudamqp_privatelink_aws` can be imported using CloudAMQP instance identifier.
385
286
 
386
287
  :param str resource_name: The name of the resource.
387
288
  :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.
289
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] approved_subscriptions: Approved subscriptions to access the endpoint service.
389
290
  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*
291
+ :param pulumi.Input[builtins.int] instance_id: The CloudAMQP instance identifier.
292
+ :param pulumi.Input[builtins.int] sleep: Configurable sleep time (seconds) when enable PrivateLink.
293
+ Default set to 10 seconds.
294
+
295
+ ***Note:*** Available from [v1.29.0]
296
+ :param pulumi.Input[builtins.int] timeout: Configurable timeout time (seconds) when enable PrivateLink.
297
+ Default set to 1800 seconds.
298
+
299
+ ***Note:*** Available from [v1.29.0]
395
300
 
396
301
  Approved subscriptions format (GUID): <br>
397
302
  `XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX`
@@ -403,147 +308,31 @@ class PrivatelinkAzure(pulumi.CustomResource):
403
308
  args: PrivatelinkAzureArgs,
404
309
  opts: Optional[pulumi.ResourceOptions] = None):
405
310
  """
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
- ```
311
+ ## Import
467
312
 
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
- ```
313
+ `cloudamqp_privatelink_azure` can be imported using CloudAMQP instance identifier. To retrieve the
522
314
 
523
- </details>
315
+ identifier, use [CloudAMQP API list intances].
524
316
 
525
- ## Depedency
317
+ From Terraform v1.5.0, the `import` block can be used to import this resource:
526
318
 
527
- This resource depends on CloudAMQP instance identifier, `cloudamqp_instance.instance.id`.
319
+ hcl
528
320
 
529
- ## Create PrivateLink with additional firewall rules
321
+ import {
530
322
 
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`.
323
+ to = cloudamqp_privatelink_azure.privatelink
534
324
 
535
- Furthermore, since all firewall rules are overwritten, the otherwise automatically added rules for
536
- the PrivateLink also needs to be added.
325
+ id = cloudamqp_instance.instance.id
537
326
 
538
- ## Import
327
+ }
539
328
 
540
- `cloudamqp_privatelink_aws` can be imported using CloudAMQP internal identifier.
329
+ Or use Terraform CLI:
541
330
 
542
331
  ```sh
543
332
  $ pulumi import cloudamqp:index/privatelinkAzure:PrivatelinkAzure privatelink <id>`
544
333
  ```
545
334
 
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).
335
+ `cloudamqp_privatelink_aws` can be imported using CloudAMQP instance identifier.
547
336
 
548
337
  :param str resource_name: The name of the resource.
549
338
  :param PrivatelinkAzureArgs args: The arguments to use to populate this resource's properties.
@@ -560,10 +349,10 @@ class PrivatelinkAzure(pulumi.CustomResource):
560
349
  def _internal_init(__self__,
561
350
  resource_name: str,
562
351
  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,
352
+ approved_subscriptions: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
353
+ instance_id: Optional[pulumi.Input[builtins.int]] = None,
354
+ sleep: Optional[pulumi.Input[builtins.int]] = None,
355
+ timeout: Optional[pulumi.Input[builtins.int]] = None,
567
356
  __props__=None):
568
357
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
569
358
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -594,13 +383,13 @@ class PrivatelinkAzure(pulumi.CustomResource):
594
383
  def get(resource_name: str,
595
384
  id: pulumi.Input[str],
596
385
  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':
386
+ approved_subscriptions: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
387
+ instance_id: Optional[pulumi.Input[builtins.int]] = None,
388
+ server_name: Optional[pulumi.Input[builtins.str]] = None,
389
+ service_name: Optional[pulumi.Input[builtins.str]] = None,
390
+ sleep: Optional[pulumi.Input[builtins.int]] = None,
391
+ status: Optional[pulumi.Input[builtins.str]] = None,
392
+ timeout: Optional[pulumi.Input[builtins.int]] = None) -> 'PrivatelinkAzure':
604
393
  """
605
394
  Get an existing PrivatelinkAzure resource's state with the given name, id, and optional extra
606
395
  properties used to qualify the lookup.
@@ -608,16 +397,20 @@ class PrivatelinkAzure(pulumi.CustomResource):
608
397
  :param str resource_name: The unique name of the resulting resource.
609
398
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
610
399
  :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.
400
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] approved_subscriptions: Approved subscriptions to access the endpoint service.
612
401
  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*
402
+ :param pulumi.Input[builtins.int] instance_id: The CloudAMQP instance identifier.
403
+ :param pulumi.Input[builtins.str] server_name: Name of the server having the PrivateLink enabled.
404
+ :param pulumi.Input[builtins.str] service_name: Service name (alias) of the PrivateLink, needed when creating the endpoint.
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]
621
414
 
622
415
  Approved subscriptions format (GUID): <br>
623
416
  `XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX`
@@ -637,7 +430,7 @@ class PrivatelinkAzure(pulumi.CustomResource):
637
430
 
638
431
  @property
639
432
  @pulumi.getter(name="approvedSubscriptions")
640
- def approved_subscriptions(self) -> pulumi.Output[Sequence[str]]:
433
+ def approved_subscriptions(self) -> pulumi.Output[Sequence[builtins.str]]:
641
434
  """
642
435
  Approved subscriptions to access the endpoint service.
643
436
  See format below.
@@ -646,7 +439,7 @@ class PrivatelinkAzure(pulumi.CustomResource):
646
439
 
647
440
  @property
648
441
  @pulumi.getter(name="instanceId")
649
- def instance_id(self) -> pulumi.Output[int]:
442
+ def instance_id(self) -> pulumi.Output[builtins.int]:
650
443
  """
651
444
  The CloudAMQP instance identifier.
652
445
  """
@@ -654,7 +447,7 @@ class PrivatelinkAzure(pulumi.CustomResource):
654
447
 
655
448
  @property
656
449
  @pulumi.getter(name="serverName")
657
- def server_name(self) -> pulumi.Output[str]:
450
+ def server_name(self) -> pulumi.Output[builtins.str]:
658
451
  """
659
452
  Name of the server having the PrivateLink enabled.
660
453
  """
@@ -662,7 +455,7 @@ class PrivatelinkAzure(pulumi.CustomResource):
662
455
 
663
456
  @property
664
457
  @pulumi.getter(name="serviceName")
665
- def service_name(self) -> pulumi.Output[str]:
458
+ def service_name(self) -> pulumi.Output[builtins.str]:
666
459
  """
667
460
  Service name (alias) of the PrivateLink, needed when creating the endpoint.
668
461
  """
@@ -670,16 +463,18 @@ class PrivatelinkAzure(pulumi.CustomResource):
670
463
 
671
464
  @property
672
465
  @pulumi.getter
673
- def sleep(self) -> pulumi.Output[Optional[int]]:
466
+ def sleep(self) -> pulumi.Output[Optional[builtins.int]]:
674
467
  """
675
468
  Configurable sleep time (seconds) when enable PrivateLink.
676
- Default set to 10 seconds. *Available from v1.29.0*
469
+ Default set to 10 seconds.
470
+
471
+ ***Note:*** Available from [v1.29.0]
677
472
  """
678
473
  return pulumi.get(self, "sleep")
679
474
 
680
475
  @property
681
476
  @pulumi.getter
682
- def status(self) -> pulumi.Output[str]:
477
+ def status(self) -> pulumi.Output[builtins.str]:
683
478
  """
684
479
  PrivateLink status [enable, pending, disable]
685
480
  """
@@ -687,10 +482,12 @@ class PrivatelinkAzure(pulumi.CustomResource):
687
482
 
688
483
  @property
689
484
  @pulumi.getter
690
- def timeout(self) -> pulumi.Output[Optional[int]]:
485
+ def timeout(self) -> pulumi.Output[Optional[builtins.int]]:
691
486
  """
692
487
  Configurable timeout time (seconds) when enable PrivateLink.
693
- Default set to 1800 seconds. *Available from v1.29.0*
488
+ Default set to 1800 seconds.
489
+
490
+ ***Note:*** Available from [v1.29.0]
694
491
 
695
492
  Approved subscriptions format (GUID): <br>
696
493
  `XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX`