pulumi-cloudamqp 3.23.0a1746768292__py3-none-any.whl → 3.24.2__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 (54) hide show
  1. pulumi_cloudamqp/__init__.py +23 -5
  2. pulumi_cloudamqp/_inputs.py +633 -82
  3. pulumi_cloudamqp/_utilities.py +1 -1
  4. pulumi_cloudamqp/{account_action.py → account_actions.py} +60 -74
  5. pulumi_cloudamqp/alarm.py +189 -190
  6. pulumi_cloudamqp/config/__init__.py +2 -2
  7. pulumi_cloudamqp/config/__init__.pyi +2 -3
  8. pulumi_cloudamqp/config/vars.py +5 -6
  9. pulumi_cloudamqp/custom_domain.py +40 -41
  10. pulumi_cloudamqp/extra_disk_size.py +89 -90
  11. pulumi_cloudamqp/get_account.py +5 -6
  12. pulumi_cloudamqp/get_account_vpcs.py +5 -6
  13. pulumi_cloudamqp/get_alarm.py +44 -45
  14. pulumi_cloudamqp/get_alarms.py +17 -18
  15. pulumi_cloudamqp/get_credentials.py +14 -15
  16. pulumi_cloudamqp/get_instance.py +44 -45
  17. pulumi_cloudamqp/get_nodes.py +11 -12
  18. pulumi_cloudamqp/get_notification.py +32 -33
  19. pulumi_cloudamqp/get_notifications.py +11 -12
  20. pulumi_cloudamqp/get_plugins.py +23 -24
  21. pulumi_cloudamqp/get_plugins_community.py +23 -24
  22. pulumi_cloudamqp/get_upgradable_versions.py +14 -15
  23. pulumi_cloudamqp/get_vpc_gcp_info.py +34 -35
  24. pulumi_cloudamqp/get_vpc_info.py +24 -25
  25. pulumi_cloudamqp/instance.py +428 -280
  26. pulumi_cloudamqp/integration_aws_eventbridge.py +246 -116
  27. pulumi_cloudamqp/integration_log.py +982 -581
  28. pulumi_cloudamqp/integration_metric.py +615 -479
  29. pulumi_cloudamqp/integration_metric_prometheus.py +770 -0
  30. pulumi_cloudamqp/maintenance_window.py +76 -73
  31. pulumi_cloudamqp/node_actions.py +62 -63
  32. pulumi_cloudamqp/notification.py +92 -93
  33. pulumi_cloudamqp/oauth2_configuration.py +1042 -0
  34. pulumi_cloudamqp/outputs.py +680 -241
  35. pulumi_cloudamqp/plugin.py +105 -106
  36. pulumi_cloudamqp/plugin_community.py +105 -106
  37. pulumi_cloudamqp/privatelink_aws.py +97 -98
  38. pulumi_cloudamqp/privatelink_azure.py +97 -98
  39. pulumi_cloudamqp/provider.py +32 -34
  40. pulumi_cloudamqp/pulumi-plugin.json +1 -1
  41. pulumi_cloudamqp/rabbit_configuration.py +206 -221
  42. pulumi_cloudamqp/security_firewall.py +56 -57
  43. pulumi_cloudamqp/upgrade_lavinmq.py +36 -37
  44. pulumi_cloudamqp/upgrade_rabbitmq.py +53 -54
  45. pulumi_cloudamqp/vpc.py +83 -84
  46. pulumi_cloudamqp/vpc_connect.py +148 -149
  47. pulumi_cloudamqp/vpc_gcp_peering.py +131 -132
  48. pulumi_cloudamqp/vpc_peering.py +96 -97
  49. pulumi_cloudamqp/webhook.py +121 -122
  50. {pulumi_cloudamqp-3.23.0a1746768292.dist-info → pulumi_cloudamqp-3.24.2.dist-info}/METADATA +1 -1
  51. pulumi_cloudamqp-3.24.2.dist-info/RECORD +54 -0
  52. {pulumi_cloudamqp-3.23.0a1746768292.dist-info → pulumi_cloudamqp-3.24.2.dist-info}/WHEEL +1 -1
  53. pulumi_cloudamqp-3.23.0a1746768292.dist-info/RECORD +0 -52
  54. {pulumi_cloudamqp-3.23.0a1746768292.dist-info → pulumi_cloudamqp-3.24.2.dist-info}/top_level.txt +0 -0
@@ -1,9 +1,8 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import builtins
6
- import copy
5
+ import builtins as _builtins
7
6
  import warnings
8
7
  import sys
9
8
  import pulumi
@@ -22,50 +21,58 @@ __all__ = ['InstanceArgs', 'Instance']
22
21
  @pulumi.input_type
23
22
  class InstanceArgs:
24
23
  def __init__(__self__, *,
25
- plan: pulumi.Input[builtins.str],
26
- region: pulumi.Input[builtins.str],
24
+ plan: pulumi.Input[_builtins.str],
25
+ region: pulumi.Input[_builtins.str],
27
26
  copy_settings: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceCopySettingArgs']]]] = None,
28
- keep_associated_vpc: Optional[pulumi.Input[builtins.bool]] = None,
29
- name: Optional[pulumi.Input[builtins.str]] = None,
30
- no_default_alarms: Optional[pulumi.Input[builtins.bool]] = None,
31
- nodes: Optional[pulumi.Input[builtins.int]] = None,
32
- rmq_version: Optional[pulumi.Input[builtins.str]] = None,
33
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
34
- vpc_id: Optional[pulumi.Input[builtins.int]] = None,
35
- vpc_subnet: Optional[pulumi.Input[builtins.str]] = None):
27
+ keep_associated_vpc: Optional[pulumi.Input[_builtins.bool]] = None,
28
+ name: Optional[pulumi.Input[_builtins.str]] = None,
29
+ no_default_alarms: Optional[pulumi.Input[_builtins.bool]] = None,
30
+ nodes: Optional[pulumi.Input[_builtins.int]] = None,
31
+ preferred_azs: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
32
+ rmq_version: Optional[pulumi.Input[_builtins.str]] = None,
33
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
34
+ vpc_id: Optional[pulumi.Input[_builtins.int]] = None,
35
+ vpc_subnet: Optional[pulumi.Input[_builtins.str]] = None):
36
36
  """
37
37
  The set of arguments for constructing a Instance resource.
38
- :param pulumi.Input[builtins.str] plan: The subscription plan. See available [plans].
39
- :param pulumi.Input[builtins.str] region: The region to host the instance in. See available [regions].
38
+ :param pulumi.Input[_builtins.str] plan: The subscription plan. See available [plans].
39
+ :param pulumi.Input[_builtins.str] region: The region to host the instance in. See available [regions].
40
40
 
41
41
  ***Note:*** Changing region will force the instance to be destroyed and a new created in the new
42
42
  region. All data will be lost and a new name assigned.
43
43
  :param pulumi.Input[Sequence[pulumi.Input['InstanceCopySettingArgs']]] copy_settings: Copy settings from one CloudAMQP instance to a new. Consists of
44
44
  the block documented below.
45
-
46
- ___
47
-
48
- The `copy_settings` block consists of:
49
- :param pulumi.Input[builtins.bool] keep_associated_vpc: Keep associated VPC when deleting instance. Default set to
45
+ :param pulumi.Input[_builtins.bool] keep_associated_vpc: Keep associated VPC when deleting instance. Default set to
50
46
  false.
51
- :param pulumi.Input[builtins.str] name: Name of the CloudAMQP instance.
52
- :param pulumi.Input[builtins.bool] no_default_alarms: Set to true to not create default alarms
53
- :param pulumi.Input[builtins.int] nodes: Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
47
+ :param pulumi.Input[_builtins.str] name: Name of the CloudAMQP instance.
48
+ :param pulumi.Input[_builtins.bool] no_default_alarms: Set to true to not create default alarms
49
+ :param pulumi.Input[_builtins.int] nodes: Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
54
50
  legacy plans, will otherwise be computed.
55
51
 
56
52
  ***Deprecated:*** Legacy subscriptions plan can still change this to scale up or down the instance.
57
53
  New subscriptions plans use the plan to determine number of nodes. In order to
58
54
  change number of nodes the `plan` needs to be updated.
59
- :param pulumi.Input[builtins.str] rmq_version: The Rabbit MQ version. Can be left out, will then be set to
55
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] preferred_azs: The AZs to place your nodes in. Each entry corresponds to a server in your cluster, so for a 3 node cluster, provide 3 AZs in the list.
56
+
57
+ ***Note:*** `preferred_az` can only be set upon instance creation as of now and the result is not guaranteed. On eventual failed resource allocation in the zone, CloudAMQP will fallback to a different zone.
58
+ * AWS: AZ id in [aws-availability-zones]
59
+ * Azure: 1,2 or 3 in supported regions [azure-region-list]
60
+ * GCP: zones in [gcp-region-zones]
61
+ * Digital Ocean: Slug in [do-regional-availability]
62
+
63
+ ___
64
+
65
+ The `copy_settings` block consists of:
66
+ :param pulumi.Input[_builtins.str] rmq_version: The Rabbit MQ version. Can be left out, will then be set to
60
67
  default value used by CloudAMQP API.
61
68
 
62
69
  ***Note:*** There is not yet any support in the provider to change the RMQ version. Once it's set
63
70
  in the initial creation, it will remain.
64
- :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: One or more tags for the CloudAMQP instance, makes it possible to
71
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: One or more tags for the CloudAMQP instance, makes it possible to
65
72
  categories multiple instances in console view. Default there is no tags assigned.
66
- :param pulumi.Input[builtins.int] vpc_id: The VPC ID. Use this to create your instance in an existing
73
+ :param pulumi.Input[_builtins.int] vpc_id: The VPC ID. Use this to create your instance in an existing
67
74
  VPC. See available [example].
68
- :param pulumi.Input[builtins.str] vpc_subnet: Creates a dedicated VPC subnet, shouldn't overlap with other
75
+ :param pulumi.Input[_builtins.str] vpc_subnet: Creates a dedicated VPC subnet, shouldn't overlap with other
69
76
  VPC subnet, default subnet used 10.56.72.0/24.
70
77
 
71
78
  ***Deprecated:*** Will be removed in next major version (v2.0)
@@ -84,6 +91,8 @@ class InstanceArgs:
84
91
  pulumi.set(__self__, "no_default_alarms", no_default_alarms)
85
92
  if nodes is not None:
86
93
  pulumi.set(__self__, "nodes", nodes)
94
+ if preferred_azs is not None:
95
+ pulumi.set(__self__, "preferred_azs", preferred_azs)
87
96
  if rmq_version is not None:
88
97
  pulumi.set(__self__, "rmq_version", rmq_version)
89
98
  if tags is not None:
@@ -93,21 +102,21 @@ class InstanceArgs:
93
102
  if vpc_subnet is not None:
94
103
  pulumi.set(__self__, "vpc_subnet", vpc_subnet)
95
104
 
96
- @property
105
+ @_builtins.property
97
106
  @pulumi.getter
98
- def plan(self) -> pulumi.Input[builtins.str]:
107
+ def plan(self) -> pulumi.Input[_builtins.str]:
99
108
  """
100
109
  The subscription plan. See available [plans].
101
110
  """
102
111
  return pulumi.get(self, "plan")
103
112
 
104
113
  @plan.setter
105
- def plan(self, value: pulumi.Input[builtins.str]):
114
+ def plan(self, value: pulumi.Input[_builtins.str]):
106
115
  pulumi.set(self, "plan", value)
107
116
 
108
- @property
117
+ @_builtins.property
109
118
  @pulumi.getter
110
- def region(self) -> pulumi.Input[builtins.str]:
119
+ def region(self) -> pulumi.Input[_builtins.str]:
111
120
  """
112
121
  The region to host the instance in. See available [regions].
113
122
 
@@ -117,19 +126,15 @@ class InstanceArgs:
117
126
  return pulumi.get(self, "region")
118
127
 
119
128
  @region.setter
120
- def region(self, value: pulumi.Input[builtins.str]):
129
+ def region(self, value: pulumi.Input[_builtins.str]):
121
130
  pulumi.set(self, "region", value)
122
131
 
123
- @property
132
+ @_builtins.property
124
133
  @pulumi.getter(name="copySettings")
125
134
  def copy_settings(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceCopySettingArgs']]]]:
126
135
  """
127
136
  Copy settings from one CloudAMQP instance to a new. Consists of
128
137
  the block documented below.
129
-
130
- ___
131
-
132
- The `copy_settings` block consists of:
133
138
  """
134
139
  return pulumi.get(self, "copy_settings")
135
140
 
@@ -137,9 +142,9 @@ class InstanceArgs:
137
142
  def copy_settings(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceCopySettingArgs']]]]):
138
143
  pulumi.set(self, "copy_settings", value)
139
144
 
140
- @property
145
+ @_builtins.property
141
146
  @pulumi.getter(name="keepAssociatedVpc")
142
- def keep_associated_vpc(self) -> Optional[pulumi.Input[builtins.bool]]:
147
+ def keep_associated_vpc(self) -> Optional[pulumi.Input[_builtins.bool]]:
143
148
  """
144
149
  Keep associated VPC when deleting instance. Default set to
145
150
  false.
@@ -147,36 +152,36 @@ class InstanceArgs:
147
152
  return pulumi.get(self, "keep_associated_vpc")
148
153
 
149
154
  @keep_associated_vpc.setter
150
- def keep_associated_vpc(self, value: Optional[pulumi.Input[builtins.bool]]):
155
+ def keep_associated_vpc(self, value: Optional[pulumi.Input[_builtins.bool]]):
151
156
  pulumi.set(self, "keep_associated_vpc", value)
152
157
 
153
- @property
158
+ @_builtins.property
154
159
  @pulumi.getter
155
- def name(self) -> Optional[pulumi.Input[builtins.str]]:
160
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
156
161
  """
157
162
  Name of the CloudAMQP instance.
158
163
  """
159
164
  return pulumi.get(self, "name")
160
165
 
161
166
  @name.setter
162
- def name(self, value: Optional[pulumi.Input[builtins.str]]):
167
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
163
168
  pulumi.set(self, "name", value)
164
169
 
165
- @property
170
+ @_builtins.property
166
171
  @pulumi.getter(name="noDefaultAlarms")
167
- def no_default_alarms(self) -> Optional[pulumi.Input[builtins.bool]]:
172
+ def no_default_alarms(self) -> Optional[pulumi.Input[_builtins.bool]]:
168
173
  """
169
174
  Set to true to not create default alarms
170
175
  """
171
176
  return pulumi.get(self, "no_default_alarms")
172
177
 
173
178
  @no_default_alarms.setter
174
- def no_default_alarms(self, value: Optional[pulumi.Input[builtins.bool]]):
179
+ def no_default_alarms(self, value: Optional[pulumi.Input[_builtins.bool]]):
175
180
  pulumi.set(self, "no_default_alarms", value)
176
181
 
177
- @property
182
+ @_builtins.property
178
183
  @pulumi.getter
179
- def nodes(self) -> Optional[pulumi.Input[builtins.int]]:
184
+ def nodes(self) -> Optional[pulumi.Input[_builtins.int]]:
180
185
  """
181
186
  Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
182
187
  legacy plans, will otherwise be computed.
@@ -188,12 +193,34 @@ class InstanceArgs:
188
193
  return pulumi.get(self, "nodes")
189
194
 
190
195
  @nodes.setter
191
- def nodes(self, value: Optional[pulumi.Input[builtins.int]]):
196
+ def nodes(self, value: Optional[pulumi.Input[_builtins.int]]):
192
197
  pulumi.set(self, "nodes", value)
193
198
 
194
- @property
199
+ @_builtins.property
200
+ @pulumi.getter(name="preferredAzs")
201
+ def preferred_azs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
202
+ """
203
+ The AZs to place your nodes in. Each entry corresponds to a server in your cluster, so for a 3 node cluster, provide 3 AZs in the list.
204
+
205
+ ***Note:*** `preferred_az` can only be set upon instance creation as of now and the result is not guaranteed. On eventual failed resource allocation in the zone, CloudAMQP will fallback to a different zone.
206
+ * AWS: AZ id in [aws-availability-zones]
207
+ * Azure: 1,2 or 3 in supported regions [azure-region-list]
208
+ * GCP: zones in [gcp-region-zones]
209
+ * Digital Ocean: Slug in [do-regional-availability]
210
+
211
+ ___
212
+
213
+ The `copy_settings` block consists of:
214
+ """
215
+ return pulumi.get(self, "preferred_azs")
216
+
217
+ @preferred_azs.setter
218
+ def preferred_azs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
219
+ pulumi.set(self, "preferred_azs", value)
220
+
221
+ @_builtins.property
195
222
  @pulumi.getter(name="rmqVersion")
196
- def rmq_version(self) -> Optional[pulumi.Input[builtins.str]]:
223
+ def rmq_version(self) -> Optional[pulumi.Input[_builtins.str]]:
197
224
  """
198
225
  The Rabbit MQ version. Can be left out, will then be set to
199
226
  default value used by CloudAMQP API.
@@ -204,12 +231,12 @@ class InstanceArgs:
204
231
  return pulumi.get(self, "rmq_version")
205
232
 
206
233
  @rmq_version.setter
207
- def rmq_version(self, value: Optional[pulumi.Input[builtins.str]]):
234
+ def rmq_version(self, value: Optional[pulumi.Input[_builtins.str]]):
208
235
  pulumi.set(self, "rmq_version", value)
209
236
 
210
- @property
237
+ @_builtins.property
211
238
  @pulumi.getter
212
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
239
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
213
240
  """
214
241
  One or more tags for the CloudAMQP instance, makes it possible to
215
242
  categories multiple instances in console view. Default there is no tags assigned.
@@ -217,12 +244,12 @@ class InstanceArgs:
217
244
  return pulumi.get(self, "tags")
218
245
 
219
246
  @tags.setter
220
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
247
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
221
248
  pulumi.set(self, "tags", value)
222
249
 
223
- @property
250
+ @_builtins.property
224
251
  @pulumi.getter(name="vpcId")
225
- def vpc_id(self) -> Optional[pulumi.Input[builtins.int]]:
252
+ def vpc_id(self) -> Optional[pulumi.Input[_builtins.int]]:
226
253
  """
227
254
  The VPC ID. Use this to create your instance in an existing
228
255
  VPC. See available [example].
@@ -230,12 +257,12 @@ class InstanceArgs:
230
257
  return pulumi.get(self, "vpc_id")
231
258
 
232
259
  @vpc_id.setter
233
- def vpc_id(self, value: Optional[pulumi.Input[builtins.int]]):
260
+ def vpc_id(self, value: Optional[pulumi.Input[_builtins.int]]):
234
261
  pulumi.set(self, "vpc_id", value)
235
262
 
236
- @property
263
+ @_builtins.property
237
264
  @pulumi.getter(name="vpcSubnet")
238
- def vpc_subnet(self) -> Optional[pulumi.Input[builtins.str]]:
265
+ def vpc_subnet(self) -> Optional[pulumi.Input[_builtins.str]]:
239
266
  """
240
267
  Creates a dedicated VPC subnet, shouldn't overlap with other
241
268
  VPC subnet, default subnet used 10.56.72.0/24.
@@ -247,75 +274,83 @@ class InstanceArgs:
247
274
  return pulumi.get(self, "vpc_subnet")
248
275
 
249
276
  @vpc_subnet.setter
250
- def vpc_subnet(self, value: Optional[pulumi.Input[builtins.str]]):
277
+ def vpc_subnet(self, value: Optional[pulumi.Input[_builtins.str]]):
251
278
  pulumi.set(self, "vpc_subnet", value)
252
279
 
253
280
 
254
281
  @pulumi.input_type
255
282
  class _InstanceState:
256
283
  def __init__(__self__, *,
257
- apikey: Optional[pulumi.Input[builtins.str]] = None,
258
- backend: Optional[pulumi.Input[builtins.str]] = None,
284
+ apikey: Optional[pulumi.Input[_builtins.str]] = None,
285
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
259
286
  copy_settings: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceCopySettingArgs']]]] = None,
260
- dedicated: Optional[pulumi.Input[builtins.bool]] = None,
261
- host: Optional[pulumi.Input[builtins.str]] = None,
262
- host_internal: Optional[pulumi.Input[builtins.str]] = None,
263
- keep_associated_vpc: Optional[pulumi.Input[builtins.bool]] = None,
264
- name: Optional[pulumi.Input[builtins.str]] = None,
265
- no_default_alarms: Optional[pulumi.Input[builtins.bool]] = None,
266
- nodes: Optional[pulumi.Input[builtins.int]] = None,
267
- plan: Optional[pulumi.Input[builtins.str]] = None,
268
- ready: Optional[pulumi.Input[builtins.bool]] = None,
269
- region: Optional[pulumi.Input[builtins.str]] = None,
270
- rmq_version: Optional[pulumi.Input[builtins.str]] = None,
271
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
272
- url: Optional[pulumi.Input[builtins.str]] = None,
273
- vhost: Optional[pulumi.Input[builtins.str]] = None,
274
- vpc_id: Optional[pulumi.Input[builtins.int]] = None,
275
- vpc_subnet: Optional[pulumi.Input[builtins.str]] = None):
287
+ dedicated: Optional[pulumi.Input[_builtins.bool]] = None,
288
+ host: Optional[pulumi.Input[_builtins.str]] = None,
289
+ host_internal: Optional[pulumi.Input[_builtins.str]] = None,
290
+ keep_associated_vpc: Optional[pulumi.Input[_builtins.bool]] = None,
291
+ name: Optional[pulumi.Input[_builtins.str]] = None,
292
+ no_default_alarms: Optional[pulumi.Input[_builtins.bool]] = None,
293
+ nodes: Optional[pulumi.Input[_builtins.int]] = None,
294
+ plan: Optional[pulumi.Input[_builtins.str]] = None,
295
+ preferred_azs: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
296
+ ready: Optional[pulumi.Input[_builtins.bool]] = None,
297
+ region: Optional[pulumi.Input[_builtins.str]] = None,
298
+ rmq_version: Optional[pulumi.Input[_builtins.str]] = None,
299
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
300
+ url: Optional[pulumi.Input[_builtins.str]] = None,
301
+ vhost: Optional[pulumi.Input[_builtins.str]] = None,
302
+ vpc_id: Optional[pulumi.Input[_builtins.int]] = None,
303
+ vpc_subnet: Optional[pulumi.Input[_builtins.str]] = None):
276
304
  """
277
305
  Input properties used for looking up and filtering Instance resources.
278
- :param pulumi.Input[builtins.str] apikey: API key needed to communicate to CloudAMQP's second API. The second API is used
306
+ :param pulumi.Input[_builtins.str] apikey: API key needed to communicate to CloudAMQP's second API. The second API is used
279
307
  to manage alarms, integration and more, full description [CloudAMQP API].
280
- :param pulumi.Input[builtins.str] backend: Information if the CloudAMQP instance runs either RabbitMQ or LavinMQ.
308
+ :param pulumi.Input[_builtins.str] backend: Information if the CloudAMQP instance runs either RabbitMQ or LavinMQ.
281
309
  :param pulumi.Input[Sequence[pulumi.Input['InstanceCopySettingArgs']]] copy_settings: Copy settings from one CloudAMQP instance to a new. Consists of
282
310
  the block documented below.
283
-
284
- ___
285
-
286
- The `copy_settings` block consists of:
287
- :param pulumi.Input[builtins.bool] dedicated: Information if the CloudAMQP instance is shared or dedicated.
288
- :param pulumi.Input[builtins.str] host: The external hostname for the CloudAMQP instance.
289
- :param pulumi.Input[builtins.str] host_internal: The internal hostname for the CloudAMQP instance.
290
- :param pulumi.Input[builtins.bool] keep_associated_vpc: Keep associated VPC when deleting instance. Default set to
311
+ :param pulumi.Input[_builtins.bool] dedicated: Information if the CloudAMQP instance is shared or dedicated.
312
+ :param pulumi.Input[_builtins.str] host: The external hostname for the CloudAMQP instance.
313
+ :param pulumi.Input[_builtins.str] host_internal: The internal hostname for the CloudAMQP instance.
314
+ :param pulumi.Input[_builtins.bool] keep_associated_vpc: Keep associated VPC when deleting instance. Default set to
291
315
  false.
292
- :param pulumi.Input[builtins.str] name: Name of the CloudAMQP instance.
293
- :param pulumi.Input[builtins.bool] no_default_alarms: Set to true to not create default alarms
294
- :param pulumi.Input[builtins.int] nodes: Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
316
+ :param pulumi.Input[_builtins.str] name: Name of the CloudAMQP instance.
317
+ :param pulumi.Input[_builtins.bool] no_default_alarms: Set to true to not create default alarms
318
+ :param pulumi.Input[_builtins.int] nodes: Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
295
319
  legacy plans, will otherwise be computed.
296
320
 
297
321
  ***Deprecated:*** Legacy subscriptions plan can still change this to scale up or down the instance.
298
322
  New subscriptions plans use the plan to determine number of nodes. In order to
299
323
  change number of nodes the `plan` needs to be updated.
300
- :param pulumi.Input[builtins.str] plan: The subscription plan. See available [plans].
301
- :param pulumi.Input[builtins.bool] ready: Flag describing if the resource is ready
302
- :param pulumi.Input[builtins.str] region: The region to host the instance in. See available [regions].
324
+ :param pulumi.Input[_builtins.str] plan: The subscription plan. See available [plans].
325
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] preferred_azs: The AZs to place your nodes in. Each entry corresponds to a server in your cluster, so for a 3 node cluster, provide 3 AZs in the list.
326
+
327
+ ***Note:*** `preferred_az` can only be set upon instance creation as of now and the result is not guaranteed. On eventual failed resource allocation in the zone, CloudAMQP will fallback to a different zone.
328
+ * AWS: AZ id in [aws-availability-zones]
329
+ * Azure: 1,2 or 3 in supported regions [azure-region-list]
330
+ * GCP: zones in [gcp-region-zones]
331
+ * Digital Ocean: Slug in [do-regional-availability]
332
+
333
+ ___
334
+
335
+ The `copy_settings` block consists of:
336
+ :param pulumi.Input[_builtins.bool] ready: Flag describing if the resource is ready
337
+ :param pulumi.Input[_builtins.str] region: The region to host the instance in. See available [regions].
303
338
 
304
339
  ***Note:*** Changing region will force the instance to be destroyed and a new created in the new
305
340
  region. All data will be lost and a new name assigned.
306
- :param pulumi.Input[builtins.str] rmq_version: The Rabbit MQ version. Can be left out, will then be set to
341
+ :param pulumi.Input[_builtins.str] rmq_version: The Rabbit MQ version. Can be left out, will then be set to
307
342
  default value used by CloudAMQP API.
308
343
 
309
344
  ***Note:*** There is not yet any support in the provider to change the RMQ version. Once it's set
310
345
  in the initial creation, it will remain.
311
- :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: One or more tags for the CloudAMQP instance, makes it possible to
346
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: One or more tags for the CloudAMQP instance, makes it possible to
312
347
  categories multiple instances in console view. Default there is no tags assigned.
313
- :param pulumi.Input[builtins.str] url: The AMQP URL (uses the internal hostname if the instance was created with VPC).
348
+ :param pulumi.Input[_builtins.str] url: The AMQP URL (uses the internal hostname if the instance was created with VPC).
314
349
  Has the format: `amqps://{username}:{password}@{hostname}/{vhost}`
315
- :param pulumi.Input[builtins.str] vhost: The virtual host used by Rabbit MQ.
316
- :param pulumi.Input[builtins.int] vpc_id: The VPC ID. Use this to create your instance in an existing
350
+ :param pulumi.Input[_builtins.str] vhost: The virtual host used by Rabbit MQ.
351
+ :param pulumi.Input[_builtins.int] vpc_id: The VPC ID. Use this to create your instance in an existing
317
352
  VPC. See available [example].
318
- :param pulumi.Input[builtins.str] vpc_subnet: Creates a dedicated VPC subnet, shouldn't overlap with other
353
+ :param pulumi.Input[_builtins.str] vpc_subnet: Creates a dedicated VPC subnet, shouldn't overlap with other
319
354
  VPC subnet, default subnet used 10.56.72.0/24.
320
355
 
321
356
  ***Deprecated:*** Will be removed in next major version (v2.0)
@@ -344,6 +379,8 @@ class _InstanceState:
344
379
  pulumi.set(__self__, "nodes", nodes)
345
380
  if plan is not None:
346
381
  pulumi.set(__self__, "plan", plan)
382
+ if preferred_azs is not None:
383
+ pulumi.set(__self__, "preferred_azs", preferred_azs)
347
384
  if ready is not None:
348
385
  pulumi.set(__self__, "ready", ready)
349
386
  if region is not None:
@@ -361,9 +398,9 @@ class _InstanceState:
361
398
  if vpc_subnet is not None:
362
399
  pulumi.set(__self__, "vpc_subnet", vpc_subnet)
363
400
 
364
- @property
401
+ @_builtins.property
365
402
  @pulumi.getter
366
- def apikey(self) -> Optional[pulumi.Input[builtins.str]]:
403
+ def apikey(self) -> Optional[pulumi.Input[_builtins.str]]:
367
404
  """
368
405
  API key needed to communicate to CloudAMQP's second API. The second API is used
369
406
  to manage alarms, integration and more, full description [CloudAMQP API].
@@ -371,31 +408,27 @@ class _InstanceState:
371
408
  return pulumi.get(self, "apikey")
372
409
 
373
410
  @apikey.setter
374
- def apikey(self, value: Optional[pulumi.Input[builtins.str]]):
411
+ def apikey(self, value: Optional[pulumi.Input[_builtins.str]]):
375
412
  pulumi.set(self, "apikey", value)
376
413
 
377
- @property
414
+ @_builtins.property
378
415
  @pulumi.getter
379
- def backend(self) -> Optional[pulumi.Input[builtins.str]]:
416
+ def backend(self) -> Optional[pulumi.Input[_builtins.str]]:
380
417
  """
381
418
  Information if the CloudAMQP instance runs either RabbitMQ or LavinMQ.
382
419
  """
383
420
  return pulumi.get(self, "backend")
384
421
 
385
422
  @backend.setter
386
- def backend(self, value: Optional[pulumi.Input[builtins.str]]):
423
+ def backend(self, value: Optional[pulumi.Input[_builtins.str]]):
387
424
  pulumi.set(self, "backend", value)
388
425
 
389
- @property
426
+ @_builtins.property
390
427
  @pulumi.getter(name="copySettings")
391
428
  def copy_settings(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceCopySettingArgs']]]]:
392
429
  """
393
430
  Copy settings from one CloudAMQP instance to a new. Consists of
394
431
  the block documented below.
395
-
396
- ___
397
-
398
- The `copy_settings` block consists of:
399
432
  """
400
433
  return pulumi.get(self, "copy_settings")
401
434
 
@@ -403,45 +436,45 @@ class _InstanceState:
403
436
  def copy_settings(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceCopySettingArgs']]]]):
404
437
  pulumi.set(self, "copy_settings", value)
405
438
 
406
- @property
439
+ @_builtins.property
407
440
  @pulumi.getter
408
- def dedicated(self) -> Optional[pulumi.Input[builtins.bool]]:
441
+ def dedicated(self) -> Optional[pulumi.Input[_builtins.bool]]:
409
442
  """
410
443
  Information if the CloudAMQP instance is shared or dedicated.
411
444
  """
412
445
  return pulumi.get(self, "dedicated")
413
446
 
414
447
  @dedicated.setter
415
- def dedicated(self, value: Optional[pulumi.Input[builtins.bool]]):
448
+ def dedicated(self, value: Optional[pulumi.Input[_builtins.bool]]):
416
449
  pulumi.set(self, "dedicated", value)
417
450
 
418
- @property
451
+ @_builtins.property
419
452
  @pulumi.getter
420
- def host(self) -> Optional[pulumi.Input[builtins.str]]:
453
+ def host(self) -> Optional[pulumi.Input[_builtins.str]]:
421
454
  """
422
455
  The external hostname for the CloudAMQP instance.
423
456
  """
424
457
  return pulumi.get(self, "host")
425
458
 
426
459
  @host.setter
427
- def host(self, value: Optional[pulumi.Input[builtins.str]]):
460
+ def host(self, value: Optional[pulumi.Input[_builtins.str]]):
428
461
  pulumi.set(self, "host", value)
429
462
 
430
- @property
463
+ @_builtins.property
431
464
  @pulumi.getter(name="hostInternal")
432
- def host_internal(self) -> Optional[pulumi.Input[builtins.str]]:
465
+ def host_internal(self) -> Optional[pulumi.Input[_builtins.str]]:
433
466
  """
434
467
  The internal hostname for the CloudAMQP instance.
435
468
  """
436
469
  return pulumi.get(self, "host_internal")
437
470
 
438
471
  @host_internal.setter
439
- def host_internal(self, value: Optional[pulumi.Input[builtins.str]]):
472
+ def host_internal(self, value: Optional[pulumi.Input[_builtins.str]]):
440
473
  pulumi.set(self, "host_internal", value)
441
474
 
442
- @property
475
+ @_builtins.property
443
476
  @pulumi.getter(name="keepAssociatedVpc")
444
- def keep_associated_vpc(self) -> Optional[pulumi.Input[builtins.bool]]:
477
+ def keep_associated_vpc(self) -> Optional[pulumi.Input[_builtins.bool]]:
445
478
  """
446
479
  Keep associated VPC when deleting instance. Default set to
447
480
  false.
@@ -449,36 +482,36 @@ class _InstanceState:
449
482
  return pulumi.get(self, "keep_associated_vpc")
450
483
 
451
484
  @keep_associated_vpc.setter
452
- def keep_associated_vpc(self, value: Optional[pulumi.Input[builtins.bool]]):
485
+ def keep_associated_vpc(self, value: Optional[pulumi.Input[_builtins.bool]]):
453
486
  pulumi.set(self, "keep_associated_vpc", value)
454
487
 
455
- @property
488
+ @_builtins.property
456
489
  @pulumi.getter
457
- def name(self) -> Optional[pulumi.Input[builtins.str]]:
490
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
458
491
  """
459
492
  Name of the CloudAMQP instance.
460
493
  """
461
494
  return pulumi.get(self, "name")
462
495
 
463
496
  @name.setter
464
- def name(self, value: Optional[pulumi.Input[builtins.str]]):
497
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
465
498
  pulumi.set(self, "name", value)
466
499
 
467
- @property
500
+ @_builtins.property
468
501
  @pulumi.getter(name="noDefaultAlarms")
469
- def no_default_alarms(self) -> Optional[pulumi.Input[builtins.bool]]:
502
+ def no_default_alarms(self) -> Optional[pulumi.Input[_builtins.bool]]:
470
503
  """
471
504
  Set to true to not create default alarms
472
505
  """
473
506
  return pulumi.get(self, "no_default_alarms")
474
507
 
475
508
  @no_default_alarms.setter
476
- def no_default_alarms(self, value: Optional[pulumi.Input[builtins.bool]]):
509
+ def no_default_alarms(self, value: Optional[pulumi.Input[_builtins.bool]]):
477
510
  pulumi.set(self, "no_default_alarms", value)
478
511
 
479
- @property
512
+ @_builtins.property
480
513
  @pulumi.getter
481
- def nodes(self) -> Optional[pulumi.Input[builtins.int]]:
514
+ def nodes(self) -> Optional[pulumi.Input[_builtins.int]]:
482
515
  """
483
516
  Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
484
517
  legacy plans, will otherwise be computed.
@@ -490,36 +523,58 @@ class _InstanceState:
490
523
  return pulumi.get(self, "nodes")
491
524
 
492
525
  @nodes.setter
493
- def nodes(self, value: Optional[pulumi.Input[builtins.int]]):
526
+ def nodes(self, value: Optional[pulumi.Input[_builtins.int]]):
494
527
  pulumi.set(self, "nodes", value)
495
528
 
496
- @property
529
+ @_builtins.property
497
530
  @pulumi.getter
498
- def plan(self) -> Optional[pulumi.Input[builtins.str]]:
531
+ def plan(self) -> Optional[pulumi.Input[_builtins.str]]:
499
532
  """
500
533
  The subscription plan. See available [plans].
501
534
  """
502
535
  return pulumi.get(self, "plan")
503
536
 
504
537
  @plan.setter
505
- def plan(self, value: Optional[pulumi.Input[builtins.str]]):
538
+ def plan(self, value: Optional[pulumi.Input[_builtins.str]]):
506
539
  pulumi.set(self, "plan", value)
507
540
 
508
- @property
541
+ @_builtins.property
542
+ @pulumi.getter(name="preferredAzs")
543
+ def preferred_azs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
544
+ """
545
+ The AZs to place your nodes in. Each entry corresponds to a server in your cluster, so for a 3 node cluster, provide 3 AZs in the list.
546
+
547
+ ***Note:*** `preferred_az` can only be set upon instance creation as of now and the result is not guaranteed. On eventual failed resource allocation in the zone, CloudAMQP will fallback to a different zone.
548
+ * AWS: AZ id in [aws-availability-zones]
549
+ * Azure: 1,2 or 3 in supported regions [azure-region-list]
550
+ * GCP: zones in [gcp-region-zones]
551
+ * Digital Ocean: Slug in [do-regional-availability]
552
+
553
+ ___
554
+
555
+ The `copy_settings` block consists of:
556
+ """
557
+ return pulumi.get(self, "preferred_azs")
558
+
559
+ @preferred_azs.setter
560
+ def preferred_azs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
561
+ pulumi.set(self, "preferred_azs", value)
562
+
563
+ @_builtins.property
509
564
  @pulumi.getter
510
- def ready(self) -> Optional[pulumi.Input[builtins.bool]]:
565
+ def ready(self) -> Optional[pulumi.Input[_builtins.bool]]:
511
566
  """
512
567
  Flag describing if the resource is ready
513
568
  """
514
569
  return pulumi.get(self, "ready")
515
570
 
516
571
  @ready.setter
517
- def ready(self, value: Optional[pulumi.Input[builtins.bool]]):
572
+ def ready(self, value: Optional[pulumi.Input[_builtins.bool]]):
518
573
  pulumi.set(self, "ready", value)
519
574
 
520
- @property
575
+ @_builtins.property
521
576
  @pulumi.getter
522
- def region(self) -> Optional[pulumi.Input[builtins.str]]:
577
+ def region(self) -> Optional[pulumi.Input[_builtins.str]]:
523
578
  """
524
579
  The region to host the instance in. See available [regions].
525
580
 
@@ -529,12 +584,12 @@ class _InstanceState:
529
584
  return pulumi.get(self, "region")
530
585
 
531
586
  @region.setter
532
- def region(self, value: Optional[pulumi.Input[builtins.str]]):
587
+ def region(self, value: Optional[pulumi.Input[_builtins.str]]):
533
588
  pulumi.set(self, "region", value)
534
589
 
535
- @property
590
+ @_builtins.property
536
591
  @pulumi.getter(name="rmqVersion")
537
- def rmq_version(self) -> Optional[pulumi.Input[builtins.str]]:
592
+ def rmq_version(self) -> Optional[pulumi.Input[_builtins.str]]:
538
593
  """
539
594
  The Rabbit MQ version. Can be left out, will then be set to
540
595
  default value used by CloudAMQP API.
@@ -545,12 +600,12 @@ class _InstanceState:
545
600
  return pulumi.get(self, "rmq_version")
546
601
 
547
602
  @rmq_version.setter
548
- def rmq_version(self, value: Optional[pulumi.Input[builtins.str]]):
603
+ def rmq_version(self, value: Optional[pulumi.Input[_builtins.str]]):
549
604
  pulumi.set(self, "rmq_version", value)
550
605
 
551
- @property
606
+ @_builtins.property
552
607
  @pulumi.getter
553
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
608
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
554
609
  """
555
610
  One or more tags for the CloudAMQP instance, makes it possible to
556
611
  categories multiple instances in console view. Default there is no tags assigned.
@@ -558,12 +613,12 @@ class _InstanceState:
558
613
  return pulumi.get(self, "tags")
559
614
 
560
615
  @tags.setter
561
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
616
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
562
617
  pulumi.set(self, "tags", value)
563
618
 
564
- @property
619
+ @_builtins.property
565
620
  @pulumi.getter
566
- def url(self) -> Optional[pulumi.Input[builtins.str]]:
621
+ def url(self) -> Optional[pulumi.Input[_builtins.str]]:
567
622
  """
568
623
  The AMQP URL (uses the internal hostname if the instance was created with VPC).
569
624
  Has the format: `amqps://{username}:{password}@{hostname}/{vhost}`
@@ -571,24 +626,24 @@ class _InstanceState:
571
626
  return pulumi.get(self, "url")
572
627
 
573
628
  @url.setter
574
- def url(self, value: Optional[pulumi.Input[builtins.str]]):
629
+ def url(self, value: Optional[pulumi.Input[_builtins.str]]):
575
630
  pulumi.set(self, "url", value)
576
631
 
577
- @property
632
+ @_builtins.property
578
633
  @pulumi.getter
579
- def vhost(self) -> Optional[pulumi.Input[builtins.str]]:
634
+ def vhost(self) -> Optional[pulumi.Input[_builtins.str]]:
580
635
  """
581
636
  The virtual host used by Rabbit MQ.
582
637
  """
583
638
  return pulumi.get(self, "vhost")
584
639
 
585
640
  @vhost.setter
586
- def vhost(self, value: Optional[pulumi.Input[builtins.str]]):
641
+ def vhost(self, value: Optional[pulumi.Input[_builtins.str]]):
587
642
  pulumi.set(self, "vhost", value)
588
643
 
589
- @property
644
+ @_builtins.property
590
645
  @pulumi.getter(name="vpcId")
591
- def vpc_id(self) -> Optional[pulumi.Input[builtins.int]]:
646
+ def vpc_id(self) -> Optional[pulumi.Input[_builtins.int]]:
592
647
  """
593
648
  The VPC ID. Use this to create your instance in an existing
594
649
  VPC. See available [example].
@@ -596,12 +651,12 @@ class _InstanceState:
596
651
  return pulumi.get(self, "vpc_id")
597
652
 
598
653
  @vpc_id.setter
599
- def vpc_id(self, value: Optional[pulumi.Input[builtins.int]]):
654
+ def vpc_id(self, value: Optional[pulumi.Input[_builtins.int]]):
600
655
  pulumi.set(self, "vpc_id", value)
601
656
 
602
- @property
657
+ @_builtins.property
603
658
  @pulumi.getter(name="vpcSubnet")
604
- def vpc_subnet(self) -> Optional[pulumi.Input[builtins.str]]:
659
+ def vpc_subnet(self) -> Optional[pulumi.Input[_builtins.str]]:
605
660
  """
606
661
  Creates a dedicated VPC subnet, shouldn't overlap with other
607
662
  VPC subnet, default subnet used 10.56.72.0/24.
@@ -613,7 +668,7 @@ class _InstanceState:
613
668
  return pulumi.get(self, "vpc_subnet")
614
669
 
615
670
  @vpc_subnet.setter
616
- def vpc_subnet(self, value: Optional[pulumi.Input[builtins.str]]):
671
+ def vpc_subnet(self, value: Optional[pulumi.Input[_builtins.str]]):
617
672
  pulumi.set(self, "vpc_subnet", value)
618
673
 
619
674
 
@@ -624,16 +679,17 @@ class Instance(pulumi.CustomResource):
624
679
  resource_name: str,
625
680
  opts: Optional[pulumi.ResourceOptions] = None,
626
681
  copy_settings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceCopySettingArgs', 'InstanceCopySettingArgsDict']]]]] = None,
627
- keep_associated_vpc: Optional[pulumi.Input[builtins.bool]] = None,
628
- name: Optional[pulumi.Input[builtins.str]] = None,
629
- no_default_alarms: Optional[pulumi.Input[builtins.bool]] = None,
630
- nodes: Optional[pulumi.Input[builtins.int]] = None,
631
- plan: Optional[pulumi.Input[builtins.str]] = None,
632
- region: Optional[pulumi.Input[builtins.str]] = None,
633
- rmq_version: Optional[pulumi.Input[builtins.str]] = None,
634
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
635
- vpc_id: Optional[pulumi.Input[builtins.int]] = None,
636
- vpc_subnet: Optional[pulumi.Input[builtins.str]] = None,
682
+ keep_associated_vpc: Optional[pulumi.Input[_builtins.bool]] = None,
683
+ name: Optional[pulumi.Input[_builtins.str]] = None,
684
+ no_default_alarms: Optional[pulumi.Input[_builtins.bool]] = None,
685
+ nodes: Optional[pulumi.Input[_builtins.int]] = None,
686
+ plan: Optional[pulumi.Input[_builtins.str]] = None,
687
+ preferred_azs: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
688
+ region: Optional[pulumi.Input[_builtins.str]] = None,
689
+ rmq_version: Optional[pulumi.Input[_builtins.str]] = None,
690
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
691
+ vpc_id: Optional[pulumi.Input[_builtins.int]] = None,
692
+ vpc_subnet: Optional[pulumi.Input[_builtins.str]] = None,
637
693
  __props__=None):
638
694
  """
639
695
  This resource allows you to create and manage a CloudAMQP instance running either [**RabbitMQ**] or
@@ -796,6 +852,31 @@ class Instance(pulumi.CustomResource):
796
852
 
797
853
  </details>
798
854
 
855
+ <details>
856
+ <summary>
857
+ <b>
858
+ <i>Dedicated instance with preferred AZs</i>
859
+ </b>
860
+ </summary>
861
+
862
+ ```python
863
+ import pulumi
864
+ import pulumi_cloudamqp as cloudamqp
865
+
866
+ instance = cloudamqp.Instance("instance",
867
+ name="terraform-cloudamqp-instance",
868
+ plan="penguin-3",
869
+ region="amazon-web-services::us-east-1",
870
+ tags=["terraform"],
871
+ preferred_azs=[
872
+ "use1-az1",
873
+ "use1-az2",
874
+ "use1-az3",
875
+ ])
876
+ ```
877
+
878
+ </details>
879
+
799
880
  ### Settings supported by LavinMQ
800
881
 
801
882
  ***Allowed values:*** alarms, definitions, firewall, metrics
@@ -868,8 +949,8 @@ class Instance(pulumi.CustomResource):
868
949
  </details>
869
950
 
870
951
  [CloudAMQP]: https://cloudamqp.com
871
- [CloudAMQP API]: https://docs.cloudamqp.com/cloudamqp_api.html
872
- [CloudAMQP API list instances]: https://docs.cloudamqp.com/#list-instances
952
+ [CloudAMQP API]: https://docs.cloudamqp.com/instance-api.html
953
+ [CloudAMQP API list instances]: https://docs.cloudamqp.com/index.html#tag/instances/get/instances
873
954
  [CloudAMQP plans]: https://www.cloudamqp.com/plans.html
874
955
  [copy settings]: #copy-settings-to-a-new-dedicated-instance
875
956
  [example]: ../guides/info_vpc_existing.md
@@ -878,6 +959,11 @@ class Instance(pulumi.CustomResource):
878
959
  [Managed VPC]: ../guides/info_managed_vpc#dedicated-instance-and-vpc_subnet
879
960
  [plans]: ../guides/info_plan.md
880
961
  [**RabbitMQ**]: https://www.rabbitmq.com
962
+ [instance regions]: ../guides/info_region.md
963
+ [aws-availability-zones]: https://docs.aws.amazon.com/global-infrastructure/latest/regions/aws-availability-zones.html
964
+ [azure-region-list]: https://learn.microsoft.com/en-us/azure/reliability/regions-list
965
+ [gcp-region-zones]: https://cloud.google.com/compute/docs/regions-zones#available
966
+ [do-regional-availability]: https://docs.digitalocean.com/platform/regional-availability/
881
967
 
882
968
  ## Import
883
969
 
@@ -907,35 +993,42 @@ class Instance(pulumi.CustomResource):
907
993
  :param pulumi.ResourceOptions opts: Options for the resource.
908
994
  :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceCopySettingArgs', 'InstanceCopySettingArgsDict']]]] copy_settings: Copy settings from one CloudAMQP instance to a new. Consists of
909
995
  the block documented below.
910
-
911
- ___
912
-
913
- The `copy_settings` block consists of:
914
- :param pulumi.Input[builtins.bool] keep_associated_vpc: Keep associated VPC when deleting instance. Default set to
996
+ :param pulumi.Input[_builtins.bool] keep_associated_vpc: Keep associated VPC when deleting instance. Default set to
915
997
  false.
916
- :param pulumi.Input[builtins.str] name: Name of the CloudAMQP instance.
917
- :param pulumi.Input[builtins.bool] no_default_alarms: Set to true to not create default alarms
918
- :param pulumi.Input[builtins.int] nodes: Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
998
+ :param pulumi.Input[_builtins.str] name: Name of the CloudAMQP instance.
999
+ :param pulumi.Input[_builtins.bool] no_default_alarms: Set to true to not create default alarms
1000
+ :param pulumi.Input[_builtins.int] nodes: Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
919
1001
  legacy plans, will otherwise be computed.
920
1002
 
921
1003
  ***Deprecated:*** Legacy subscriptions plan can still change this to scale up or down the instance.
922
1004
  New subscriptions plans use the plan to determine number of nodes. In order to
923
1005
  change number of nodes the `plan` needs to be updated.
924
- :param pulumi.Input[builtins.str] plan: The subscription plan. See available [plans].
925
- :param pulumi.Input[builtins.str] region: The region to host the instance in. See available [regions].
1006
+ :param pulumi.Input[_builtins.str] plan: The subscription plan. See available [plans].
1007
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] preferred_azs: The AZs to place your nodes in. Each entry corresponds to a server in your cluster, so for a 3 node cluster, provide 3 AZs in the list.
1008
+
1009
+ ***Note:*** `preferred_az` can only be set upon instance creation as of now and the result is not guaranteed. On eventual failed resource allocation in the zone, CloudAMQP will fallback to a different zone.
1010
+ * AWS: AZ id in [aws-availability-zones]
1011
+ * Azure: 1,2 or 3 in supported regions [azure-region-list]
1012
+ * GCP: zones in [gcp-region-zones]
1013
+ * Digital Ocean: Slug in [do-regional-availability]
1014
+
1015
+ ___
1016
+
1017
+ The `copy_settings` block consists of:
1018
+ :param pulumi.Input[_builtins.str] region: The region to host the instance in. See available [regions].
926
1019
 
927
1020
  ***Note:*** Changing region will force the instance to be destroyed and a new created in the new
928
1021
  region. All data will be lost and a new name assigned.
929
- :param pulumi.Input[builtins.str] rmq_version: The Rabbit MQ version. Can be left out, will then be set to
1022
+ :param pulumi.Input[_builtins.str] rmq_version: The Rabbit MQ version. Can be left out, will then be set to
930
1023
  default value used by CloudAMQP API.
931
1024
 
932
1025
  ***Note:*** There is not yet any support in the provider to change the RMQ version. Once it's set
933
1026
  in the initial creation, it will remain.
934
- :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: One or more tags for the CloudAMQP instance, makes it possible to
1027
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: One or more tags for the CloudAMQP instance, makes it possible to
935
1028
  categories multiple instances in console view. Default there is no tags assigned.
936
- :param pulumi.Input[builtins.int] vpc_id: The VPC ID. Use this to create your instance in an existing
1029
+ :param pulumi.Input[_builtins.int] vpc_id: The VPC ID. Use this to create your instance in an existing
937
1030
  VPC. See available [example].
938
- :param pulumi.Input[builtins.str] vpc_subnet: Creates a dedicated VPC subnet, shouldn't overlap with other
1031
+ :param pulumi.Input[_builtins.str] vpc_subnet: Creates a dedicated VPC subnet, shouldn't overlap with other
939
1032
  VPC subnet, default subnet used 10.56.72.0/24.
940
1033
 
941
1034
  ***Deprecated:*** Will be removed in next major version (v2.0)
@@ -1109,6 +1202,31 @@ class Instance(pulumi.CustomResource):
1109
1202
 
1110
1203
  </details>
1111
1204
 
1205
+ <details>
1206
+ <summary>
1207
+ <b>
1208
+ <i>Dedicated instance with preferred AZs</i>
1209
+ </b>
1210
+ </summary>
1211
+
1212
+ ```python
1213
+ import pulumi
1214
+ import pulumi_cloudamqp as cloudamqp
1215
+
1216
+ instance = cloudamqp.Instance("instance",
1217
+ name="terraform-cloudamqp-instance",
1218
+ plan="penguin-3",
1219
+ region="amazon-web-services::us-east-1",
1220
+ tags=["terraform"],
1221
+ preferred_azs=[
1222
+ "use1-az1",
1223
+ "use1-az2",
1224
+ "use1-az3",
1225
+ ])
1226
+ ```
1227
+
1228
+ </details>
1229
+
1112
1230
  ### Settings supported by LavinMQ
1113
1231
 
1114
1232
  ***Allowed values:*** alarms, definitions, firewall, metrics
@@ -1181,8 +1299,8 @@ class Instance(pulumi.CustomResource):
1181
1299
  </details>
1182
1300
 
1183
1301
  [CloudAMQP]: https://cloudamqp.com
1184
- [CloudAMQP API]: https://docs.cloudamqp.com/cloudamqp_api.html
1185
- [CloudAMQP API list instances]: https://docs.cloudamqp.com/#list-instances
1302
+ [CloudAMQP API]: https://docs.cloudamqp.com/instance-api.html
1303
+ [CloudAMQP API list instances]: https://docs.cloudamqp.com/index.html#tag/instances/get/instances
1186
1304
  [CloudAMQP plans]: https://www.cloudamqp.com/plans.html
1187
1305
  [copy settings]: #copy-settings-to-a-new-dedicated-instance
1188
1306
  [example]: ../guides/info_vpc_existing.md
@@ -1191,6 +1309,11 @@ class Instance(pulumi.CustomResource):
1191
1309
  [Managed VPC]: ../guides/info_managed_vpc#dedicated-instance-and-vpc_subnet
1192
1310
  [plans]: ../guides/info_plan.md
1193
1311
  [**RabbitMQ**]: https://www.rabbitmq.com
1312
+ [instance regions]: ../guides/info_region.md
1313
+ [aws-availability-zones]: https://docs.aws.amazon.com/global-infrastructure/latest/regions/aws-availability-zones.html
1314
+ [azure-region-list]: https://learn.microsoft.com/en-us/azure/reliability/regions-list
1315
+ [gcp-region-zones]: https://cloud.google.com/compute/docs/regions-zones#available
1316
+ [do-regional-availability]: https://docs.digitalocean.com/platform/regional-availability/
1194
1317
 
1195
1318
  ## Import
1196
1319
 
@@ -1232,16 +1355,17 @@ class Instance(pulumi.CustomResource):
1232
1355
  resource_name: str,
1233
1356
  opts: Optional[pulumi.ResourceOptions] = None,
1234
1357
  copy_settings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceCopySettingArgs', 'InstanceCopySettingArgsDict']]]]] = None,
1235
- keep_associated_vpc: Optional[pulumi.Input[builtins.bool]] = None,
1236
- name: Optional[pulumi.Input[builtins.str]] = None,
1237
- no_default_alarms: Optional[pulumi.Input[builtins.bool]] = None,
1238
- nodes: Optional[pulumi.Input[builtins.int]] = None,
1239
- plan: Optional[pulumi.Input[builtins.str]] = None,
1240
- region: Optional[pulumi.Input[builtins.str]] = None,
1241
- rmq_version: Optional[pulumi.Input[builtins.str]] = None,
1242
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1243
- vpc_id: Optional[pulumi.Input[builtins.int]] = None,
1244
- vpc_subnet: Optional[pulumi.Input[builtins.str]] = None,
1358
+ keep_associated_vpc: Optional[pulumi.Input[_builtins.bool]] = None,
1359
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1360
+ no_default_alarms: Optional[pulumi.Input[_builtins.bool]] = None,
1361
+ nodes: Optional[pulumi.Input[_builtins.int]] = None,
1362
+ plan: Optional[pulumi.Input[_builtins.str]] = None,
1363
+ preferred_azs: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1364
+ region: Optional[pulumi.Input[_builtins.str]] = None,
1365
+ rmq_version: Optional[pulumi.Input[_builtins.str]] = None,
1366
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1367
+ vpc_id: Optional[pulumi.Input[_builtins.int]] = None,
1368
+ vpc_subnet: Optional[pulumi.Input[_builtins.str]] = None,
1245
1369
  __props__=None):
1246
1370
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1247
1371
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -1259,6 +1383,7 @@ class Instance(pulumi.CustomResource):
1259
1383
  if plan is None and not opts.urn:
1260
1384
  raise TypeError("Missing required property 'plan'")
1261
1385
  __props__.__dict__["plan"] = plan
1386
+ __props__.__dict__["preferred_azs"] = preferred_azs
1262
1387
  if region is None and not opts.urn:
1263
1388
  raise TypeError("Missing required property 'region'")
1264
1389
  __props__.__dict__["region"] = region
@@ -1286,25 +1411,26 @@ class Instance(pulumi.CustomResource):
1286
1411
  def get(resource_name: str,
1287
1412
  id: pulumi.Input[str],
1288
1413
  opts: Optional[pulumi.ResourceOptions] = None,
1289
- apikey: Optional[pulumi.Input[builtins.str]] = None,
1290
- backend: Optional[pulumi.Input[builtins.str]] = None,
1414
+ apikey: Optional[pulumi.Input[_builtins.str]] = None,
1415
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
1291
1416
  copy_settings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceCopySettingArgs', 'InstanceCopySettingArgsDict']]]]] = None,
1292
- dedicated: Optional[pulumi.Input[builtins.bool]] = None,
1293
- host: Optional[pulumi.Input[builtins.str]] = None,
1294
- host_internal: Optional[pulumi.Input[builtins.str]] = None,
1295
- keep_associated_vpc: Optional[pulumi.Input[builtins.bool]] = None,
1296
- name: Optional[pulumi.Input[builtins.str]] = None,
1297
- no_default_alarms: Optional[pulumi.Input[builtins.bool]] = None,
1298
- nodes: Optional[pulumi.Input[builtins.int]] = None,
1299
- plan: Optional[pulumi.Input[builtins.str]] = None,
1300
- ready: Optional[pulumi.Input[builtins.bool]] = None,
1301
- region: Optional[pulumi.Input[builtins.str]] = None,
1302
- rmq_version: Optional[pulumi.Input[builtins.str]] = None,
1303
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1304
- url: Optional[pulumi.Input[builtins.str]] = None,
1305
- vhost: Optional[pulumi.Input[builtins.str]] = None,
1306
- vpc_id: Optional[pulumi.Input[builtins.int]] = None,
1307
- vpc_subnet: Optional[pulumi.Input[builtins.str]] = None) -> 'Instance':
1417
+ dedicated: Optional[pulumi.Input[_builtins.bool]] = None,
1418
+ host: Optional[pulumi.Input[_builtins.str]] = None,
1419
+ host_internal: Optional[pulumi.Input[_builtins.str]] = None,
1420
+ keep_associated_vpc: Optional[pulumi.Input[_builtins.bool]] = None,
1421
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1422
+ no_default_alarms: Optional[pulumi.Input[_builtins.bool]] = None,
1423
+ nodes: Optional[pulumi.Input[_builtins.int]] = None,
1424
+ plan: Optional[pulumi.Input[_builtins.str]] = None,
1425
+ preferred_azs: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1426
+ ready: Optional[pulumi.Input[_builtins.bool]] = None,
1427
+ region: Optional[pulumi.Input[_builtins.str]] = None,
1428
+ rmq_version: Optional[pulumi.Input[_builtins.str]] = None,
1429
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1430
+ url: Optional[pulumi.Input[_builtins.str]] = None,
1431
+ vhost: Optional[pulumi.Input[_builtins.str]] = None,
1432
+ vpc_id: Optional[pulumi.Input[_builtins.int]] = None,
1433
+ vpc_subnet: Optional[pulumi.Input[_builtins.str]] = None) -> 'Instance':
1308
1434
  """
1309
1435
  Get an existing Instance resource's state with the given name, id, and optional extra
1310
1436
  properties used to qualify the lookup.
@@ -1312,47 +1438,54 @@ class Instance(pulumi.CustomResource):
1312
1438
  :param str resource_name: The unique name of the resulting resource.
1313
1439
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1314
1440
  :param pulumi.ResourceOptions opts: Options for the resource.
1315
- :param pulumi.Input[builtins.str] apikey: API key needed to communicate to CloudAMQP's second API. The second API is used
1441
+ :param pulumi.Input[_builtins.str] apikey: API key needed to communicate to CloudAMQP's second API. The second API is used
1316
1442
  to manage alarms, integration and more, full description [CloudAMQP API].
1317
- :param pulumi.Input[builtins.str] backend: Information if the CloudAMQP instance runs either RabbitMQ or LavinMQ.
1443
+ :param pulumi.Input[_builtins.str] backend: Information if the CloudAMQP instance runs either RabbitMQ or LavinMQ.
1318
1444
  :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceCopySettingArgs', 'InstanceCopySettingArgsDict']]]] copy_settings: Copy settings from one CloudAMQP instance to a new. Consists of
1319
1445
  the block documented below.
1320
-
1321
- ___
1322
-
1323
- The `copy_settings` block consists of:
1324
- :param pulumi.Input[builtins.bool] dedicated: Information if the CloudAMQP instance is shared or dedicated.
1325
- :param pulumi.Input[builtins.str] host: The external hostname for the CloudAMQP instance.
1326
- :param pulumi.Input[builtins.str] host_internal: The internal hostname for the CloudAMQP instance.
1327
- :param pulumi.Input[builtins.bool] keep_associated_vpc: Keep associated VPC when deleting instance. Default set to
1446
+ :param pulumi.Input[_builtins.bool] dedicated: Information if the CloudAMQP instance is shared or dedicated.
1447
+ :param pulumi.Input[_builtins.str] host: The external hostname for the CloudAMQP instance.
1448
+ :param pulumi.Input[_builtins.str] host_internal: The internal hostname for the CloudAMQP instance.
1449
+ :param pulumi.Input[_builtins.bool] keep_associated_vpc: Keep associated VPC when deleting instance. Default set to
1328
1450
  false.
1329
- :param pulumi.Input[builtins.str] name: Name of the CloudAMQP instance.
1330
- :param pulumi.Input[builtins.bool] no_default_alarms: Set to true to not create default alarms
1331
- :param pulumi.Input[builtins.int] nodes: Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
1451
+ :param pulumi.Input[_builtins.str] name: Name of the CloudAMQP instance.
1452
+ :param pulumi.Input[_builtins.bool] no_default_alarms: Set to true to not create default alarms
1453
+ :param pulumi.Input[_builtins.int] nodes: Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
1332
1454
  legacy plans, will otherwise be computed.
1333
1455
 
1334
1456
  ***Deprecated:*** Legacy subscriptions plan can still change this to scale up or down the instance.
1335
1457
  New subscriptions plans use the plan to determine number of nodes. In order to
1336
1458
  change number of nodes the `plan` needs to be updated.
1337
- :param pulumi.Input[builtins.str] plan: The subscription plan. See available [plans].
1338
- :param pulumi.Input[builtins.bool] ready: Flag describing if the resource is ready
1339
- :param pulumi.Input[builtins.str] region: The region to host the instance in. See available [regions].
1459
+ :param pulumi.Input[_builtins.str] plan: The subscription plan. See available [plans].
1460
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] preferred_azs: The AZs to place your nodes in. Each entry corresponds to a server in your cluster, so for a 3 node cluster, provide 3 AZs in the list.
1461
+
1462
+ ***Note:*** `preferred_az` can only be set upon instance creation as of now and the result is not guaranteed. On eventual failed resource allocation in the zone, CloudAMQP will fallback to a different zone.
1463
+ * AWS: AZ id in [aws-availability-zones]
1464
+ * Azure: 1,2 or 3 in supported regions [azure-region-list]
1465
+ * GCP: zones in [gcp-region-zones]
1466
+ * Digital Ocean: Slug in [do-regional-availability]
1467
+
1468
+ ___
1469
+
1470
+ The `copy_settings` block consists of:
1471
+ :param pulumi.Input[_builtins.bool] ready: Flag describing if the resource is ready
1472
+ :param pulumi.Input[_builtins.str] region: The region to host the instance in. See available [regions].
1340
1473
 
1341
1474
  ***Note:*** Changing region will force the instance to be destroyed and a new created in the new
1342
1475
  region. All data will be lost and a new name assigned.
1343
- :param pulumi.Input[builtins.str] rmq_version: The Rabbit MQ version. Can be left out, will then be set to
1476
+ :param pulumi.Input[_builtins.str] rmq_version: The Rabbit MQ version. Can be left out, will then be set to
1344
1477
  default value used by CloudAMQP API.
1345
1478
 
1346
1479
  ***Note:*** There is not yet any support in the provider to change the RMQ version. Once it's set
1347
1480
  in the initial creation, it will remain.
1348
- :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: One or more tags for the CloudAMQP instance, makes it possible to
1481
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: One or more tags for the CloudAMQP instance, makes it possible to
1349
1482
  categories multiple instances in console view. Default there is no tags assigned.
1350
- :param pulumi.Input[builtins.str] url: The AMQP URL (uses the internal hostname if the instance was created with VPC).
1483
+ :param pulumi.Input[_builtins.str] url: The AMQP URL (uses the internal hostname if the instance was created with VPC).
1351
1484
  Has the format: `amqps://{username}:{password}@{hostname}/{vhost}`
1352
- :param pulumi.Input[builtins.str] vhost: The virtual host used by Rabbit MQ.
1353
- :param pulumi.Input[builtins.int] vpc_id: The VPC ID. Use this to create your instance in an existing
1485
+ :param pulumi.Input[_builtins.str] vhost: The virtual host used by Rabbit MQ.
1486
+ :param pulumi.Input[_builtins.int] vpc_id: The VPC ID. Use this to create your instance in an existing
1354
1487
  VPC. See available [example].
1355
- :param pulumi.Input[builtins.str] vpc_subnet: Creates a dedicated VPC subnet, shouldn't overlap with other
1488
+ :param pulumi.Input[_builtins.str] vpc_subnet: Creates a dedicated VPC subnet, shouldn't overlap with other
1356
1489
  VPC subnet, default subnet used 10.56.72.0/24.
1357
1490
 
1358
1491
  ***Deprecated:*** Will be removed in next major version (v2.0)
@@ -1374,6 +1507,7 @@ class Instance(pulumi.CustomResource):
1374
1507
  __props__.__dict__["no_default_alarms"] = no_default_alarms
1375
1508
  __props__.__dict__["nodes"] = nodes
1376
1509
  __props__.__dict__["plan"] = plan
1510
+ __props__.__dict__["preferred_azs"] = preferred_azs
1377
1511
  __props__.__dict__["ready"] = ready
1378
1512
  __props__.__dict__["region"] = region
1379
1513
  __props__.__dict__["rmq_version"] = rmq_version
@@ -1384,88 +1518,84 @@ class Instance(pulumi.CustomResource):
1384
1518
  __props__.__dict__["vpc_subnet"] = vpc_subnet
1385
1519
  return Instance(resource_name, opts=opts, __props__=__props__)
1386
1520
 
1387
- @property
1521
+ @_builtins.property
1388
1522
  @pulumi.getter
1389
- def apikey(self) -> pulumi.Output[builtins.str]:
1523
+ def apikey(self) -> pulumi.Output[_builtins.str]:
1390
1524
  """
1391
1525
  API key needed to communicate to CloudAMQP's second API. The second API is used
1392
1526
  to manage alarms, integration and more, full description [CloudAMQP API].
1393
1527
  """
1394
1528
  return pulumi.get(self, "apikey")
1395
1529
 
1396
- @property
1530
+ @_builtins.property
1397
1531
  @pulumi.getter
1398
- def backend(self) -> pulumi.Output[builtins.str]:
1532
+ def backend(self) -> pulumi.Output[_builtins.str]:
1399
1533
  """
1400
1534
  Information if the CloudAMQP instance runs either RabbitMQ or LavinMQ.
1401
1535
  """
1402
1536
  return pulumi.get(self, "backend")
1403
1537
 
1404
- @property
1538
+ @_builtins.property
1405
1539
  @pulumi.getter(name="copySettings")
1406
1540
  def copy_settings(self) -> pulumi.Output[Optional[Sequence['outputs.InstanceCopySetting']]]:
1407
1541
  """
1408
1542
  Copy settings from one CloudAMQP instance to a new. Consists of
1409
1543
  the block documented below.
1410
-
1411
- ___
1412
-
1413
- The `copy_settings` block consists of:
1414
1544
  """
1415
1545
  return pulumi.get(self, "copy_settings")
1416
1546
 
1417
- @property
1547
+ @_builtins.property
1418
1548
  @pulumi.getter
1419
- def dedicated(self) -> pulumi.Output[builtins.bool]:
1549
+ def dedicated(self) -> pulumi.Output[_builtins.bool]:
1420
1550
  """
1421
1551
  Information if the CloudAMQP instance is shared or dedicated.
1422
1552
  """
1423
1553
  return pulumi.get(self, "dedicated")
1424
1554
 
1425
- @property
1555
+ @_builtins.property
1426
1556
  @pulumi.getter
1427
- def host(self) -> pulumi.Output[builtins.str]:
1557
+ def host(self) -> pulumi.Output[_builtins.str]:
1428
1558
  """
1429
1559
  The external hostname for the CloudAMQP instance.
1430
1560
  """
1431
1561
  return pulumi.get(self, "host")
1432
1562
 
1433
- @property
1563
+ @_builtins.property
1434
1564
  @pulumi.getter(name="hostInternal")
1435
- def host_internal(self) -> pulumi.Output[builtins.str]:
1565
+ def host_internal(self) -> pulumi.Output[_builtins.str]:
1436
1566
  """
1437
1567
  The internal hostname for the CloudAMQP instance.
1438
1568
  """
1439
1569
  return pulumi.get(self, "host_internal")
1440
1570
 
1441
- @property
1571
+ @_builtins.property
1442
1572
  @pulumi.getter(name="keepAssociatedVpc")
1443
- def keep_associated_vpc(self) -> pulumi.Output[Optional[builtins.bool]]:
1573
+ def keep_associated_vpc(self) -> pulumi.Output[Optional[_builtins.bool]]:
1444
1574
  """
1445
1575
  Keep associated VPC when deleting instance. Default set to
1446
1576
  false.
1447
1577
  """
1448
1578
  return pulumi.get(self, "keep_associated_vpc")
1449
1579
 
1450
- @property
1580
+ @_builtins.property
1451
1581
  @pulumi.getter
1452
- def name(self) -> pulumi.Output[builtins.str]:
1582
+ def name(self) -> pulumi.Output[_builtins.str]:
1453
1583
  """
1454
1584
  Name of the CloudAMQP instance.
1455
1585
  """
1456
1586
  return pulumi.get(self, "name")
1457
1587
 
1458
- @property
1588
+ @_builtins.property
1459
1589
  @pulumi.getter(name="noDefaultAlarms")
1460
- def no_default_alarms(self) -> pulumi.Output[builtins.bool]:
1590
+ def no_default_alarms(self) -> pulumi.Output[_builtins.bool]:
1461
1591
  """
1462
1592
  Set to true to not create default alarms
1463
1593
  """
1464
1594
  return pulumi.get(self, "no_default_alarms")
1465
1595
 
1466
- @property
1596
+ @_builtins.property
1467
1597
  @pulumi.getter
1468
- def nodes(self) -> pulumi.Output[builtins.int]:
1598
+ def nodes(self) -> pulumi.Output[_builtins.int]:
1469
1599
  """
1470
1600
  Number of nodes, 1, 3 or 5 depending on plan used. Only needed for
1471
1601
  legacy plans, will otherwise be computed.
@@ -1476,25 +1606,43 @@ class Instance(pulumi.CustomResource):
1476
1606
  """
1477
1607
  return pulumi.get(self, "nodes")
1478
1608
 
1479
- @property
1609
+ @_builtins.property
1480
1610
  @pulumi.getter
1481
- def plan(self) -> pulumi.Output[builtins.str]:
1611
+ def plan(self) -> pulumi.Output[_builtins.str]:
1482
1612
  """
1483
1613
  The subscription plan. See available [plans].
1484
1614
  """
1485
1615
  return pulumi.get(self, "plan")
1486
1616
 
1487
- @property
1617
+ @_builtins.property
1618
+ @pulumi.getter(name="preferredAzs")
1619
+ def preferred_azs(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1620
+ """
1621
+ The AZs to place your nodes in. Each entry corresponds to a server in your cluster, so for a 3 node cluster, provide 3 AZs in the list.
1622
+
1623
+ ***Note:*** `preferred_az` can only be set upon instance creation as of now and the result is not guaranteed. On eventual failed resource allocation in the zone, CloudAMQP will fallback to a different zone.
1624
+ * AWS: AZ id in [aws-availability-zones]
1625
+ * Azure: 1,2 or 3 in supported regions [azure-region-list]
1626
+ * GCP: zones in [gcp-region-zones]
1627
+ * Digital Ocean: Slug in [do-regional-availability]
1628
+
1629
+ ___
1630
+
1631
+ The `copy_settings` block consists of:
1632
+ """
1633
+ return pulumi.get(self, "preferred_azs")
1634
+
1635
+ @_builtins.property
1488
1636
  @pulumi.getter
1489
- def ready(self) -> pulumi.Output[builtins.bool]:
1637
+ def ready(self) -> pulumi.Output[_builtins.bool]:
1490
1638
  """
1491
1639
  Flag describing if the resource is ready
1492
1640
  """
1493
1641
  return pulumi.get(self, "ready")
1494
1642
 
1495
- @property
1643
+ @_builtins.property
1496
1644
  @pulumi.getter
1497
- def region(self) -> pulumi.Output[builtins.str]:
1645
+ def region(self) -> pulumi.Output[_builtins.str]:
1498
1646
  """
1499
1647
  The region to host the instance in. See available [regions].
1500
1648
 
@@ -1503,9 +1651,9 @@ class Instance(pulumi.CustomResource):
1503
1651
  """
1504
1652
  return pulumi.get(self, "region")
1505
1653
 
1506
- @property
1654
+ @_builtins.property
1507
1655
  @pulumi.getter(name="rmqVersion")
1508
- def rmq_version(self) -> pulumi.Output[builtins.str]:
1656
+ def rmq_version(self) -> pulumi.Output[_builtins.str]:
1509
1657
  """
1510
1658
  The Rabbit MQ version. Can be left out, will then be set to
1511
1659
  default value used by CloudAMQP API.
@@ -1515,44 +1663,44 @@ class Instance(pulumi.CustomResource):
1515
1663
  """
1516
1664
  return pulumi.get(self, "rmq_version")
1517
1665
 
1518
- @property
1666
+ @_builtins.property
1519
1667
  @pulumi.getter
1520
- def tags(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
1668
+ def tags(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1521
1669
  """
1522
1670
  One or more tags for the CloudAMQP instance, makes it possible to
1523
1671
  categories multiple instances in console view. Default there is no tags assigned.
1524
1672
  """
1525
1673
  return pulumi.get(self, "tags")
1526
1674
 
1527
- @property
1675
+ @_builtins.property
1528
1676
  @pulumi.getter
1529
- def url(self) -> pulumi.Output[builtins.str]:
1677
+ def url(self) -> pulumi.Output[_builtins.str]:
1530
1678
  """
1531
1679
  The AMQP URL (uses the internal hostname if the instance was created with VPC).
1532
1680
  Has the format: `amqps://{username}:{password}@{hostname}/{vhost}`
1533
1681
  """
1534
1682
  return pulumi.get(self, "url")
1535
1683
 
1536
- @property
1684
+ @_builtins.property
1537
1685
  @pulumi.getter
1538
- def vhost(self) -> pulumi.Output[builtins.str]:
1686
+ def vhost(self) -> pulumi.Output[_builtins.str]:
1539
1687
  """
1540
1688
  The virtual host used by Rabbit MQ.
1541
1689
  """
1542
1690
  return pulumi.get(self, "vhost")
1543
1691
 
1544
- @property
1692
+ @_builtins.property
1545
1693
  @pulumi.getter(name="vpcId")
1546
- def vpc_id(self) -> pulumi.Output[builtins.int]:
1694
+ def vpc_id(self) -> pulumi.Output[_builtins.int]:
1547
1695
  """
1548
1696
  The VPC ID. Use this to create your instance in an existing
1549
1697
  VPC. See available [example].
1550
1698
  """
1551
1699
  return pulumi.get(self, "vpc_id")
1552
1700
 
1553
- @property
1701
+ @_builtins.property
1554
1702
  @pulumi.getter(name="vpcSubnet")
1555
- def vpc_subnet(self) -> pulumi.Output[builtins.str]:
1703
+ def vpc_subnet(self) -> pulumi.Output[_builtins.str]:
1556
1704
  """
1557
1705
  Creates a dedicated VPC subnet, shouldn't overlap with other
1558
1706
  VPC subnet, default subnet used 10.56.72.0/24.