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
@@ -34,31 +34,42 @@ class InstanceArgs:
34
34
  vpc_subnet: Optional[pulumi.Input[str]] = None):
35
35
  """
36
36
  The set of arguments for constructing a Instance resource.
37
- :param pulumi.Input[str] plan: The subscription plan. See available plans
38
- :param pulumi.Input[str] region: The region to host the instance in. See instance regions
37
+ :param pulumi.Input[str] plan: The subscription plan. See available [plans].
38
+ :param pulumi.Input[str] region: The region to host the instance in. See available [regions].
39
39
 
40
- ***Note: Changing region will force the instance to be destroyed and a new created in the new region. All data will be lost and a new name assigned.***
41
- :param pulumi.Input[Sequence[pulumi.Input['InstanceCopySettingArgs']]] copy_settings: Copy settings from one CloudAMQP instance to a new. Consists of the block documented below.
40
+ ***Note:*** Changing region will force the instance to be destroyed and a new created in the new
41
+ region. All data will be lost and a new name assigned.
42
+ :param pulumi.Input[Sequence[pulumi.Input['InstanceCopySettingArgs']]] copy_settings: Copy settings from one CloudAMQP instance to a new. Consists of
43
+ the block documented below.
42
44
 
43
45
  ___
44
46
 
45
47
  The `copy_settings` block consists of:
46
- :param pulumi.Input[bool] keep_associated_vpc: Keep associated VPC when deleting instance, default set to false.
48
+ :param pulumi.Input[bool] keep_associated_vpc: Keep associated VPC when deleting instance. Default set to
49
+ false.
47
50
  :param pulumi.Input[str] name: Name of the CloudAMQP instance.
48
- :param pulumi.Input[bool] no_default_alarms: Set to true to discard creating default alarms when the instance is created. Can be left out, will then use default value = false.
49
- :param pulumi.Input[int] nodes: Number of nodes, 1, 3 or 5 depending on plan used. Only needed for legacy plans, will otherwise be computed.
51
+ :param pulumi.Input[bool] no_default_alarms: Set to true to not create default alarms
52
+ :param pulumi.Input[int] nodes: Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
53
+ legacy plans, will otherwise be computed.
50
54
 
51
- ***Deprecated: Legacy subscriptions plan can still change this to scale up or down the instance. New subscriptions plans use the plan to determine number of nodes. In order to change number of nodes the `plan` needs to be updated.***
52
- :param pulumi.Input[str] rmq_version: The Rabbit MQ version. Can be left out, will then be set to default value used by CloudAMQP API.
55
+ ***Deprecated:*** Legacy subscriptions plan can still change this to scale up or down the instance.
56
+ New subscriptions plans use the plan to determine number of nodes. In order to
57
+ change number of nodes the `plan` needs to be updated.
58
+ :param pulumi.Input[str] rmq_version: The Rabbit MQ version. Can be left out, will then be set to
59
+ default value used by CloudAMQP API.
53
60
 
54
- ***Note: There is not yet any support in the provider to change the RMQ version. Once it's set in the initial creation, it will remain.***
55
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: One or more tags for the CloudAMQP instance, makes it possible to categories multiple instances in console view. Default there is no tags assigned.
56
- :param pulumi.Input[int] vpc_id: The VPC ID. Use this to create your instance in an existing VPC. See available example.
57
- :param pulumi.Input[str] vpc_subnet: Creates a dedicated VPC subnet, shouldn't overlap with other VPC subnet, default subnet used 10.56.72.0/24.
61
+ ***Note:*** There is not yet any support in the provider to change the RMQ version. Once it's set
62
+ in the initial creation, it will remain.
63
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: One or more tags for the CloudAMQP instance, makes it possible to
64
+ categories multiple instances in console view. Default there is no tags assigned.
65
+ :param pulumi.Input[int] vpc_id: The VPC ID. Use this to create your instance in an existing
66
+ VPC. See available [example].
67
+ :param pulumi.Input[str] vpc_subnet: Creates a dedicated VPC subnet, shouldn't overlap with other
68
+ VPC subnet, default subnet used 10.56.72.0/24.
58
69
 
59
- ***Deprecated: Will be removed in next major version (v2.0)***
70
+ ***Deprecated:*** Will be removed in next major version (v2.0)
60
71
 
61
- ***Note: extra fee will be charged when using VPC, see [CloudAMQP](https://cloudamqp.com) for more information.***
72
+ ***Note:*** Extra fee will be charged when using VPC, see [CloudAMQP] for more information.
62
73
  """
63
74
  pulumi.set(__self__, "plan", plan)
64
75
  pulumi.set(__self__, "region", region)
@@ -85,7 +96,7 @@ class InstanceArgs:
85
96
  @pulumi.getter
86
97
  def plan(self) -> pulumi.Input[str]:
87
98
  """
88
- The subscription plan. See available plans
99
+ The subscription plan. See available [plans].
89
100
  """
90
101
  return pulumi.get(self, "plan")
91
102
 
@@ -97,9 +108,10 @@ class InstanceArgs:
97
108
  @pulumi.getter
98
109
  def region(self) -> pulumi.Input[str]:
99
110
  """
100
- The region to host the instance in. See instance regions
111
+ The region to host the instance in. See available [regions].
101
112
 
102
- ***Note: Changing region will force the instance to be destroyed and a new created in the new region. All data will be lost and a new name assigned.***
113
+ ***Note:*** Changing region will force the instance to be destroyed and a new created in the new
114
+ region. All data will be lost and a new name assigned.
103
115
  """
104
116
  return pulumi.get(self, "region")
105
117
 
@@ -111,7 +123,8 @@ class InstanceArgs:
111
123
  @pulumi.getter(name="copySettings")
112
124
  def copy_settings(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceCopySettingArgs']]]]:
113
125
  """
114
- Copy settings from one CloudAMQP instance to a new. Consists of the block documented below.
126
+ Copy settings from one CloudAMQP instance to a new. Consists of
127
+ the block documented below.
115
128
 
116
129
  ___
117
130
 
@@ -127,7 +140,8 @@ class InstanceArgs:
127
140
  @pulumi.getter(name="keepAssociatedVpc")
128
141
  def keep_associated_vpc(self) -> Optional[pulumi.Input[bool]]:
129
142
  """
130
- Keep associated VPC when deleting instance, default set to false.
143
+ Keep associated VPC when deleting instance. Default set to
144
+ false.
131
145
  """
132
146
  return pulumi.get(self, "keep_associated_vpc")
133
147
 
@@ -151,7 +165,7 @@ class InstanceArgs:
151
165
  @pulumi.getter(name="noDefaultAlarms")
152
166
  def no_default_alarms(self) -> Optional[pulumi.Input[bool]]:
153
167
  """
154
- Set to true to discard creating default alarms when the instance is created. Can be left out, will then use default value = false.
168
+ Set to true to not create default alarms
155
169
  """
156
170
  return pulumi.get(self, "no_default_alarms")
157
171
 
@@ -163,9 +177,12 @@ class InstanceArgs:
163
177
  @pulumi.getter
164
178
  def nodes(self) -> Optional[pulumi.Input[int]]:
165
179
  """
166
- Number of nodes, 1, 3 or 5 depending on plan used. Only needed for legacy plans, will otherwise be computed.
180
+ Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
181
+ legacy plans, will otherwise be computed.
167
182
 
168
- ***Deprecated: Legacy subscriptions plan can still change this to scale up or down the instance. New subscriptions plans use the plan to determine number of nodes. In order to change number of nodes the `plan` needs to be updated.***
183
+ ***Deprecated:*** Legacy subscriptions plan can still change this to scale up or down the instance.
184
+ New subscriptions plans use the plan to determine number of nodes. In order to
185
+ change number of nodes the `plan` needs to be updated.
169
186
  """
170
187
  return pulumi.get(self, "nodes")
171
188
 
@@ -177,9 +194,11 @@ class InstanceArgs:
177
194
  @pulumi.getter(name="rmqVersion")
178
195
  def rmq_version(self) -> Optional[pulumi.Input[str]]:
179
196
  """
180
- The Rabbit MQ version. Can be left out, will then be set to default value used by CloudAMQP API.
197
+ The Rabbit MQ version. Can be left out, will then be set to
198
+ default value used by CloudAMQP API.
181
199
 
182
- ***Note: There is not yet any support in the provider to change the RMQ version. Once it's set in the initial creation, it will remain.***
200
+ ***Note:*** There is not yet any support in the provider to change the RMQ version. Once it's set
201
+ in the initial creation, it will remain.
183
202
  """
184
203
  return pulumi.get(self, "rmq_version")
185
204
 
@@ -191,7 +210,8 @@ class InstanceArgs:
191
210
  @pulumi.getter
192
211
  def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
193
212
  """
194
- One or more tags for the CloudAMQP instance, makes it possible to categories multiple instances in console view. Default there is no tags assigned.
213
+ One or more tags for the CloudAMQP instance, makes it possible to
214
+ categories multiple instances in console view. Default there is no tags assigned.
195
215
  """
196
216
  return pulumi.get(self, "tags")
197
217
 
@@ -203,7 +223,8 @@ class InstanceArgs:
203
223
  @pulumi.getter(name="vpcId")
204
224
  def vpc_id(self) -> Optional[pulumi.Input[int]]:
205
225
  """
206
- The VPC ID. Use this to create your instance in an existing VPC. See available example.
226
+ The VPC ID. Use this to create your instance in an existing
227
+ VPC. See available [example].
207
228
  """
208
229
  return pulumi.get(self, "vpc_id")
209
230
 
@@ -215,11 +236,12 @@ class InstanceArgs:
215
236
  @pulumi.getter(name="vpcSubnet")
216
237
  def vpc_subnet(self) -> Optional[pulumi.Input[str]]:
217
238
  """
218
- Creates a dedicated VPC subnet, shouldn't overlap with other VPC subnet, default subnet used 10.56.72.0/24.
239
+ Creates a dedicated VPC subnet, shouldn't overlap with other
240
+ VPC subnet, default subnet used 10.56.72.0/24.
219
241
 
220
- ***Deprecated: Will be removed in next major version (v2.0)***
242
+ ***Deprecated:*** Will be removed in next major version (v2.0)
221
243
 
222
- ***Note: extra fee will be charged when using VPC, see [CloudAMQP](https://cloudamqp.com) for more information.***
244
+ ***Note:*** Extra fee will be charged when using VPC, see [CloudAMQP] for more information.
223
245
  """
224
246
  return pulumi.get(self, "vpc_subnet")
225
247
 
@@ -252,9 +274,11 @@ class _InstanceState:
252
274
  vpc_subnet: Optional[pulumi.Input[str]] = None):
253
275
  """
254
276
  Input properties used for looking up and filtering Instance resources.
255
- :param pulumi.Input[str] apikey: API key needed to communicate to CloudAMQP's second API. The second API is used to manage alarms, integration and more, full description [CloudAMQP API](https://docs.cloudamqp.com/cloudamqp_api.html).
277
+ :param pulumi.Input[str] apikey: API key needed to communicate to CloudAMQP's second API. The second API is used
278
+ to manage alarms, integration and more, full description [CloudAMQP API].
256
279
  :param pulumi.Input[str] backend: Information if the CloudAMQP instance runs either RabbitMQ or LavinMQ.
257
- :param pulumi.Input[Sequence[pulumi.Input['InstanceCopySettingArgs']]] copy_settings: Copy settings from one CloudAMQP instance to a new. Consists of the block documented below.
280
+ :param pulumi.Input[Sequence[pulumi.Input['InstanceCopySettingArgs']]] copy_settings: Copy settings from one CloudAMQP instance to a new. Consists of
281
+ the block documented below.
258
282
 
259
283
  ___
260
284
 
@@ -262,29 +286,40 @@ class _InstanceState:
262
286
  :param pulumi.Input[bool] dedicated: Information if the CloudAMQP instance is shared or dedicated.
263
287
  :param pulumi.Input[str] host: The external hostname for the CloudAMQP instance.
264
288
  :param pulumi.Input[str] host_internal: The internal hostname for the CloudAMQP instance.
265
- :param pulumi.Input[bool] keep_associated_vpc: Keep associated VPC when deleting instance, default set to false.
289
+ :param pulumi.Input[bool] keep_associated_vpc: Keep associated VPC when deleting instance. Default set to
290
+ false.
266
291
  :param pulumi.Input[str] name: Name of the CloudAMQP instance.
267
- :param pulumi.Input[bool] no_default_alarms: Set to true to discard creating default alarms when the instance is created. Can be left out, will then use default value = false.
268
- :param pulumi.Input[int] nodes: Number of nodes, 1, 3 or 5 depending on plan used. Only needed for legacy plans, will otherwise be computed.
292
+ :param pulumi.Input[bool] no_default_alarms: Set to true to not create default alarms
293
+ :param pulumi.Input[int] nodes: Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
294
+ legacy plans, will otherwise be computed.
269
295
 
270
- ***Deprecated: Legacy subscriptions plan can still change this to scale up or down the instance. New subscriptions plans use the plan to determine number of nodes. In order to change number of nodes the `plan` needs to be updated.***
271
- :param pulumi.Input[str] plan: The subscription plan. See available plans
296
+ ***Deprecated:*** Legacy subscriptions plan can still change this to scale up or down the instance.
297
+ New subscriptions plans use the plan to determine number of nodes. In order to
298
+ change number of nodes the `plan` needs to be updated.
299
+ :param pulumi.Input[str] plan: The subscription plan. See available [plans].
272
300
  :param pulumi.Input[bool] ready: Flag describing if the resource is ready
273
- :param pulumi.Input[str] region: The region to host the instance in. See instance regions
301
+ :param pulumi.Input[str] region: The region to host the instance in. See available [regions].
274
302
 
275
- ***Note: Changing region will force the instance to be destroyed and a new created in the new region. All data will be lost and a new name assigned.***
276
- :param pulumi.Input[str] rmq_version: The Rabbit MQ version. Can be left out, will then be set to default value used by CloudAMQP API.
303
+ ***Note:*** Changing region will force the instance to be destroyed and a new created in the new
304
+ region. All data will be lost and a new name assigned.
305
+ :param pulumi.Input[str] rmq_version: The Rabbit MQ version. Can be left out, will then be set to
306
+ default value used by CloudAMQP API.
277
307
 
278
- ***Note: There is not yet any support in the provider to change the RMQ version. Once it's set in the initial creation, it will remain.***
279
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: One or more tags for the CloudAMQP instance, makes it possible to categories multiple instances in console view. Default there is no tags assigned.
280
- :param pulumi.Input[str] url: The AMQP URL (uses the internal hostname if the instance was created with VPC). Has the format: `amqps://{username}:{password}@{hostname}/{vhost}`
308
+ ***Note:*** There is not yet any support in the provider to change the RMQ version. Once it's set
309
+ in the initial creation, it will remain.
310
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: One or more tags for the CloudAMQP instance, makes it possible to
311
+ categories multiple instances in console view. Default there is no tags assigned.
312
+ :param pulumi.Input[str] url: The AMQP URL (uses the internal hostname if the instance was created with VPC).
313
+ Has the format: `amqps://{username}:{password}@{hostname}/{vhost}`
281
314
  :param pulumi.Input[str] vhost: The virtual host used by Rabbit MQ.
282
- :param pulumi.Input[int] vpc_id: The VPC ID. Use this to create your instance in an existing VPC. See available example.
283
- :param pulumi.Input[str] vpc_subnet: Creates a dedicated VPC subnet, shouldn't overlap with other VPC subnet, default subnet used 10.56.72.0/24.
315
+ :param pulumi.Input[int] vpc_id: The VPC ID. Use this to create your instance in an existing
316
+ VPC. See available [example].
317
+ :param pulumi.Input[str] vpc_subnet: Creates a dedicated VPC subnet, shouldn't overlap with other
318
+ VPC subnet, default subnet used 10.56.72.0/24.
284
319
 
285
- ***Deprecated: Will be removed in next major version (v2.0)***
320
+ ***Deprecated:*** Will be removed in next major version (v2.0)
286
321
 
287
- ***Note: extra fee will be charged when using VPC, see [CloudAMQP](https://cloudamqp.com) for more information.***
322
+ ***Note:*** Extra fee will be charged when using VPC, see [CloudAMQP] for more information.
288
323
  """
289
324
  if apikey is not None:
290
325
  pulumi.set(__self__, "apikey", apikey)
@@ -329,7 +364,8 @@ class _InstanceState:
329
364
  @pulumi.getter
330
365
  def apikey(self) -> Optional[pulumi.Input[str]]:
331
366
  """
332
- API key needed to communicate to CloudAMQP's second API. The second API is used to manage alarms, integration and more, full description [CloudAMQP API](https://docs.cloudamqp.com/cloudamqp_api.html).
367
+ API key needed to communicate to CloudAMQP's second API. The second API is used
368
+ to manage alarms, integration and more, full description [CloudAMQP API].
333
369
  """
334
370
  return pulumi.get(self, "apikey")
335
371
 
@@ -353,7 +389,8 @@ class _InstanceState:
353
389
  @pulumi.getter(name="copySettings")
354
390
  def copy_settings(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceCopySettingArgs']]]]:
355
391
  """
356
- Copy settings from one CloudAMQP instance to a new. Consists of the block documented below.
392
+ Copy settings from one CloudAMQP instance to a new. Consists of
393
+ the block documented below.
357
394
 
358
395
  ___
359
396
 
@@ -405,7 +442,8 @@ class _InstanceState:
405
442
  @pulumi.getter(name="keepAssociatedVpc")
406
443
  def keep_associated_vpc(self) -> Optional[pulumi.Input[bool]]:
407
444
  """
408
- Keep associated VPC when deleting instance, default set to false.
445
+ Keep associated VPC when deleting instance. Default set to
446
+ false.
409
447
  """
410
448
  return pulumi.get(self, "keep_associated_vpc")
411
449
 
@@ -429,7 +467,7 @@ class _InstanceState:
429
467
  @pulumi.getter(name="noDefaultAlarms")
430
468
  def no_default_alarms(self) -> Optional[pulumi.Input[bool]]:
431
469
  """
432
- Set to true to discard creating default alarms when the instance is created. Can be left out, will then use default value = false.
470
+ Set to true to not create default alarms
433
471
  """
434
472
  return pulumi.get(self, "no_default_alarms")
435
473
 
@@ -441,9 +479,12 @@ class _InstanceState:
441
479
  @pulumi.getter
442
480
  def nodes(self) -> Optional[pulumi.Input[int]]:
443
481
  """
444
- Number of nodes, 1, 3 or 5 depending on plan used. Only needed for legacy plans, will otherwise be computed.
482
+ Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
483
+ legacy plans, will otherwise be computed.
445
484
 
446
- ***Deprecated: Legacy subscriptions plan can still change this to scale up or down the instance. New subscriptions plans use the plan to determine number of nodes. In order to change number of nodes the `plan` needs to be updated.***
485
+ ***Deprecated:*** Legacy subscriptions plan can still change this to scale up or down the instance.
486
+ New subscriptions plans use the plan to determine number of nodes. In order to
487
+ change number of nodes the `plan` needs to be updated.
447
488
  """
448
489
  return pulumi.get(self, "nodes")
449
490
 
@@ -455,7 +496,7 @@ class _InstanceState:
455
496
  @pulumi.getter
456
497
  def plan(self) -> Optional[pulumi.Input[str]]:
457
498
  """
458
- The subscription plan. See available plans
499
+ The subscription plan. See available [plans].
459
500
  """
460
501
  return pulumi.get(self, "plan")
461
502
 
@@ -479,9 +520,10 @@ class _InstanceState:
479
520
  @pulumi.getter
480
521
  def region(self) -> Optional[pulumi.Input[str]]:
481
522
  """
482
- The region to host the instance in. See instance regions
523
+ The region to host the instance in. See available [regions].
483
524
 
484
- ***Note: Changing region will force the instance to be destroyed and a new created in the new region. All data will be lost and a new name assigned.***
525
+ ***Note:*** Changing region will force the instance to be destroyed and a new created in the new
526
+ region. All data will be lost and a new name assigned.
485
527
  """
486
528
  return pulumi.get(self, "region")
487
529
 
@@ -493,9 +535,11 @@ class _InstanceState:
493
535
  @pulumi.getter(name="rmqVersion")
494
536
  def rmq_version(self) -> Optional[pulumi.Input[str]]:
495
537
  """
496
- The Rabbit MQ version. Can be left out, will then be set to default value used by CloudAMQP API.
538
+ The Rabbit MQ version. Can be left out, will then be set to
539
+ default value used by CloudAMQP API.
497
540
 
498
- ***Note: There is not yet any support in the provider to change the RMQ version. Once it's set in the initial creation, it will remain.***
541
+ ***Note:*** There is not yet any support in the provider to change the RMQ version. Once it's set
542
+ in the initial creation, it will remain.
499
543
  """
500
544
  return pulumi.get(self, "rmq_version")
501
545
 
@@ -507,7 +551,8 @@ class _InstanceState:
507
551
  @pulumi.getter
508
552
  def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
509
553
  """
510
- One or more tags for the CloudAMQP instance, makes it possible to categories multiple instances in console view. Default there is no tags assigned.
554
+ One or more tags for the CloudAMQP instance, makes it possible to
555
+ categories multiple instances in console view. Default there is no tags assigned.
511
556
  """
512
557
  return pulumi.get(self, "tags")
513
558
 
@@ -519,7 +564,8 @@ class _InstanceState:
519
564
  @pulumi.getter
520
565
  def url(self) -> Optional[pulumi.Input[str]]:
521
566
  """
522
- The AMQP URL (uses the internal hostname if the instance was created with VPC). Has the format: `amqps://{username}:{password}@{hostname}/{vhost}`
567
+ The AMQP URL (uses the internal hostname if the instance was created with VPC).
568
+ Has the format: `amqps://{username}:{password}@{hostname}/{vhost}`
523
569
  """
524
570
  return pulumi.get(self, "url")
525
571
 
@@ -543,7 +589,8 @@ class _InstanceState:
543
589
  @pulumi.getter(name="vpcId")
544
590
  def vpc_id(self) -> Optional[pulumi.Input[int]]:
545
591
  """
546
- The VPC ID. Use this to create your instance in an existing VPC. See available example.
592
+ The VPC ID. Use this to create your instance in an existing
593
+ VPC. See available [example].
547
594
  """
548
595
  return pulumi.get(self, "vpc_id")
549
596
 
@@ -555,11 +602,12 @@ class _InstanceState:
555
602
  @pulumi.getter(name="vpcSubnet")
556
603
  def vpc_subnet(self) -> Optional[pulumi.Input[str]]:
557
604
  """
558
- Creates a dedicated VPC subnet, shouldn't overlap with other VPC subnet, default subnet used 10.56.72.0/24.
605
+ Creates a dedicated VPC subnet, shouldn't overlap with other
606
+ VPC subnet, default subnet used 10.56.72.0/24.
559
607
 
560
- ***Deprecated: Will be removed in next major version (v2.0)***
608
+ ***Deprecated:*** Will be removed in next major version (v2.0)
561
609
 
562
- ***Note: extra fee will be charged when using VPC, see [CloudAMQP](https://cloudamqp.com) for more information.***
610
+ ***Note:*** Extra fee will be charged when using VPC, see [CloudAMQP] for more information.
563
611
  """
564
612
  return pulumi.get(self, "vpc_subnet")
565
613
 
@@ -586,18 +634,21 @@ class Instance(pulumi.CustomResource):
586
634
  vpc_subnet: Optional[pulumi.Input[str]] = None,
587
635
  __props__=None):
588
636
  """
589
- This resource allows you to create and manage a CloudAMQP instance running either [**RabbitMQ**](https://www.rabbitmq.com/) or [**LavinMQ**](https://lavinmq.com/) and can be deployed to multiple cloud platforms provider and regions, see instance regions for more information.
637
+ This resource allows you to create and manage a CloudAMQP instance running either [**RabbitMQ**] or
638
+ [**LavinMQ**] and can be deployed to multiple cloud platforms provider and regions, see
639
+ [instance regions] for more information.
590
640
 
591
- Once the instance is created it will be assigned a unique identifier. All other resources and data sources created for this instance needs to reference this unique instance identifier.
641
+ Once the instance is created it will be assigned a unique identifier. All other resources and data
642
+ sources created for this instance needs to reference this unique instance identifier.
592
643
 
593
- Pricing is available at [cloudamqp.com](https://www.cloudamqp.com/plans.html).
644
+ Pricing is available at [CloudAMQP plans].
594
645
 
595
646
  ## Example Usage
596
647
 
597
648
  <details>
598
649
  <summary>
599
650
  <b>
600
- <i>Basic example of shared and dedicated instances</i>
651
+ <i>Shared and dedicated instances running LavinMQ</i>
601
652
  </b>
602
653
  </summary>
603
654
 
@@ -605,24 +656,30 @@ class Instance(pulumi.CustomResource):
605
656
  import pulumi
606
657
  import pulumi_cloudamqp as cloudamqp
607
658
 
608
- # Minimum free lemur instance running RabbitMQ
659
+ # Minimum free lemming instance running LavinMQ
609
660
  lemur_instance = cloudamqp.Instance("lemur_instance",
610
- name="cloudamqp-free-instance",
661
+ name="cloudamqp-free-instance-01",
662
+ plan="lemming",
663
+ region="amazon-web-services::us-west-1",
664
+ tags=["lavinmq"])
665
+ # Minimum free lemur instance running RabbitMQ
666
+ lemming_instance = cloudamqp.Instance("lemming_instance",
667
+ name="cloudamqp-free-instance-02",
611
668
  plan="lemur",
612
669
  region="amazon-web-services::us-west-1",
613
670
  tags=["rabbitmq"])
614
- # Minimum free lemming instance running LavinMQ
615
- lemming_instance = cloudamqp.Instance("lemming_instance",
616
- name="cloudamqp-free-instance",
617
- plan="lemming",
671
+ # Dedicated penguin instance running LavinMQ
672
+ penguin_instance = cloudamqp.Instance("penguin_instance",
673
+ name="terraform-cloudamqp-instance-01",
674
+ plan="penguin-1",
618
675
  region="amazon-web-services::us-west-1",
619
676
  tags=["lavinmq"])
620
- # New dedicated bunny instance running RabbitMQ
621
- instance = cloudamqp.Instance("instance",
622
- name="terraform-cloudamqp-instance",
677
+ # Dedicated bunny instance running RabbitMQ
678
+ bunny_instance = cloudamqp.Instance("bunny_instance",
679
+ name="terraform-cloudamqp-instance-02",
623
680
  plan="bunny-1",
624
681
  region="amazon-web-services::us-west-1",
625
- tags=["terraform"])
682
+ tags=["rabbitmq"])
626
683
  ```
627
684
 
628
685
  </details>
@@ -640,7 +697,7 @@ class Instance(pulumi.CustomResource):
640
697
 
641
698
  instance = cloudamqp.Instance("instance",
642
699
  name="terraform-cloudamqp-instance",
643
- plan="bunny-1",
700
+ plan="penguin-1",
644
701
  region="amazon-web-services::us-west-1",
645
702
  tags=["terraform"],
646
703
  vpc_subnet="10.56.72.0/24")
@@ -651,7 +708,10 @@ class Instance(pulumi.CustomResource):
651
708
  <details>
652
709
  <summary>
653
710
  <b>
654
- <i>Dedicated instance using attribute vpc_subnet to create VPC and then import managed VPC, from v1.16.0 (Managed VPC)</i>
711
+ <i>
712
+ Dedicated instance using attribute vpc_subnet to create VPC and then import managed VPC,
713
+ from v1.16.0 (Managed VPC)
714
+ </i>
655
715
  </b>
656
716
  </summary>
657
717
 
@@ -662,15 +722,16 @@ class Instance(pulumi.CustomResource):
662
722
  # Dedicated instance that also creates VPC
663
723
  instance01 = cloudamqp.Instance("instance_01",
664
724
  name="terraform-cloudamqp-instance-01",
665
- plan="bunny-1",
725
+ plan="penguin-1",
666
726
  region="amazon-web-services::us-west-1",
667
727
  tags=["terraform"],
668
728
  vpc_subnet="10.56.72.0/24")
669
729
  ```
670
730
 
671
- Once the instance and the VPC are created, the VPC can be imported as managed VPC and added to the configuration file.
672
- Set attribute `vpc_id` to the managed VPC identifier. To keep the managed VPC when deleting the instance, set attribute `keep_associated_vpc` to true.
673
- For more information see guide Managed VPC.
731
+ Once the instance and the VPC are created, the VPC can be imported as managed VPC and added to the
732
+ configuration file. Set attribute `vpc_id` to the managed VPC identifier. To keep the managed VPC
733
+ when deleting the instance, set attribute `keep_associated_vpc` to true. For more information see
734
+ guide [Managed VPC].
674
735
 
675
736
  ```python
676
737
  import pulumi
@@ -685,7 +746,7 @@ class Instance(pulumi.CustomResource):
685
746
  # Add vpc_id and keep_associated_vpc attributes
686
747
  instance01 = cloudamqp.Instance("instance_01",
687
748
  name="terraform-cloudamqp-instance-01",
688
- plan="bunny-1",
749
+ plan="penguin-1",
689
750
  region="amazon-web-services::us-west-1",
690
751
  tags=["terraform"],
691
752
  vpc_id=vpc.id,
@@ -714,7 +775,7 @@ class Instance(pulumi.CustomResource):
714
775
  # First instance added to managed VPC
715
776
  instance01 = cloudamqp.Instance("instance_01",
716
777
  name="terraform-cloudamqp-instance-01",
717
- plan="bunny-1",
778
+ plan="penguin-1",
718
779
  region="amazon-web-services::us-west-1",
719
780
  tags=["terraform"],
720
781
  vpc_id=vpc.id,
@@ -722,7 +783,7 @@ class Instance(pulumi.CustomResource):
722
783
  # Second instance added to managed VPC
723
784
  instance02 = cloudamqp.Instance("instance_02",
724
785
  name="terraform-cloudamqp-instance-02",
725
- plan="bunny-1",
786
+ plan="penguin-1",
726
787
  region="amazon-web-services::us-west-1",
727
788
  tags=["terraform"],
728
789
  vpc_id=vpc.id,
@@ -733,13 +794,43 @@ class Instance(pulumi.CustomResource):
733
794
 
734
795
  </details>
735
796
 
736
- ## Copy settings to a new dedicated instance
797
+ ### Settings supported by LavinMQ
737
798
 
738
- With copy settings it's possible to create a new dedicated instance with settings such as alarms, config, etc. from another dedicated instance. This can be done by adding the `copy_settings` block to this resource and populate `subscription_id` with a CloudAMQP instance identifier from another already existing instance.
799
+ ***Allowed values:*** alarms, definitions, firewall, metrics
739
800
 
740
- Then add the settings to be copied over to the new dedicated instance. Settings that can be copied [alarms, config, definitions, firewall, logs, metrics, plugins]
801
+ <details>
802
+ <summary>
803
+ <b>
804
+ <i>Copy settings from a dedicated instance to a new dedicated instance</i>
805
+ </b>
806
+ </summary>
741
807
 
742
- > `rmq_version` argument is required when doing this action. Must match the RabbitMQ version of the dedicated instance to be copied from.
808
+ ```python
809
+ import pulumi
810
+ import pulumi_cloudamqp as cloudamqp
811
+
812
+ penguin_instance = cloudamqp.Instance("penguin_instance",
813
+ name="terraform-cloudamqp-instance-01",
814
+ plan="penguin-1",
815
+ region="amazon-web-services::us-west-1",
816
+ rmq_version="2.2.0",
817
+ tags=["terraform"],
818
+ copy_settings=[{
819
+ "subscription_id": instance_id,
820
+ "settings": [
821
+ "alarms",
822
+ "definitions",
823
+ "firewall",
824
+ "metrics",
825
+ ],
826
+ }])
827
+ ```
828
+
829
+ </details>
830
+
831
+ ### Settings supported by RabbitMQ
832
+
833
+ ***Allowed values:*** alarms, config, definitions, firewall, logs, metrics, plugins
743
834
 
744
835
  <details>
745
836
  <summary>
@@ -752,9 +843,9 @@ class Instance(pulumi.CustomResource):
752
843
  import pulumi
753
844
  import pulumi_cloudamqp as cloudamqp
754
845
 
755
- instance02 = cloudamqp.Instance("instance_02",
846
+ bunny_instance = cloudamqp.Instance("bunny_instance",
756
847
  name="terraform-cloudamqp-instance-02",
757
- plan="squirrel-1",
848
+ plan="bunny-1",
758
849
  region="amazon-web-services::us-west-1",
759
850
  rmq_version="3.12.2",
760
851
  tags=["terraform"],
@@ -774,43 +865,80 @@ class Instance(pulumi.CustomResource):
774
865
 
775
866
  </details>
776
867
 
868
+ [CloudAMQP]: https://cloudamqp.com
869
+ [CloudAMQP API]: https://docs.cloudamqp.com/cloudamqp_api.html
870
+ [CloudAMQP API list instances]: https://docs.cloudamqp.com/#list-instances
871
+ [CloudAMQP plans]: https://www.cloudamqp.com/plans.html
872
+ [copy settings]: #copy-settings-to-a-new-dedicated-instance
873
+ [example]: ../guides/info_vpc_existing.md
874
+ [regions]: ../guides/info_region.md
875
+ [**LavinMQ**]: https://lavinmq.com
876
+ [Managed VPC]: ../guides/info_managed_vpc#dedicated-instance-and-vpc_subnet
877
+ [plans]: ../guides/info_plan.md
878
+ [**RabbitMQ**]: https://www.rabbitmq.com
879
+
777
880
  ## Import
778
881
 
779
- `cloudamqp_instance`can be imported using CloudAMQP internal identifier.
882
+ `cloudamqp_instance`can be imported using resource identifier. To retrieve the resource identifier,
883
+
884
+ use [CloudAMQP API list instances]
885
+
886
+ From Terraform v1.5.0, the `import` block can be used to import this resource:
887
+
888
+ hcl
889
+
890
+ import {
891
+
892
+ to = cloudamqp_instance.instance
893
+
894
+ id = <id>
895
+
896
+ }
897
+
898
+ Or use Terraform CLI:
780
899
 
781
900
  ```sh
782
901
  $ pulumi import cloudamqp:index/instance:Instance instance <id>`
783
902
  ```
784
903
 
785
- 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) to list all available instances for an account.
786
-
787
904
  :param str resource_name: The name of the resource.
788
905
  :param pulumi.ResourceOptions opts: Options for the resource.
789
- :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceCopySettingArgs', 'InstanceCopySettingArgsDict']]]] copy_settings: Copy settings from one CloudAMQP instance to a new. Consists of the block documented below.
906
+ :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceCopySettingArgs', 'InstanceCopySettingArgsDict']]]] copy_settings: Copy settings from one CloudAMQP instance to a new. Consists of
907
+ the block documented below.
790
908
 
791
909
  ___
792
910
 
793
911
  The `copy_settings` block consists of:
794
- :param pulumi.Input[bool] keep_associated_vpc: Keep associated VPC when deleting instance, default set to false.
912
+ :param pulumi.Input[bool] keep_associated_vpc: Keep associated VPC when deleting instance. Default set to
913
+ false.
795
914
  :param pulumi.Input[str] name: Name of the CloudAMQP instance.
796
- :param pulumi.Input[bool] no_default_alarms: Set to true to discard creating default alarms when the instance is created. Can be left out, will then use default value = false.
797
- :param pulumi.Input[int] nodes: Number of nodes, 1, 3 or 5 depending on plan used. Only needed for legacy plans, will otherwise be computed.
915
+ :param pulumi.Input[bool] no_default_alarms: Set to true to not create default alarms
916
+ :param pulumi.Input[int] nodes: Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
917
+ legacy plans, will otherwise be computed.
798
918
 
799
- ***Deprecated: Legacy subscriptions plan can still change this to scale up or down the instance. New subscriptions plans use the plan to determine number of nodes. In order to change number of nodes the `plan` needs to be updated.***
800
- :param pulumi.Input[str] plan: The subscription plan. See available plans
801
- :param pulumi.Input[str] region: The region to host the instance in. See instance regions
919
+ ***Deprecated:*** Legacy subscriptions plan can still change this to scale up or down the instance.
920
+ New subscriptions plans use the plan to determine number of nodes. In order to
921
+ change number of nodes the `plan` needs to be updated.
922
+ :param pulumi.Input[str] plan: The subscription plan. See available [plans].
923
+ :param pulumi.Input[str] region: The region to host the instance in. See available [regions].
802
924
 
803
- ***Note: Changing region will force the instance to be destroyed and a new created in the new region. All data will be lost and a new name assigned.***
804
- :param pulumi.Input[str] rmq_version: The Rabbit MQ version. Can be left out, will then be set to default value used by CloudAMQP API.
925
+ ***Note:*** Changing region will force the instance to be destroyed and a new created in the new
926
+ region. All data will be lost and a new name assigned.
927
+ :param pulumi.Input[str] rmq_version: The Rabbit MQ version. Can be left out, will then be set to
928
+ default value used by CloudAMQP API.
805
929
 
806
- ***Note: There is not yet any support in the provider to change the RMQ version. Once it's set in the initial creation, it will remain.***
807
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: One or more tags for the CloudAMQP instance, makes it possible to categories multiple instances in console view. Default there is no tags assigned.
808
- :param pulumi.Input[int] vpc_id: The VPC ID. Use this to create your instance in an existing VPC. See available example.
809
- :param pulumi.Input[str] vpc_subnet: Creates a dedicated VPC subnet, shouldn't overlap with other VPC subnet, default subnet used 10.56.72.0/24.
930
+ ***Note:*** There is not yet any support in the provider to change the RMQ version. Once it's set
931
+ in the initial creation, it will remain.
932
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: One or more tags for the CloudAMQP instance, makes it possible to
933
+ categories multiple instances in console view. Default there is no tags assigned.
934
+ :param pulumi.Input[int] vpc_id: The VPC ID. Use this to create your instance in an existing
935
+ VPC. See available [example].
936
+ :param pulumi.Input[str] vpc_subnet: Creates a dedicated VPC subnet, shouldn't overlap with other
937
+ VPC subnet, default subnet used 10.56.72.0/24.
810
938
 
811
- ***Deprecated: Will be removed in next major version (v2.0)***
939
+ ***Deprecated:*** Will be removed in next major version (v2.0)
812
940
 
813
- ***Note: extra fee will be charged when using VPC, see [CloudAMQP](https://cloudamqp.com) for more information.***
941
+ ***Note:*** Extra fee will be charged when using VPC, see [CloudAMQP] for more information.
814
942
  """
815
943
  ...
816
944
  @overload
@@ -819,18 +947,21 @@ class Instance(pulumi.CustomResource):
819
947
  args: InstanceArgs,
820
948
  opts: Optional[pulumi.ResourceOptions] = None):
821
949
  """
822
- This resource allows you to create and manage a CloudAMQP instance running either [**RabbitMQ**](https://www.rabbitmq.com/) or [**LavinMQ**](https://lavinmq.com/) and can be deployed to multiple cloud platforms provider and regions, see instance regions for more information.
950
+ This resource allows you to create and manage a CloudAMQP instance running either [**RabbitMQ**] or
951
+ [**LavinMQ**] and can be deployed to multiple cloud platforms provider and regions, see
952
+ [instance regions] for more information.
823
953
 
824
- Once the instance is created it will be assigned a unique identifier. All other resources and data sources created for this instance needs to reference this unique instance identifier.
954
+ Once the instance is created it will be assigned a unique identifier. All other resources and data
955
+ sources created for this instance needs to reference this unique instance identifier.
825
956
 
826
- Pricing is available at [cloudamqp.com](https://www.cloudamqp.com/plans.html).
957
+ Pricing is available at [CloudAMQP plans].
827
958
 
828
959
  ## Example Usage
829
960
 
830
961
  <details>
831
962
  <summary>
832
963
  <b>
833
- <i>Basic example of shared and dedicated instances</i>
964
+ <i>Shared and dedicated instances running LavinMQ</i>
834
965
  </b>
835
966
  </summary>
836
967
 
@@ -838,24 +969,30 @@ class Instance(pulumi.CustomResource):
838
969
  import pulumi
839
970
  import pulumi_cloudamqp as cloudamqp
840
971
 
841
- # Minimum free lemur instance running RabbitMQ
972
+ # Minimum free lemming instance running LavinMQ
842
973
  lemur_instance = cloudamqp.Instance("lemur_instance",
843
- name="cloudamqp-free-instance",
974
+ name="cloudamqp-free-instance-01",
975
+ plan="lemming",
976
+ region="amazon-web-services::us-west-1",
977
+ tags=["lavinmq"])
978
+ # Minimum free lemur instance running RabbitMQ
979
+ lemming_instance = cloudamqp.Instance("lemming_instance",
980
+ name="cloudamqp-free-instance-02",
844
981
  plan="lemur",
845
982
  region="amazon-web-services::us-west-1",
846
983
  tags=["rabbitmq"])
847
- # Minimum free lemming instance running LavinMQ
848
- lemming_instance = cloudamqp.Instance("lemming_instance",
849
- name="cloudamqp-free-instance",
850
- plan="lemming",
984
+ # Dedicated penguin instance running LavinMQ
985
+ penguin_instance = cloudamqp.Instance("penguin_instance",
986
+ name="terraform-cloudamqp-instance-01",
987
+ plan="penguin-1",
851
988
  region="amazon-web-services::us-west-1",
852
989
  tags=["lavinmq"])
853
- # New dedicated bunny instance running RabbitMQ
854
- instance = cloudamqp.Instance("instance",
855
- name="terraform-cloudamqp-instance",
990
+ # Dedicated bunny instance running RabbitMQ
991
+ bunny_instance = cloudamqp.Instance("bunny_instance",
992
+ name="terraform-cloudamqp-instance-02",
856
993
  plan="bunny-1",
857
994
  region="amazon-web-services::us-west-1",
858
- tags=["terraform"])
995
+ tags=["rabbitmq"])
859
996
  ```
860
997
 
861
998
  </details>
@@ -873,7 +1010,7 @@ class Instance(pulumi.CustomResource):
873
1010
 
874
1011
  instance = cloudamqp.Instance("instance",
875
1012
  name="terraform-cloudamqp-instance",
876
- plan="bunny-1",
1013
+ plan="penguin-1",
877
1014
  region="amazon-web-services::us-west-1",
878
1015
  tags=["terraform"],
879
1016
  vpc_subnet="10.56.72.0/24")
@@ -884,7 +1021,10 @@ class Instance(pulumi.CustomResource):
884
1021
  <details>
885
1022
  <summary>
886
1023
  <b>
887
- <i>Dedicated instance using attribute vpc_subnet to create VPC and then import managed VPC, from v1.16.0 (Managed VPC)</i>
1024
+ <i>
1025
+ Dedicated instance using attribute vpc_subnet to create VPC and then import managed VPC,
1026
+ from v1.16.0 (Managed VPC)
1027
+ </i>
888
1028
  </b>
889
1029
  </summary>
890
1030
 
@@ -895,15 +1035,16 @@ class Instance(pulumi.CustomResource):
895
1035
  # Dedicated instance that also creates VPC
896
1036
  instance01 = cloudamqp.Instance("instance_01",
897
1037
  name="terraform-cloudamqp-instance-01",
898
- plan="bunny-1",
1038
+ plan="penguin-1",
899
1039
  region="amazon-web-services::us-west-1",
900
1040
  tags=["terraform"],
901
1041
  vpc_subnet="10.56.72.0/24")
902
1042
  ```
903
1043
 
904
- Once the instance and the VPC are created, the VPC can be imported as managed VPC and added to the configuration file.
905
- Set attribute `vpc_id` to the managed VPC identifier. To keep the managed VPC when deleting the instance, set attribute `keep_associated_vpc` to true.
906
- For more information see guide Managed VPC.
1044
+ Once the instance and the VPC are created, the VPC can be imported as managed VPC and added to the
1045
+ configuration file. Set attribute `vpc_id` to the managed VPC identifier. To keep the managed VPC
1046
+ when deleting the instance, set attribute `keep_associated_vpc` to true. For more information see
1047
+ guide [Managed VPC].
907
1048
 
908
1049
  ```python
909
1050
  import pulumi
@@ -918,7 +1059,7 @@ class Instance(pulumi.CustomResource):
918
1059
  # Add vpc_id and keep_associated_vpc attributes
919
1060
  instance01 = cloudamqp.Instance("instance_01",
920
1061
  name="terraform-cloudamqp-instance-01",
921
- plan="bunny-1",
1062
+ plan="penguin-1",
922
1063
  region="amazon-web-services::us-west-1",
923
1064
  tags=["terraform"],
924
1065
  vpc_id=vpc.id,
@@ -947,7 +1088,7 @@ class Instance(pulumi.CustomResource):
947
1088
  # First instance added to managed VPC
948
1089
  instance01 = cloudamqp.Instance("instance_01",
949
1090
  name="terraform-cloudamqp-instance-01",
950
- plan="bunny-1",
1091
+ plan="penguin-1",
951
1092
  region="amazon-web-services::us-west-1",
952
1093
  tags=["terraform"],
953
1094
  vpc_id=vpc.id,
@@ -955,7 +1096,7 @@ class Instance(pulumi.CustomResource):
955
1096
  # Second instance added to managed VPC
956
1097
  instance02 = cloudamqp.Instance("instance_02",
957
1098
  name="terraform-cloudamqp-instance-02",
958
- plan="bunny-1",
1099
+ plan="penguin-1",
959
1100
  region="amazon-web-services::us-west-1",
960
1101
  tags=["terraform"],
961
1102
  vpc_id=vpc.id,
@@ -966,13 +1107,43 @@ class Instance(pulumi.CustomResource):
966
1107
 
967
1108
  </details>
968
1109
 
969
- ## Copy settings to a new dedicated instance
1110
+ ### Settings supported by LavinMQ
970
1111
 
971
- With copy settings it's possible to create a new dedicated instance with settings such as alarms, config, etc. from another dedicated instance. This can be done by adding the `copy_settings` block to this resource and populate `subscription_id` with a CloudAMQP instance identifier from another already existing instance.
1112
+ ***Allowed values:*** alarms, definitions, firewall, metrics
972
1113
 
973
- Then add the settings to be copied over to the new dedicated instance. Settings that can be copied [alarms, config, definitions, firewall, logs, metrics, plugins]
1114
+ <details>
1115
+ <summary>
1116
+ <b>
1117
+ <i>Copy settings from a dedicated instance to a new dedicated instance</i>
1118
+ </b>
1119
+ </summary>
974
1120
 
975
- > `rmq_version` argument is required when doing this action. Must match the RabbitMQ version of the dedicated instance to be copied from.
1121
+ ```python
1122
+ import pulumi
1123
+ import pulumi_cloudamqp as cloudamqp
1124
+
1125
+ penguin_instance = cloudamqp.Instance("penguin_instance",
1126
+ name="terraform-cloudamqp-instance-01",
1127
+ plan="penguin-1",
1128
+ region="amazon-web-services::us-west-1",
1129
+ rmq_version="2.2.0",
1130
+ tags=["terraform"],
1131
+ copy_settings=[{
1132
+ "subscription_id": instance_id,
1133
+ "settings": [
1134
+ "alarms",
1135
+ "definitions",
1136
+ "firewall",
1137
+ "metrics",
1138
+ ],
1139
+ }])
1140
+ ```
1141
+
1142
+ </details>
1143
+
1144
+ ### Settings supported by RabbitMQ
1145
+
1146
+ ***Allowed values:*** alarms, config, definitions, firewall, logs, metrics, plugins
976
1147
 
977
1148
  <details>
978
1149
  <summary>
@@ -985,9 +1156,9 @@ class Instance(pulumi.CustomResource):
985
1156
  import pulumi
986
1157
  import pulumi_cloudamqp as cloudamqp
987
1158
 
988
- instance02 = cloudamqp.Instance("instance_02",
1159
+ bunny_instance = cloudamqp.Instance("bunny_instance",
989
1160
  name="terraform-cloudamqp-instance-02",
990
- plan="squirrel-1",
1161
+ plan="bunny-1",
991
1162
  region="amazon-web-services::us-west-1",
992
1163
  rmq_version="3.12.2",
993
1164
  tags=["terraform"],
@@ -1007,16 +1178,42 @@ class Instance(pulumi.CustomResource):
1007
1178
 
1008
1179
  </details>
1009
1180
 
1181
+ [CloudAMQP]: https://cloudamqp.com
1182
+ [CloudAMQP API]: https://docs.cloudamqp.com/cloudamqp_api.html
1183
+ [CloudAMQP API list instances]: https://docs.cloudamqp.com/#list-instances
1184
+ [CloudAMQP plans]: https://www.cloudamqp.com/plans.html
1185
+ [copy settings]: #copy-settings-to-a-new-dedicated-instance
1186
+ [example]: ../guides/info_vpc_existing.md
1187
+ [regions]: ../guides/info_region.md
1188
+ [**LavinMQ**]: https://lavinmq.com
1189
+ [Managed VPC]: ../guides/info_managed_vpc#dedicated-instance-and-vpc_subnet
1190
+ [plans]: ../guides/info_plan.md
1191
+ [**RabbitMQ**]: https://www.rabbitmq.com
1192
+
1010
1193
  ## Import
1011
1194
 
1012
- `cloudamqp_instance`can be imported using CloudAMQP internal identifier.
1195
+ `cloudamqp_instance`can be imported using resource identifier. To retrieve the resource identifier,
1196
+
1197
+ use [CloudAMQP API list instances]
1198
+
1199
+ From Terraform v1.5.0, the `import` block can be used to import this resource:
1200
+
1201
+ hcl
1202
+
1203
+ import {
1204
+
1205
+ to = cloudamqp_instance.instance
1206
+
1207
+ id = <id>
1208
+
1209
+ }
1210
+
1211
+ Or use Terraform CLI:
1013
1212
 
1014
1213
  ```sh
1015
1214
  $ pulumi import cloudamqp:index/instance:Instance instance <id>`
1016
1215
  ```
1017
1216
 
1018
- 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) to list all available instances for an account.
1019
-
1020
1217
  :param str resource_name: The name of the resource.
1021
1218
  :param InstanceArgs args: The arguments to use to populate this resource's properties.
1022
1219
  :param pulumi.ResourceOptions opts: Options for the resource.
@@ -1113,9 +1310,11 @@ class Instance(pulumi.CustomResource):
1113
1310
  :param str resource_name: The unique name of the resulting resource.
1114
1311
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1115
1312
  :param pulumi.ResourceOptions opts: Options for the resource.
1116
- :param pulumi.Input[str] apikey: API key needed to communicate to CloudAMQP's second API. The second API is used to manage alarms, integration and more, full description [CloudAMQP API](https://docs.cloudamqp.com/cloudamqp_api.html).
1313
+ :param pulumi.Input[str] apikey: API key needed to communicate to CloudAMQP's second API. The second API is used
1314
+ to manage alarms, integration and more, full description [CloudAMQP API].
1117
1315
  :param pulumi.Input[str] backend: Information if the CloudAMQP instance runs either RabbitMQ or LavinMQ.
1118
- :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceCopySettingArgs', 'InstanceCopySettingArgsDict']]]] copy_settings: Copy settings from one CloudAMQP instance to a new. Consists of the block documented below.
1316
+ :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceCopySettingArgs', 'InstanceCopySettingArgsDict']]]] copy_settings: Copy settings from one CloudAMQP instance to a new. Consists of
1317
+ the block documented below.
1119
1318
 
1120
1319
  ___
1121
1320
 
@@ -1123,29 +1322,40 @@ class Instance(pulumi.CustomResource):
1123
1322
  :param pulumi.Input[bool] dedicated: Information if the CloudAMQP instance is shared or dedicated.
1124
1323
  :param pulumi.Input[str] host: The external hostname for the CloudAMQP instance.
1125
1324
  :param pulumi.Input[str] host_internal: The internal hostname for the CloudAMQP instance.
1126
- :param pulumi.Input[bool] keep_associated_vpc: Keep associated VPC when deleting instance, default set to false.
1325
+ :param pulumi.Input[bool] keep_associated_vpc: Keep associated VPC when deleting instance. Default set to
1326
+ false.
1127
1327
  :param pulumi.Input[str] name: Name of the CloudAMQP instance.
1128
- :param pulumi.Input[bool] no_default_alarms: Set to true to discard creating default alarms when the instance is created. Can be left out, will then use default value = false.
1129
- :param pulumi.Input[int] nodes: Number of nodes, 1, 3 or 5 depending on plan used. Only needed for legacy plans, will otherwise be computed.
1328
+ :param pulumi.Input[bool] no_default_alarms: Set to true to not create default alarms
1329
+ :param pulumi.Input[int] nodes: Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
1330
+ legacy plans, will otherwise be computed.
1130
1331
 
1131
- ***Deprecated: Legacy subscriptions plan can still change this to scale up or down the instance. New subscriptions plans use the plan to determine number of nodes. In order to change number of nodes the `plan` needs to be updated.***
1132
- :param pulumi.Input[str] plan: The subscription plan. See available plans
1332
+ ***Deprecated:*** Legacy subscriptions plan can still change this to scale up or down the instance.
1333
+ New subscriptions plans use the plan to determine number of nodes. In order to
1334
+ change number of nodes the `plan` needs to be updated.
1335
+ :param pulumi.Input[str] plan: The subscription plan. See available [plans].
1133
1336
  :param pulumi.Input[bool] ready: Flag describing if the resource is ready
1134
- :param pulumi.Input[str] region: The region to host the instance in. See instance regions
1337
+ :param pulumi.Input[str] region: The region to host the instance in. See available [regions].
1135
1338
 
1136
- ***Note: Changing region will force the instance to be destroyed and a new created in the new region. All data will be lost and a new name assigned.***
1137
- :param pulumi.Input[str] rmq_version: The Rabbit MQ version. Can be left out, will then be set to default value used by CloudAMQP API.
1339
+ ***Note:*** Changing region will force the instance to be destroyed and a new created in the new
1340
+ region. All data will be lost and a new name assigned.
1341
+ :param pulumi.Input[str] rmq_version: The Rabbit MQ version. Can be left out, will then be set to
1342
+ default value used by CloudAMQP API.
1138
1343
 
1139
- ***Note: There is not yet any support in the provider to change the RMQ version. Once it's set in the initial creation, it will remain.***
1140
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: One or more tags for the CloudAMQP instance, makes it possible to categories multiple instances in console view. Default there is no tags assigned.
1141
- :param pulumi.Input[str] url: The AMQP URL (uses the internal hostname if the instance was created with VPC). Has the format: `amqps://{username}:{password}@{hostname}/{vhost}`
1344
+ ***Note:*** There is not yet any support in the provider to change the RMQ version. Once it's set
1345
+ in the initial creation, it will remain.
1346
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: One or more tags for the CloudAMQP instance, makes it possible to
1347
+ categories multiple instances in console view. Default there is no tags assigned.
1348
+ :param pulumi.Input[str] url: The AMQP URL (uses the internal hostname if the instance was created with VPC).
1349
+ Has the format: `amqps://{username}:{password}@{hostname}/{vhost}`
1142
1350
  :param pulumi.Input[str] vhost: The virtual host used by Rabbit MQ.
1143
- :param pulumi.Input[int] vpc_id: The VPC ID. Use this to create your instance in an existing VPC. See available example.
1144
- :param pulumi.Input[str] vpc_subnet: Creates a dedicated VPC subnet, shouldn't overlap with other VPC subnet, default subnet used 10.56.72.0/24.
1351
+ :param pulumi.Input[int] vpc_id: The VPC ID. Use this to create your instance in an existing
1352
+ VPC. See available [example].
1353
+ :param pulumi.Input[str] vpc_subnet: Creates a dedicated VPC subnet, shouldn't overlap with other
1354
+ VPC subnet, default subnet used 10.56.72.0/24.
1145
1355
 
1146
- ***Deprecated: Will be removed in next major version (v2.0)***
1356
+ ***Deprecated:*** Will be removed in next major version (v2.0)
1147
1357
 
1148
- ***Note: extra fee will be charged when using VPC, see [CloudAMQP](https://cloudamqp.com) for more information.***
1358
+ ***Note:*** Extra fee will be charged when using VPC, see [CloudAMQP] for more information.
1149
1359
  """
1150
1360
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1151
1361
 
@@ -1176,7 +1386,8 @@ class Instance(pulumi.CustomResource):
1176
1386
  @pulumi.getter
1177
1387
  def apikey(self) -> pulumi.Output[str]:
1178
1388
  """
1179
- API key needed to communicate to CloudAMQP's second API. The second API is used to manage alarms, integration and more, full description [CloudAMQP API](https://docs.cloudamqp.com/cloudamqp_api.html).
1389
+ API key needed to communicate to CloudAMQP's second API. The second API is used
1390
+ to manage alarms, integration and more, full description [CloudAMQP API].
1180
1391
  """
1181
1392
  return pulumi.get(self, "apikey")
1182
1393
 
@@ -1192,7 +1403,8 @@ class Instance(pulumi.CustomResource):
1192
1403
  @pulumi.getter(name="copySettings")
1193
1404
  def copy_settings(self) -> pulumi.Output[Optional[Sequence['outputs.InstanceCopySetting']]]:
1194
1405
  """
1195
- Copy settings from one CloudAMQP instance to a new. Consists of the block documented below.
1406
+ Copy settings from one CloudAMQP instance to a new. Consists of
1407
+ the block documented below.
1196
1408
 
1197
1409
  ___
1198
1410
 
@@ -1228,7 +1440,8 @@ class Instance(pulumi.CustomResource):
1228
1440
  @pulumi.getter(name="keepAssociatedVpc")
1229
1441
  def keep_associated_vpc(self) -> pulumi.Output[Optional[bool]]:
1230
1442
  """
1231
- Keep associated VPC when deleting instance, default set to false.
1443
+ Keep associated VPC when deleting instance. Default set to
1444
+ false.
1232
1445
  """
1233
1446
  return pulumi.get(self, "keep_associated_vpc")
1234
1447
 
@@ -1244,7 +1457,7 @@ class Instance(pulumi.CustomResource):
1244
1457
  @pulumi.getter(name="noDefaultAlarms")
1245
1458
  def no_default_alarms(self) -> pulumi.Output[bool]:
1246
1459
  """
1247
- Set to true to discard creating default alarms when the instance is created. Can be left out, will then use default value = false.
1460
+ Set to true to not create default alarms
1248
1461
  """
1249
1462
  return pulumi.get(self, "no_default_alarms")
1250
1463
 
@@ -1252,9 +1465,12 @@ class Instance(pulumi.CustomResource):
1252
1465
  @pulumi.getter
1253
1466
  def nodes(self) -> pulumi.Output[int]:
1254
1467
  """
1255
- Number of nodes, 1, 3 or 5 depending on plan used. Only needed for legacy plans, will otherwise be computed.
1468
+ Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
1469
+ legacy plans, will otherwise be computed.
1256
1470
 
1257
- ***Deprecated: Legacy subscriptions plan can still change this to scale up or down the instance. New subscriptions plans use the plan to determine number of nodes. In order to change number of nodes the `plan` needs to be updated.***
1471
+ ***Deprecated:*** Legacy subscriptions plan can still change this to scale up or down the instance.
1472
+ New subscriptions plans use the plan to determine number of nodes. In order to
1473
+ change number of nodes the `plan` needs to be updated.
1258
1474
  """
1259
1475
  return pulumi.get(self, "nodes")
1260
1476
 
@@ -1262,7 +1478,7 @@ class Instance(pulumi.CustomResource):
1262
1478
  @pulumi.getter
1263
1479
  def plan(self) -> pulumi.Output[str]:
1264
1480
  """
1265
- The subscription plan. See available plans
1481
+ The subscription plan. See available [plans].
1266
1482
  """
1267
1483
  return pulumi.get(self, "plan")
1268
1484
 
@@ -1278,9 +1494,10 @@ class Instance(pulumi.CustomResource):
1278
1494
  @pulumi.getter
1279
1495
  def region(self) -> pulumi.Output[str]:
1280
1496
  """
1281
- The region to host the instance in. See instance regions
1497
+ The region to host the instance in. See available [regions].
1282
1498
 
1283
- ***Note: Changing region will force the instance to be destroyed and a new created in the new region. All data will be lost and a new name assigned.***
1499
+ ***Note:*** Changing region will force the instance to be destroyed and a new created in the new
1500
+ region. All data will be lost and a new name assigned.
1284
1501
  """
1285
1502
  return pulumi.get(self, "region")
1286
1503
 
@@ -1288,9 +1505,11 @@ class Instance(pulumi.CustomResource):
1288
1505
  @pulumi.getter(name="rmqVersion")
1289
1506
  def rmq_version(self) -> pulumi.Output[str]:
1290
1507
  """
1291
- The Rabbit MQ version. Can be left out, will then be set to default value used by CloudAMQP API.
1508
+ The Rabbit MQ version. Can be left out, will then be set to
1509
+ default value used by CloudAMQP API.
1292
1510
 
1293
- ***Note: There is not yet any support in the provider to change the RMQ version. Once it's set in the initial creation, it will remain.***
1511
+ ***Note:*** There is not yet any support in the provider to change the RMQ version. Once it's set
1512
+ in the initial creation, it will remain.
1294
1513
  """
1295
1514
  return pulumi.get(self, "rmq_version")
1296
1515
 
@@ -1298,7 +1517,8 @@ class Instance(pulumi.CustomResource):
1298
1517
  @pulumi.getter
1299
1518
  def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
1300
1519
  """
1301
- One or more tags for the CloudAMQP instance, makes it possible to categories multiple instances in console view. Default there is no tags assigned.
1520
+ One or more tags for the CloudAMQP instance, makes it possible to
1521
+ categories multiple instances in console view. Default there is no tags assigned.
1302
1522
  """
1303
1523
  return pulumi.get(self, "tags")
1304
1524
 
@@ -1306,7 +1526,8 @@ class Instance(pulumi.CustomResource):
1306
1526
  @pulumi.getter
1307
1527
  def url(self) -> pulumi.Output[str]:
1308
1528
  """
1309
- The AMQP URL (uses the internal hostname if the instance was created with VPC). Has the format: `amqps://{username}:{password}@{hostname}/{vhost}`
1529
+ The AMQP URL (uses the internal hostname if the instance was created with VPC).
1530
+ Has the format: `amqps://{username}:{password}@{hostname}/{vhost}`
1310
1531
  """
1311
1532
  return pulumi.get(self, "url")
1312
1533
 
@@ -1322,7 +1543,8 @@ class Instance(pulumi.CustomResource):
1322
1543
  @pulumi.getter(name="vpcId")
1323
1544
  def vpc_id(self) -> pulumi.Output[int]:
1324
1545
  """
1325
- The VPC ID. Use this to create your instance in an existing VPC. See available example.
1546
+ The VPC ID. Use this to create your instance in an existing
1547
+ VPC. See available [example].
1326
1548
  """
1327
1549
  return pulumi.get(self, "vpc_id")
1328
1550
 
@@ -1330,11 +1552,12 @@ class Instance(pulumi.CustomResource):
1330
1552
  @pulumi.getter(name="vpcSubnet")
1331
1553
  def vpc_subnet(self) -> pulumi.Output[str]:
1332
1554
  """
1333
- Creates a dedicated VPC subnet, shouldn't overlap with other VPC subnet, default subnet used 10.56.72.0/24.
1555
+ Creates a dedicated VPC subnet, shouldn't overlap with other
1556
+ VPC subnet, default subnet used 10.56.72.0/24.
1334
1557
 
1335
- ***Deprecated: Will be removed in next major version (v2.0)***
1558
+ ***Deprecated:*** Will be removed in next major version (v2.0)
1336
1559
 
1337
- ***Note: extra fee will be charged when using VPC, see [CloudAMQP](https://cloudamqp.com) for more information.***
1560
+ ***Note:*** Extra fee will be charged when using VPC, see [CloudAMQP] for more information.
1338
1561
  """
1339
1562
  return pulumi.get(self, "vpc_subnet")
1340
1563