pulumi-cloudamqp 3.21.0a1743571485__py3-none-any.whl → 3.21.0a1744082841__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 (45) hide show
  1. pulumi_cloudamqp/__init__.py +9 -0
  2. pulumi_cloudamqp/_inputs.py +28 -9
  3. pulumi_cloudamqp/account_action.py +14 -7
  4. pulumi_cloudamqp/alarm.py +90 -30
  5. pulumi_cloudamqp/custom_domain.py +52 -10
  6. pulumi_cloudamqp/extra_disk_size.py +117 -101
  7. pulumi_cloudamqp/get_account.py +8 -2
  8. pulumi_cloudamqp/get_account_vpcs.py +13 -40
  9. pulumi_cloudamqp/get_alarm.py +50 -44
  10. pulumi_cloudamqp/get_credentials.py +10 -18
  11. pulumi_cloudamqp/get_instance.py +51 -2
  12. pulumi_cloudamqp/get_nodes.py +3 -50
  13. pulumi_cloudamqp/get_notification.py +17 -20
  14. pulumi_cloudamqp/get_plugins.py +15 -42
  15. pulumi_cloudamqp/get_plugins_community.py +16 -40
  16. pulumi_cloudamqp/get_upgradable_versions.py +10 -16
  17. pulumi_cloudamqp/get_vpc_gcp_info.py +23 -118
  18. pulumi_cloudamqp/get_vpc_info.py +18 -112
  19. pulumi_cloudamqp/instance.py +400 -177
  20. pulumi_cloudamqp/integration_aws_eventbridge.py +90 -26
  21. pulumi_cloudamqp/integration_log.py +135 -50
  22. pulumi_cloudamqp/integration_metric.py +50 -2
  23. pulumi_cloudamqp/maintenance_window.py +515 -0
  24. pulumi_cloudamqp/node_actions.py +32 -10
  25. pulumi_cloudamqp/notification.py +103 -22
  26. pulumi_cloudamqp/outputs.py +118 -28
  27. pulumi_cloudamqp/plugin.py +89 -25
  28. pulumi_cloudamqp/plugin_community.py +87 -27
  29. pulumi_cloudamqp/privatelink_aws.py +62 -270
  30. pulumi_cloudamqp/privatelink_azure.py +64 -268
  31. pulumi_cloudamqp/pulumi-plugin.json +1 -1
  32. pulumi_cloudamqp/rabbit_configuration.py +209 -86
  33. pulumi_cloudamqp/security_firewall.py +76 -23
  34. pulumi_cloudamqp/upgrade_lavinmq.py +0 -74
  35. pulumi_cloudamqp/upgrade_rabbitmq.py +14 -261
  36. pulumi_cloudamqp/vpc.py +48 -16
  37. pulumi_cloudamqp/vpc_connect.py +111 -499
  38. pulumi_cloudamqp/vpc_gcp_peering.py +141 -506
  39. pulumi_cloudamqp/vpc_peering.py +50 -36
  40. pulumi_cloudamqp/webhook.py +48 -9
  41. {pulumi_cloudamqp-3.21.0a1743571485.dist-info → pulumi_cloudamqp-3.21.0a1744082841.dist-info}/METADATA +1 -1
  42. pulumi_cloudamqp-3.21.0a1744082841.dist-info/RECORD +50 -0
  43. pulumi_cloudamqp-3.21.0a1743571485.dist-info/RECORD +0 -49
  44. {pulumi_cloudamqp-3.21.0a1743571485.dist-info → pulumi_cloudamqp-3.21.0a1744082841.dist-info}/WHEEL +0 -0
  45. {pulumi_cloudamqp-3.21.0a1743571485.dist-info → pulumi_cloudamqp-3.21.0a1744082841.dist-info}/top_level.txt +0 -0
@@ -27,15 +27,26 @@ class VpcGcpPeeringArgs:
27
27
  wait_on_peering_status: Optional[pulumi.Input[bool]] = None):
28
28
  """
29
29
  The set of arguments for constructing a VpcGcpPeering resource.
30
- :param pulumi.Input[str] peer_network_uri: Network URI of the VPC network to which you will peer with. See examples above for the format.
31
- :param pulumi.Input[int] instance_id: The CloudAMQP instance identifier. *Deprecated from v1.16.0*
32
- :param pulumi.Input[int] sleep: Configurable sleep time (seconds) between retries when requesting or reading
33
- peering. Default set to 10 seconds. *Available from v1.29.0*
34
- :param pulumi.Input[int] timeout: Configurable timeout time (seconds) before retries times out. Default set
35
- to 1800 seconds. *Available from v1.29.0*
36
- :param pulumi.Input[str] vpc_id: The managed VPC identifier. *Available from v1.16.0*
30
+ :param pulumi.Input[str] peer_network_uri: Network URI of the VPC network to which you will peer with.
31
+ See examples above for the format.
32
+ :param pulumi.Input[int] instance_id: The CloudAMQP instance identifier.
33
+
34
+ ***Deprecated:*** from [v1.16.0], will be removed in next major version (v2.0)
35
+ :param pulumi.Input[int] sleep: Configurable sleep time (seconds) between retries when
36
+ requesting or reading peering. Default set to 10 seconds.
37
+
38
+ ***Note:*** Available from [v1.29.0]
39
+ :param pulumi.Input[int] timeout: Configurable timeout time (seconds) before retries times
40
+ out. Default set to 1800 seconds.
41
+
42
+ ***Note:*** Available from [v1.29.0]
43
+ :param pulumi.Input[str] vpc_id: The managed VPC identifier.
44
+
45
+ ***Note:*** Available from [v1.16.0], will be required in next major version (v2.0)
37
46
  :param pulumi.Input[bool] wait_on_peering_status: Makes the resource wait until the peering is connected.
38
- Default set to false. *Available from v1.28.0*
47
+ Default set to false.
48
+
49
+ ***Note:*** Available from [v1.28.0]
39
50
  """
40
51
  pulumi.set(__self__, "peer_network_uri", peer_network_uri)
41
52
  if instance_id is not None:
@@ -53,7 +64,8 @@ class VpcGcpPeeringArgs:
53
64
  @pulumi.getter(name="peerNetworkUri")
54
65
  def peer_network_uri(self) -> pulumi.Input[str]:
55
66
  """
56
- Network URI of the VPC network to which you will peer with. See examples above for the format.
67
+ Network URI of the VPC network to which you will peer with.
68
+ See examples above for the format.
57
69
  """
58
70
  return pulumi.get(self, "peer_network_uri")
59
71
 
@@ -65,7 +77,9 @@ class VpcGcpPeeringArgs:
65
77
  @pulumi.getter(name="instanceId")
66
78
  def instance_id(self) -> Optional[pulumi.Input[int]]:
67
79
  """
68
- The CloudAMQP instance identifier. *Deprecated from v1.16.0*
80
+ The CloudAMQP instance identifier.
81
+
82
+ ***Deprecated:*** from [v1.16.0], will be removed in next major version (v2.0)
69
83
  """
70
84
  return pulumi.get(self, "instance_id")
71
85
 
@@ -77,8 +91,10 @@ class VpcGcpPeeringArgs:
77
91
  @pulumi.getter
78
92
  def sleep(self) -> Optional[pulumi.Input[int]]:
79
93
  """
80
- Configurable sleep time (seconds) between retries when requesting or reading
81
- peering. Default set to 10 seconds. *Available from v1.29.0*
94
+ Configurable sleep time (seconds) between retries when
95
+ requesting or reading peering. Default set to 10 seconds.
96
+
97
+ ***Note:*** Available from [v1.29.0]
82
98
  """
83
99
  return pulumi.get(self, "sleep")
84
100
 
@@ -90,8 +106,10 @@ class VpcGcpPeeringArgs:
90
106
  @pulumi.getter
91
107
  def timeout(self) -> Optional[pulumi.Input[int]]:
92
108
  """
93
- Configurable timeout time (seconds) before retries times out. Default set
94
- to 1800 seconds. *Available from v1.29.0*
109
+ Configurable timeout time (seconds) before retries times
110
+ out. Default set to 1800 seconds.
111
+
112
+ ***Note:*** Available from [v1.29.0]
95
113
  """
96
114
  return pulumi.get(self, "timeout")
97
115
 
@@ -103,7 +121,9 @@ class VpcGcpPeeringArgs:
103
121
  @pulumi.getter(name="vpcId")
104
122
  def vpc_id(self) -> Optional[pulumi.Input[str]]:
105
123
  """
106
- The managed VPC identifier. *Available from v1.16.0*
124
+ The managed VPC identifier.
125
+
126
+ ***Note:*** Available from [v1.16.0], will be required in next major version (v2.0)
107
127
  """
108
128
  return pulumi.get(self, "vpc_id")
109
129
 
@@ -116,7 +136,9 @@ class VpcGcpPeeringArgs:
116
136
  def wait_on_peering_status(self) -> Optional[pulumi.Input[bool]]:
117
137
  """
118
138
  Makes the resource wait until the peering is connected.
119
- Default set to false. *Available from v1.28.0*
139
+ Default set to false.
140
+
141
+ ***Note:*** Available from [v1.28.0]
120
142
  """
121
143
  return pulumi.get(self, "wait_on_peering_status")
122
144
 
@@ -140,17 +162,28 @@ class _VpcGcpPeeringState:
140
162
  """
141
163
  Input properties used for looking up and filtering VpcGcpPeering resources.
142
164
  :param pulumi.Input[bool] auto_create_routes: VPC peering auto created routes
143
- :param pulumi.Input[int] instance_id: The CloudAMQP instance identifier. *Deprecated from v1.16.0*
144
- :param pulumi.Input[str] peer_network_uri: Network URI of the VPC network to which you will peer with. See examples above for the format.
145
- :param pulumi.Input[int] sleep: Configurable sleep time (seconds) between retries when requesting or reading
146
- peering. Default set to 10 seconds. *Available from v1.29.0*
165
+ :param pulumi.Input[int] instance_id: The CloudAMQP instance identifier.
166
+
167
+ ***Deprecated:*** from [v1.16.0], will be removed in next major version (v2.0)
168
+ :param pulumi.Input[str] peer_network_uri: Network URI of the VPC network to which you will peer with.
169
+ See examples above for the format.
170
+ :param pulumi.Input[int] sleep: Configurable sleep time (seconds) between retries when
171
+ requesting or reading peering. Default set to 10 seconds.
172
+
173
+ ***Note:*** Available from [v1.29.0]
147
174
  :param pulumi.Input[str] state: VPC peering state
148
175
  :param pulumi.Input[str] state_details: VPC peering state details
149
- :param pulumi.Input[int] timeout: Configurable timeout time (seconds) before retries times out. Default set
150
- to 1800 seconds. *Available from v1.29.0*
151
- :param pulumi.Input[str] vpc_id: The managed VPC identifier. *Available from v1.16.0*
176
+ :param pulumi.Input[int] timeout: Configurable timeout time (seconds) before retries times
177
+ out. Default set to 1800 seconds.
178
+
179
+ ***Note:*** Available from [v1.29.0]
180
+ :param pulumi.Input[str] vpc_id: The managed VPC identifier.
181
+
182
+ ***Note:*** Available from [v1.16.0], will be required in next major version (v2.0)
152
183
  :param pulumi.Input[bool] wait_on_peering_status: Makes the resource wait until the peering is connected.
153
- Default set to false. *Available from v1.28.0*
184
+ Default set to false.
185
+
186
+ ***Note:*** Available from [v1.28.0]
154
187
  """
155
188
  if auto_create_routes is not None:
156
189
  pulumi.set(__self__, "auto_create_routes", auto_create_routes)
@@ -187,7 +220,9 @@ class _VpcGcpPeeringState:
187
220
  @pulumi.getter(name="instanceId")
188
221
  def instance_id(self) -> Optional[pulumi.Input[int]]:
189
222
  """
190
- The CloudAMQP instance identifier. *Deprecated from v1.16.0*
223
+ The CloudAMQP instance identifier.
224
+
225
+ ***Deprecated:*** from [v1.16.0], will be removed in next major version (v2.0)
191
226
  """
192
227
  return pulumi.get(self, "instance_id")
193
228
 
@@ -199,7 +234,8 @@ class _VpcGcpPeeringState:
199
234
  @pulumi.getter(name="peerNetworkUri")
200
235
  def peer_network_uri(self) -> Optional[pulumi.Input[str]]:
201
236
  """
202
- Network URI of the VPC network to which you will peer with. See examples above for the format.
237
+ Network URI of the VPC network to which you will peer with.
238
+ See examples above for the format.
203
239
  """
204
240
  return pulumi.get(self, "peer_network_uri")
205
241
 
@@ -211,8 +247,10 @@ class _VpcGcpPeeringState:
211
247
  @pulumi.getter
212
248
  def sleep(self) -> Optional[pulumi.Input[int]]:
213
249
  """
214
- Configurable sleep time (seconds) between retries when requesting or reading
215
- peering. Default set to 10 seconds. *Available from v1.29.0*
250
+ Configurable sleep time (seconds) between retries when
251
+ requesting or reading peering. Default set to 10 seconds.
252
+
253
+ ***Note:*** Available from [v1.29.0]
216
254
  """
217
255
  return pulumi.get(self, "sleep")
218
256
 
@@ -248,8 +286,10 @@ class _VpcGcpPeeringState:
248
286
  @pulumi.getter
249
287
  def timeout(self) -> Optional[pulumi.Input[int]]:
250
288
  """
251
- Configurable timeout time (seconds) before retries times out. Default set
252
- to 1800 seconds. *Available from v1.29.0*
289
+ Configurable timeout time (seconds) before retries times
290
+ out. Default set to 1800 seconds.
291
+
292
+ ***Note:*** Available from [v1.29.0]
253
293
  """
254
294
  return pulumi.get(self, "timeout")
255
295
 
@@ -261,7 +301,9 @@ class _VpcGcpPeeringState:
261
301
  @pulumi.getter(name="vpcId")
262
302
  def vpc_id(self) -> Optional[pulumi.Input[str]]:
263
303
  """
264
- The managed VPC identifier. *Available from v1.16.0*
304
+ The managed VPC identifier.
305
+
306
+ ***Note:*** Available from [v1.16.0], will be required in next major version (v2.0)
265
307
  """
266
308
  return pulumi.get(self, "vpc_id")
267
309
 
@@ -274,7 +316,9 @@ class _VpcGcpPeeringState:
274
316
  def wait_on_peering_status(self) -> Optional[pulumi.Input[bool]]:
275
317
  """
276
318
  Makes the resource wait until the peering is connected.
277
- Default set to false. *Available from v1.28.0*
319
+ Default set to false.
320
+
321
+ ***Note:*** Available from [v1.28.0]
278
322
  """
279
323
  return pulumi.get(self, "wait_on_peering_status")
280
324
 
@@ -296,250 +340,40 @@ class VpcGcpPeering(pulumi.CustomResource):
296
340
  wait_on_peering_status: Optional[pulumi.Input[bool]] = None,
297
341
  __props__=None):
298
342
  """
299
- This resouce creates a VPC peering configuration for the CloudAMQP instance. The configuration will
300
- connect to another VPC network hosted on Google Cloud Platform (GCP). See the
301
- [GCP documentation](https://cloud.google.com/vpc/docs/using-vpc-peering) for more information on how
302
- to create the VPC peering configuration.
303
-
304
- > **Note:** Creating a VPC peering will automatically add firewall rules for the peered subnet.
305
-
306
- <details>
307
- <summary>
308
- <i>Default VPC peering firewall rule</i>
309
- </summary>
310
-
311
- ## Example Usage
312
-
313
- <details>
314
- <summary>
315
- <b>
316
- <i>VPC peering before v1.16.0</i>
317
- </b>
318
- </summary>
319
-
320
- ```python
321
- import pulumi
322
- import pulumi_cloudamqp as cloudamqp
323
-
324
- # CloudAMQP instance
325
- instance = cloudamqp.Instance("instance",
326
- name="terraform-vpc-peering",
327
- plan="bunny-1",
328
- region="google-compute-engine::europe-north1",
329
- tags=["terraform"],
330
- vpc_subnet="10.40.72.0/24")
331
- # VPC information
332
- vpc_info = instance.id.apply(lambda id: cloudamqp.get_vpc_gcp_info_output(instance_id=id))
333
- # VPC peering configuration
334
- vpc_peering_request = cloudamqp.VpcGcpPeering("vpc_peering_request",
335
- instance_id=instance.id,
336
- peer_network_uri="https://www.googleapis.com/compute/v1/projects/<PROJECT-NAME>/global/networks/<VPC-NETWORK-NAME>")
337
- ```
338
-
339
- </details>
340
-
341
- <details>
342
- <summary>
343
- <b>
344
- <i>VPC peering from v1.16.0 (Managed VPC)</i>
345
- </b>
346
- </summary>
347
-
348
- ```python
349
- import pulumi
350
- import pulumi_cloudamqp as cloudamqp
351
-
352
- # Managed VPC resource
353
- vpc = cloudamqp.Vpc("vpc",
354
- name="<VPC name>",
355
- region="google-compute-engine::europe-north1",
356
- subnet="10.56.72.0/24",
357
- tags=[])
358
- # CloudAMQP instance
359
- instance = cloudamqp.Instance("instance",
360
- name="terraform-vpc-peering",
361
- plan="bunny-1",
362
- region="google-compute-engine::europe-north1",
363
- tags=["terraform"],
364
- vpc_id=vpc.id)
365
- # VPC information
366
- vpc_info = cloudamqp.get_vpc_gcp_info(vpc_id=vpc.info)
367
- # VPC peering configuration
368
- vpc_peering_request = cloudamqp.VpcGcpPeering("vpc_peering_request",
369
- vpc_id=vpc.id,
370
- peer_network_uri="https://www.googleapis.com/compute/v1/projects/<PROJECT-NAME>/global/networks/<VPC-NETWORK-NAME>")
371
- ```
372
-
373
- </details>
374
-
375
- <details>
376
- <summary>
377
- <b>
378
- <i>VPC peering from v1.28.0, wait_on_peering_status </i>
379
- </b>
380
- </summary>
381
-
382
- Default peering request, no need to set `wait_on_peering_status`. It's default set to false and will
383
- not wait on peering status. Create resource will be considered completed, regardless of the status of the state.
384
-
385
- ```python
386
- import pulumi
387
- import pulumi_cloudamqp as cloudamqp
388
-
389
- vpc_peering_request = cloudamqp.VpcGcpPeering("vpc_peering_request",
390
- vpc_id=vpc["id"],
391
- peer_network_uri="https://www.googleapis.com/compute/v1/projects/<PROJECT-NAME>/global/networks/<VPC-NETWORK-NAME>")
392
- ```
393
-
394
- Peering request and waiting for peering status of the state to change to ACTIVE before the create resource is consider complete.
395
- This is done once both side have done the peering.
396
-
397
- ```python
398
- import pulumi
399
- import pulumi_cloudamqp as cloudamqp
400
-
401
- vpc_peering_request = cloudamqp.VpcGcpPeering("vpc_peering_request",
402
- vpc_id=vpc["id"],
403
- wait_on_peering_status=True,
404
- peer_network_uri="https://www.googleapis.com/compute/v1/projects/<PROJECT-NAME>/global/networks/<VPC-NETWORK-NAME>")
405
- ```
406
-
407
- </details>
408
-
409
- ### With Additional Firewall Rules
410
-
411
- <details>
412
- <summary>
413
- <b>
414
- <i>VPC peering before v1.16.0</i>
415
- </b>
416
- </summary>
417
-
418
- ```python
419
- import pulumi
420
- import pulumi_cloudamqp as cloudamqp
421
-
422
- # VPC peering configuration
423
- vpc_peering_request = cloudamqp.VpcGcpPeering("vpc_peering_request",
424
- instance_id=instance["id"],
425
- peer_network_uri=peer_network_uri)
426
- # Firewall rules
427
- firewall_settings = cloudamqp.SecurityFirewall("firewall_settings",
428
- instance_id=instance["id"],
429
- rules=[
430
- {
431
- "ip": peer_subnet,
432
- "ports": [15672],
433
- "services": [
434
- "AMQP",
435
- "AMQPS",
436
- "STREAM",
437
- "STREAM_SSL",
438
- ],
439
- "description": "VPC peering for <NETWORK>",
440
- },
441
- {
442
- "ip": "192.168.0.0/24",
443
- "ports": [
444
- 4567,
445
- 4568,
446
- ],
447
- "services": [
448
- "AMQP",
449
- "AMQPS",
450
- "HTTPS",
451
- ],
452
- },
453
- ],
454
- opts = pulumi.ResourceOptions(depends_on=[vpc_peering_request]))
455
- ```
456
-
457
- </details>
458
-
459
- <details>
460
- <summary>
461
- <b>
462
- <i>VPC peering from v1.16.0 (Managed VPC)</i>
463
- </b>
464
- </summary>
465
-
466
- ```python
467
- import pulumi
468
- import pulumi_cloudamqp as cloudamqp
469
-
470
- # VPC peering configuration
471
- vpc_peering_request = cloudamqp.VpcGcpPeering("vpc_peering_request",
472
- vpc_id=vpc["id"],
473
- peer_network_uri=peer_network_uri)
474
- # Firewall rules
475
- firewall_settings = cloudamqp.SecurityFirewall("firewall_settings",
476
- instance_id=instance["id"],
477
- rules=[
478
- {
479
- "ip": peer_subnet,
480
- "ports": [15672],
481
- "services": [
482
- "AMQP",
483
- "AMQPS",
484
- "STREAM",
485
- "STREAM_SSL",
486
- ],
487
- "description": "VPC peering for <NETWORK>",
488
- },
489
- {
490
- "ip": "0.0.0.0/0",
491
- "ports": [],
492
- "services": ["HTTPS"],
493
- "description": "MGMT interface",
494
- },
495
- ],
496
- opts = pulumi.ResourceOptions(depends_on=[vpc_peering_request]))
497
- ```
498
-
499
- </details>
500
-
501
- ## Depedency
502
-
503
- *Before v1.16.0*
504
- This resource depends on CloudAMQP instance identifier, `cloudamqp_instance.instance.id`.
505
-
506
- *From v1.16.0*
507
- This resource depends on CloudAMQP managed VPC identifier, `cloudamqp_vpc.vpc.id` or instance
508
- identifier, `cloudamqp_instance.instance.id`.
509
-
510
- ## Create VPC Peering with additional firewall rules
511
-
512
- To create a VPC peering configuration with additional firewall rules, it's required to chain the
513
- SecurityFirewall
514
- resource to avoid parallel conflicting resource calls. This is done by adding dependency from the
515
- firewall resource to the VPC peering resource.
516
-
517
- Furthermore, since all firewall rules are overwritten, the otherwise automatically added rules for
518
- the VPC peering also needs to be added.
519
-
520
- See example below.
521
-
522
343
  ## Import
523
344
 
524
345
  ### Peering network URI
525
346
 
526
- This is required to be able to import the correct peering. Following the same format as the argument reference.
347
+ This is required to be able to import the correct peering. Following the same format as the argument
348
+
349
+ reference.
527
350
 
528
351
  hcl
529
352
 
530
- https://www.googleapis.com/compute/v1/projects/<PROJECT-NAME>/global/networks/<VPC-NETWORK-NAME>
353
+ https://www.googleapis.com/compute/v1/projects/PROJECT-NAME/global/networks/VPC-NETWORK-NAME
531
354
 
532
355
  :param str resource_name: The name of the resource.
533
356
  :param pulumi.ResourceOptions opts: Options for the resource.
534
- :param pulumi.Input[int] instance_id: The CloudAMQP instance identifier. *Deprecated from v1.16.0*
535
- :param pulumi.Input[str] peer_network_uri: Network URI of the VPC network to which you will peer with. See examples above for the format.
536
- :param pulumi.Input[int] sleep: Configurable sleep time (seconds) between retries when requesting or reading
537
- peering. Default set to 10 seconds. *Available from v1.29.0*
538
- :param pulumi.Input[int] timeout: Configurable timeout time (seconds) before retries times out. Default set
539
- to 1800 seconds. *Available from v1.29.0*
540
- :param pulumi.Input[str] vpc_id: The managed VPC identifier. *Available from v1.16.0*
357
+ :param pulumi.Input[int] instance_id: The CloudAMQP instance identifier.
358
+
359
+ ***Deprecated:*** from [v1.16.0], will be removed in next major version (v2.0)
360
+ :param pulumi.Input[str] peer_network_uri: Network URI of the VPC network to which you will peer with.
361
+ See examples above for the format.
362
+ :param pulumi.Input[int] sleep: Configurable sleep time (seconds) between retries when
363
+ requesting or reading peering. Default set to 10 seconds.
364
+
365
+ ***Note:*** Available from [v1.29.0]
366
+ :param pulumi.Input[int] timeout: Configurable timeout time (seconds) before retries times
367
+ out. Default set to 1800 seconds.
368
+
369
+ ***Note:*** Available from [v1.29.0]
370
+ :param pulumi.Input[str] vpc_id: The managed VPC identifier.
371
+
372
+ ***Note:*** Available from [v1.16.0], will be required in next major version (v2.0)
541
373
  :param pulumi.Input[bool] wait_on_peering_status: Makes the resource wait until the peering is connected.
542
- Default set to false. *Available from v1.28.0*
374
+ Default set to false.
375
+
376
+ ***Note:*** Available from [v1.28.0]
543
377
  """
544
378
  ...
545
379
  @overload
@@ -548,238 +382,17 @@ class VpcGcpPeering(pulumi.CustomResource):
548
382
  args: VpcGcpPeeringArgs,
549
383
  opts: Optional[pulumi.ResourceOptions] = None):
550
384
  """
551
- This resouce creates a VPC peering configuration for the CloudAMQP instance. The configuration will
552
- connect to another VPC network hosted on Google Cloud Platform (GCP). See the
553
- [GCP documentation](https://cloud.google.com/vpc/docs/using-vpc-peering) for more information on how
554
- to create the VPC peering configuration.
555
-
556
- > **Note:** Creating a VPC peering will automatically add firewall rules for the peered subnet.
557
-
558
- <details>
559
- <summary>
560
- <i>Default VPC peering firewall rule</i>
561
- </summary>
562
-
563
- ## Example Usage
564
-
565
- <details>
566
- <summary>
567
- <b>
568
- <i>VPC peering before v1.16.0</i>
569
- </b>
570
- </summary>
571
-
572
- ```python
573
- import pulumi
574
- import pulumi_cloudamqp as cloudamqp
575
-
576
- # CloudAMQP instance
577
- instance = cloudamqp.Instance("instance",
578
- name="terraform-vpc-peering",
579
- plan="bunny-1",
580
- region="google-compute-engine::europe-north1",
581
- tags=["terraform"],
582
- vpc_subnet="10.40.72.0/24")
583
- # VPC information
584
- vpc_info = instance.id.apply(lambda id: cloudamqp.get_vpc_gcp_info_output(instance_id=id))
585
- # VPC peering configuration
586
- vpc_peering_request = cloudamqp.VpcGcpPeering("vpc_peering_request",
587
- instance_id=instance.id,
588
- peer_network_uri="https://www.googleapis.com/compute/v1/projects/<PROJECT-NAME>/global/networks/<VPC-NETWORK-NAME>")
589
- ```
590
-
591
- </details>
592
-
593
- <details>
594
- <summary>
595
- <b>
596
- <i>VPC peering from v1.16.0 (Managed VPC)</i>
597
- </b>
598
- </summary>
599
-
600
- ```python
601
- import pulumi
602
- import pulumi_cloudamqp as cloudamqp
603
-
604
- # Managed VPC resource
605
- vpc = cloudamqp.Vpc("vpc",
606
- name="<VPC name>",
607
- region="google-compute-engine::europe-north1",
608
- subnet="10.56.72.0/24",
609
- tags=[])
610
- # CloudAMQP instance
611
- instance = cloudamqp.Instance("instance",
612
- name="terraform-vpc-peering",
613
- plan="bunny-1",
614
- region="google-compute-engine::europe-north1",
615
- tags=["terraform"],
616
- vpc_id=vpc.id)
617
- # VPC information
618
- vpc_info = cloudamqp.get_vpc_gcp_info(vpc_id=vpc.info)
619
- # VPC peering configuration
620
- vpc_peering_request = cloudamqp.VpcGcpPeering("vpc_peering_request",
621
- vpc_id=vpc.id,
622
- peer_network_uri="https://www.googleapis.com/compute/v1/projects/<PROJECT-NAME>/global/networks/<VPC-NETWORK-NAME>")
623
- ```
624
-
625
- </details>
626
-
627
- <details>
628
- <summary>
629
- <b>
630
- <i>VPC peering from v1.28.0, wait_on_peering_status </i>
631
- </b>
632
- </summary>
633
-
634
- Default peering request, no need to set `wait_on_peering_status`. It's default set to false and will
635
- not wait on peering status. Create resource will be considered completed, regardless of the status of the state.
636
-
637
- ```python
638
- import pulumi
639
- import pulumi_cloudamqp as cloudamqp
640
-
641
- vpc_peering_request = cloudamqp.VpcGcpPeering("vpc_peering_request",
642
- vpc_id=vpc["id"],
643
- peer_network_uri="https://www.googleapis.com/compute/v1/projects/<PROJECT-NAME>/global/networks/<VPC-NETWORK-NAME>")
644
- ```
645
-
646
- Peering request and waiting for peering status of the state to change to ACTIVE before the create resource is consider complete.
647
- This is done once both side have done the peering.
648
-
649
- ```python
650
- import pulumi
651
- import pulumi_cloudamqp as cloudamqp
652
-
653
- vpc_peering_request = cloudamqp.VpcGcpPeering("vpc_peering_request",
654
- vpc_id=vpc["id"],
655
- wait_on_peering_status=True,
656
- peer_network_uri="https://www.googleapis.com/compute/v1/projects/<PROJECT-NAME>/global/networks/<VPC-NETWORK-NAME>")
657
- ```
658
-
659
- </details>
660
-
661
- ### With Additional Firewall Rules
662
-
663
- <details>
664
- <summary>
665
- <b>
666
- <i>VPC peering before v1.16.0</i>
667
- </b>
668
- </summary>
669
-
670
- ```python
671
- import pulumi
672
- import pulumi_cloudamqp as cloudamqp
673
-
674
- # VPC peering configuration
675
- vpc_peering_request = cloudamqp.VpcGcpPeering("vpc_peering_request",
676
- instance_id=instance["id"],
677
- peer_network_uri=peer_network_uri)
678
- # Firewall rules
679
- firewall_settings = cloudamqp.SecurityFirewall("firewall_settings",
680
- instance_id=instance["id"],
681
- rules=[
682
- {
683
- "ip": peer_subnet,
684
- "ports": [15672],
685
- "services": [
686
- "AMQP",
687
- "AMQPS",
688
- "STREAM",
689
- "STREAM_SSL",
690
- ],
691
- "description": "VPC peering for <NETWORK>",
692
- },
693
- {
694
- "ip": "192.168.0.0/24",
695
- "ports": [
696
- 4567,
697
- 4568,
698
- ],
699
- "services": [
700
- "AMQP",
701
- "AMQPS",
702
- "HTTPS",
703
- ],
704
- },
705
- ],
706
- opts = pulumi.ResourceOptions(depends_on=[vpc_peering_request]))
707
- ```
708
-
709
- </details>
710
-
711
- <details>
712
- <summary>
713
- <b>
714
- <i>VPC peering from v1.16.0 (Managed VPC)</i>
715
- </b>
716
- </summary>
717
-
718
- ```python
719
- import pulumi
720
- import pulumi_cloudamqp as cloudamqp
721
-
722
- # VPC peering configuration
723
- vpc_peering_request = cloudamqp.VpcGcpPeering("vpc_peering_request",
724
- vpc_id=vpc["id"],
725
- peer_network_uri=peer_network_uri)
726
- # Firewall rules
727
- firewall_settings = cloudamqp.SecurityFirewall("firewall_settings",
728
- instance_id=instance["id"],
729
- rules=[
730
- {
731
- "ip": peer_subnet,
732
- "ports": [15672],
733
- "services": [
734
- "AMQP",
735
- "AMQPS",
736
- "STREAM",
737
- "STREAM_SSL",
738
- ],
739
- "description": "VPC peering for <NETWORK>",
740
- },
741
- {
742
- "ip": "0.0.0.0/0",
743
- "ports": [],
744
- "services": ["HTTPS"],
745
- "description": "MGMT interface",
746
- },
747
- ],
748
- opts = pulumi.ResourceOptions(depends_on=[vpc_peering_request]))
749
- ```
750
-
751
- </details>
752
-
753
- ## Depedency
754
-
755
- *Before v1.16.0*
756
- This resource depends on CloudAMQP instance identifier, `cloudamqp_instance.instance.id`.
757
-
758
- *From v1.16.0*
759
- This resource depends on CloudAMQP managed VPC identifier, `cloudamqp_vpc.vpc.id` or instance
760
- identifier, `cloudamqp_instance.instance.id`.
761
-
762
- ## Create VPC Peering with additional firewall rules
763
-
764
- To create a VPC peering configuration with additional firewall rules, it's required to chain the
765
- SecurityFirewall
766
- resource to avoid parallel conflicting resource calls. This is done by adding dependency from the
767
- firewall resource to the VPC peering resource.
768
-
769
- Furthermore, since all firewall rules are overwritten, the otherwise automatically added rules for
770
- the VPC peering also needs to be added.
771
-
772
- See example below.
773
-
774
385
  ## Import
775
386
 
776
387
  ### Peering network URI
777
388
 
778
- This is required to be able to import the correct peering. Following the same format as the argument reference.
389
+ This is required to be able to import the correct peering. Following the same format as the argument
390
+
391
+ reference.
779
392
 
780
393
  hcl
781
394
 
782
- https://www.googleapis.com/compute/v1/projects/<PROJECT-NAME>/global/networks/<VPC-NETWORK-NAME>
395
+ https://www.googleapis.com/compute/v1/projects/PROJECT-NAME/global/networks/VPC-NETWORK-NAME
783
396
 
784
397
  :param str resource_name: The name of the resource.
785
398
  :param VpcGcpPeeringArgs args: The arguments to use to populate this resource's properties.
@@ -849,17 +462,28 @@ class VpcGcpPeering(pulumi.CustomResource):
849
462
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
850
463
  :param pulumi.ResourceOptions opts: Options for the resource.
851
464
  :param pulumi.Input[bool] auto_create_routes: VPC peering auto created routes
852
- :param pulumi.Input[int] instance_id: The CloudAMQP instance identifier. *Deprecated from v1.16.0*
853
- :param pulumi.Input[str] peer_network_uri: Network URI of the VPC network to which you will peer with. See examples above for the format.
854
- :param pulumi.Input[int] sleep: Configurable sleep time (seconds) between retries when requesting or reading
855
- peering. Default set to 10 seconds. *Available from v1.29.0*
465
+ :param pulumi.Input[int] instance_id: The CloudAMQP instance identifier.
466
+
467
+ ***Deprecated:*** from [v1.16.0], will be removed in next major version (v2.0)
468
+ :param pulumi.Input[str] peer_network_uri: Network URI of the VPC network to which you will peer with.
469
+ See examples above for the format.
470
+ :param pulumi.Input[int] sleep: Configurable sleep time (seconds) between retries when
471
+ requesting or reading peering. Default set to 10 seconds.
472
+
473
+ ***Note:*** Available from [v1.29.0]
856
474
  :param pulumi.Input[str] state: VPC peering state
857
475
  :param pulumi.Input[str] state_details: VPC peering state details
858
- :param pulumi.Input[int] timeout: Configurable timeout time (seconds) before retries times out. Default set
859
- to 1800 seconds. *Available from v1.29.0*
860
- :param pulumi.Input[str] vpc_id: The managed VPC identifier. *Available from v1.16.0*
476
+ :param pulumi.Input[int] timeout: Configurable timeout time (seconds) before retries times
477
+ out. Default set to 1800 seconds.
478
+
479
+ ***Note:*** Available from [v1.29.0]
480
+ :param pulumi.Input[str] vpc_id: The managed VPC identifier.
481
+
482
+ ***Note:*** Available from [v1.16.0], will be required in next major version (v2.0)
861
483
  :param pulumi.Input[bool] wait_on_peering_status: Makes the resource wait until the peering is connected.
862
- Default set to false. *Available from v1.28.0*
484
+ Default set to false.
485
+
486
+ ***Note:*** Available from [v1.28.0]
863
487
  """
864
488
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
865
489
 
@@ -888,7 +512,9 @@ class VpcGcpPeering(pulumi.CustomResource):
888
512
  @pulumi.getter(name="instanceId")
889
513
  def instance_id(self) -> pulumi.Output[Optional[int]]:
890
514
  """
891
- The CloudAMQP instance identifier. *Deprecated from v1.16.0*
515
+ The CloudAMQP instance identifier.
516
+
517
+ ***Deprecated:*** from [v1.16.0], will be removed in next major version (v2.0)
892
518
  """
893
519
  return pulumi.get(self, "instance_id")
894
520
 
@@ -896,7 +522,8 @@ class VpcGcpPeering(pulumi.CustomResource):
896
522
  @pulumi.getter(name="peerNetworkUri")
897
523
  def peer_network_uri(self) -> pulumi.Output[str]:
898
524
  """
899
- Network URI of the VPC network to which you will peer with. See examples above for the format.
525
+ Network URI of the VPC network to which you will peer with.
526
+ See examples above for the format.
900
527
  """
901
528
  return pulumi.get(self, "peer_network_uri")
902
529
 
@@ -904,8 +531,10 @@ class VpcGcpPeering(pulumi.CustomResource):
904
531
  @pulumi.getter
905
532
  def sleep(self) -> pulumi.Output[Optional[int]]:
906
533
  """
907
- Configurable sleep time (seconds) between retries when requesting or reading
908
- peering. Default set to 10 seconds. *Available from v1.29.0*
534
+ Configurable sleep time (seconds) between retries when
535
+ requesting or reading peering. Default set to 10 seconds.
536
+
537
+ ***Note:*** Available from [v1.29.0]
909
538
  """
910
539
  return pulumi.get(self, "sleep")
911
540
 
@@ -929,8 +558,10 @@ class VpcGcpPeering(pulumi.CustomResource):
929
558
  @pulumi.getter
930
559
  def timeout(self) -> pulumi.Output[Optional[int]]:
931
560
  """
932
- Configurable timeout time (seconds) before retries times out. Default set
933
- to 1800 seconds. *Available from v1.29.0*
561
+ Configurable timeout time (seconds) before retries times
562
+ out. Default set to 1800 seconds.
563
+
564
+ ***Note:*** Available from [v1.29.0]
934
565
  """
935
566
  return pulumi.get(self, "timeout")
936
567
 
@@ -938,7 +569,9 @@ class VpcGcpPeering(pulumi.CustomResource):
938
569
  @pulumi.getter(name="vpcId")
939
570
  def vpc_id(self) -> pulumi.Output[Optional[str]]:
940
571
  """
941
- The managed VPC identifier. *Available from v1.16.0*
572
+ The managed VPC identifier.
573
+
574
+ ***Note:*** Available from [v1.16.0], will be required in next major version (v2.0)
942
575
  """
943
576
  return pulumi.get(self, "vpc_id")
944
577
 
@@ -947,7 +580,9 @@ class VpcGcpPeering(pulumi.CustomResource):
947
580
  def wait_on_peering_status(self) -> pulumi.Output[Optional[bool]]:
948
581
  """
949
582
  Makes the resource wait until the peering is connected.
950
- Default set to false. *Available from v1.28.0*
583
+ Default set to false.
584
+
585
+ ***Note:*** Available from [v1.28.0]
951
586
  """
952
587
  return pulumi.get(self, "wait_on_peering_status")
953
588