pulumi-aiven 6.43.0a1756184863__py3-none-any.whl → 6.47.0a1767071446__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.
Files changed (102) hide show
  1. pulumi_aiven/__init__.py +4 -0
  2. pulumi_aiven/_inputs.py +3087 -602
  3. pulumi_aiven/account_team.py +6 -12
  4. pulumi_aiven/account_team_member.py +6 -12
  5. pulumi_aiven/account_team_project.py +6 -12
  6. pulumi_aiven/alloydbomni.py +72 -23
  7. pulumi_aiven/alloydbomni_database.py +26 -0
  8. pulumi_aiven/alloydbomni_user.py +135 -8
  9. pulumi_aiven/billing_group.py +225 -114
  10. pulumi_aiven/cassandra.py +46 -23
  11. pulumi_aiven/cassandra_user.py +110 -9
  12. pulumi_aiven/clickhouse.py +46 -23
  13. pulumi_aiven/clickhouse_user.py +127 -7
  14. pulumi_aiven/dragonfly.py +46 -23
  15. pulumi_aiven/flink.py +46 -23
  16. pulumi_aiven/get_account_team.py +6 -12
  17. pulumi_aiven/get_account_team_member.py +6 -12
  18. pulumi_aiven/get_account_team_project.py +6 -12
  19. pulumi_aiven/get_alloydbomni.py +43 -3
  20. pulumi_aiven/get_alloydbomni_database.py +26 -0
  21. pulumi_aiven/get_alloydbomni_user.py +27 -1
  22. pulumi_aiven/get_billing_group.py +47 -15
  23. pulumi_aiven/get_cassanda.py +17 -3
  24. pulumi_aiven/get_cassandra.py +17 -3
  25. pulumi_aiven/get_cassandra_user.py +1 -1
  26. pulumi_aiven/get_clickhouse.py +17 -3
  27. pulumi_aiven/get_clickhouse_user.py +1 -1
  28. pulumi_aiven/get_dragonfly.py +17 -3
  29. pulumi_aiven/get_flink.py +17 -3
  30. pulumi_aiven/get_grafana.py +17 -3
  31. pulumi_aiven/get_influx_db.py +12 -1
  32. pulumi_aiven/get_kafka.py +17 -3
  33. pulumi_aiven/get_kafka_connect.py +17 -3
  34. pulumi_aiven/get_kafka_mirror_maker.py +17 -3
  35. pulumi_aiven/get_kafka_user.py +1 -1
  36. pulumi_aiven/get_m3_aggregator.py +14 -112
  37. pulumi_aiven/get_m3_db.py +14 -124
  38. pulumi_aiven/get_m3db_user.py +2 -61
  39. pulumi_aiven/get_my_sql.py +17 -3
  40. pulumi_aiven/get_mysql_user.py +1 -1
  41. pulumi_aiven/get_open_search.py +17 -3
  42. pulumi_aiven/get_opensearch_user.py +1 -1
  43. pulumi_aiven/get_organization.py +1 -1
  44. pulumi_aiven/get_organization_address.py +1 -1
  45. pulumi_aiven/get_organization_application_user.py +29 -11
  46. pulumi_aiven/get_organization_billing_group.py +3 -3
  47. pulumi_aiven/get_organization_project.py +2 -8
  48. pulumi_aiven/get_organization_user_group_list.py +131 -0
  49. pulumi_aiven/get_organization_user_group_member_list.py +171 -0
  50. pulumi_aiven/get_organization_user_list.py +33 -11
  51. pulumi_aiven/get_organizational_unit.py +4 -0
  52. pulumi_aiven/get_pg.py +17 -3
  53. pulumi_aiven/get_pg_user.py +1 -1
  54. pulumi_aiven/get_redis.py +14 -128
  55. pulumi_aiven/get_redis_user.py +2 -77
  56. pulumi_aiven/get_service_component.py +3 -3
  57. pulumi_aiven/get_service_plan.py +309 -0
  58. pulumi_aiven/get_service_plan_list.py +151 -0
  59. pulumi_aiven/get_thanos.py +17 -3
  60. pulumi_aiven/get_valkey.py +17 -3
  61. pulumi_aiven/get_valkey_user.py +4 -4
  62. pulumi_aiven/governance_access.py +12 -0
  63. pulumi_aiven/grafana.py +46 -23
  64. pulumi_aiven/influx_db.py +133 -291
  65. pulumi_aiven/influxdb_database.py +14 -28
  66. pulumi_aiven/influxdb_user.py +21 -42
  67. pulumi_aiven/kafka.py +46 -23
  68. pulumi_aiven/kafka_connect.py +48 -25
  69. pulumi_aiven/kafka_mirror_maker.py +46 -23
  70. pulumi_aiven/kafka_schema.py +20 -20
  71. pulumi_aiven/kafka_user.py +110 -9
  72. pulumi_aiven/m3_aggregator.py +48 -75
  73. pulumi_aiven/m3_db.py +48 -95
  74. pulumi_aiven/m3db_user.py +2 -54
  75. pulumi_aiven/my_sql.py +46 -23
  76. pulumi_aiven/mysql_user.py +110 -9
  77. pulumi_aiven/open_search.py +46 -23
  78. pulumi_aiven/opensearch_user.py +110 -9
  79. pulumi_aiven/organization.py +6 -6
  80. pulumi_aiven/organization_address.py +12 -0
  81. pulumi_aiven/organization_application_user.py +76 -48
  82. pulumi_aiven/organization_application_user_token.py +127 -91
  83. pulumi_aiven/organization_billing_group.py +33 -21
  84. pulumi_aiven/organization_permission.py +82 -49
  85. pulumi_aiven/organization_project.py +9 -15
  86. pulumi_aiven/organization_user.py +8 -8
  87. pulumi_aiven/organization_user_group_member.py +29 -35
  88. pulumi_aiven/outputs.py +2042 -326
  89. pulumi_aiven/pg.py +112 -23
  90. pulumi_aiven/pg_user.py +109 -8
  91. pulumi_aiven/project.py +2 -24
  92. pulumi_aiven/pulumi-plugin.json +1 -1
  93. pulumi_aiven/redis.py +57 -97
  94. pulumi_aiven/redis_user.py +23 -79
  95. pulumi_aiven/thanos.py +46 -23
  96. pulumi_aiven/valkey.py +46 -23
  97. pulumi_aiven/valkey_user.py +130 -29
  98. {pulumi_aiven-6.43.0a1756184863.dist-info → pulumi_aiven-6.47.0a1767071446.dist-info}/METADATA +1 -1
  99. pulumi_aiven-6.47.0a1767071446.dist-info/RECORD +193 -0
  100. pulumi_aiven-6.43.0a1756184863.dist-info/RECORD +0 -189
  101. {pulumi_aiven-6.43.0a1756184863.dist-info → pulumi_aiven-6.47.0a1767071446.dist-info}/WHEEL +0 -0
  102. {pulumi_aiven-6.43.0a1756184863.dist-info → pulumi_aiven-6.47.0a1767071446.dist-info}/top_level.txt +0 -0
@@ -27,7 +27,7 @@ class GetM3AggregatorResult:
27
27
  """
28
28
  A collection of values returned by getM3Aggregator.
29
29
  """
30
- def __init__(__self__, additional_disk_space=None, cloud_name=None, components=None, disk_space=None, disk_space_cap=None, disk_space_default=None, disk_space_step=None, disk_space_used=None, id=None, m3aggregator_user_configs=None, m3aggregators=None, maintenance_window_dow=None, maintenance_window_time=None, plan=None, project=None, project_vpc_id=None, service_host=None, service_integrations=None, service_name=None, service_password=None, service_port=None, service_type=None, service_uri=None, service_username=None, state=None, static_ips=None, tags=None, tech_emails=None, termination_protection=None):
30
+ def __init__(__self__, additional_disk_space=None, cloud_name=None, components=None, disk_space=None, disk_space_cap=None, disk_space_default=None, disk_space_step=None, disk_space_used=None, id=None, m3aggregator_user_configs=None, m3aggregators=None, maintenance_window_dow=None, maintenance_window_enabled=None, maintenance_window_time=None, plan=None, project=None, project_vpc_id=None, service_host=None, service_integrations=None, service_name=None, service_password=None, service_port=None, service_type=None, service_uri=None, service_username=None, state=None, static_ips=None, tags=None, tech_emails=None, termination_protection=None):
31
31
  if additional_disk_space and not isinstance(additional_disk_space, str):
32
32
  raise TypeError("Expected argument 'additional_disk_space' to be a str")
33
33
  pulumi.set(__self__, "additional_disk_space", additional_disk_space)
@@ -64,6 +64,9 @@ class GetM3AggregatorResult:
64
64
  if maintenance_window_dow and not isinstance(maintenance_window_dow, str):
65
65
  raise TypeError("Expected argument 'maintenance_window_dow' to be a str")
66
66
  pulumi.set(__self__, "maintenance_window_dow", maintenance_window_dow)
67
+ if maintenance_window_enabled and not isinstance(maintenance_window_enabled, bool):
68
+ raise TypeError("Expected argument 'maintenance_window_enabled' to be a bool")
69
+ pulumi.set(__self__, "maintenance_window_enabled", maintenance_window_enabled)
67
70
  if maintenance_window_time and not isinstance(maintenance_window_time, str):
68
71
  raise TypeError("Expected argument 'maintenance_window_time' to be a str")
69
72
  pulumi.set(__self__, "maintenance_window_time", maintenance_window_time)
@@ -119,65 +122,41 @@ class GetM3AggregatorResult:
119
122
  @_builtins.property
120
123
  @pulumi.getter(name="additionalDiskSpace")
121
124
  def additional_disk_space(self) -> _builtins.str:
122
- """
123
- Add [disk storage](https://aiven.io/docs/platform/howto/add-storage-space) in increments of 30 GiB to scale your service. The maximum value depends on the service type and cloud provider. Removing additional storage causes the service nodes to go through a rolling restart, and there might be a short downtime for services without an autoscaler integration or high availability capabilities. The field can be safely removed when autoscaler is enabled without causing any changes.
124
- """
125
125
  return pulumi.get(self, "additional_disk_space")
126
126
 
127
127
  @_builtins.property
128
128
  @pulumi.getter(name="cloudName")
129
129
  def cloud_name(self) -> _builtins.str:
130
- """
131
- The cloud provider and region the service is hosted in. The format is `provider-region`, for example: `google-europe-west1`. The [available cloud regions](https://aiven.io/docs/platform/reference/list_of_clouds) can differ per project and service. Changing this value [migrates the service to another cloud provider or region](https://aiven.io/docs/platform/howto/migrate-services-cloud-region). The migration runs in the background and includes a DNS update to redirect traffic to the new region. Most services experience no downtime, but some databases may have a brief interruption during DNS propagation.
132
- """
133
130
  return pulumi.get(self, "cloud_name")
134
131
 
135
132
  @_builtins.property
136
133
  @pulumi.getter
137
134
  def components(self) -> Sequence['outputs.GetM3AggregatorComponentResult']:
138
- """
139
- Service component information objects
140
- """
141
135
  return pulumi.get(self, "components")
142
136
 
143
137
  @_builtins.property
144
138
  @pulumi.getter(name="diskSpace")
145
139
  def disk_space(self) -> _builtins.str:
146
- """
147
- Service disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
148
- """
149
140
  return pulumi.get(self, "disk_space")
150
141
 
151
142
  @_builtins.property
152
143
  @pulumi.getter(name="diskSpaceCap")
153
144
  def disk_space_cap(self) -> _builtins.str:
154
- """
155
- The maximum disk space of the service, possible values depend on the service type, the cloud provider and the project.
156
- """
157
145
  return pulumi.get(self, "disk_space_cap")
158
146
 
159
147
  @_builtins.property
160
148
  @pulumi.getter(name="diskSpaceDefault")
161
149
  def disk_space_default(self) -> _builtins.str:
162
- """
163
- The default disk space of the service, possible values depend on the service type, the cloud provider and the project. Its also the minimum value for `disk_space`
164
- """
165
150
  return pulumi.get(self, "disk_space_default")
166
151
 
167
152
  @_builtins.property
168
153
  @pulumi.getter(name="diskSpaceStep")
169
154
  def disk_space_step(self) -> _builtins.str:
170
- """
171
- The default disk space step of the service, possible values depend on the service type, the cloud provider and the project. `disk_space` needs to increment from `disk_space_default` by increments of this size.
172
- """
173
155
  return pulumi.get(self, "disk_space_step")
174
156
 
175
157
  @_builtins.property
176
158
  @pulumi.getter(name="diskSpaceUsed")
177
159
  def disk_space_used(self) -> _builtins.str:
178
- """
179
- Disk space that service is currently using
180
- """
181
160
  return pulumi.get(self, "disk_space_used")
182
161
 
183
162
  @_builtins.property
@@ -191,121 +170,81 @@ class GetM3AggregatorResult:
191
170
  @_builtins.property
192
171
  @pulumi.getter(name="m3aggregatorUserConfigs")
193
172
  def m3aggregator_user_configs(self) -> Sequence['outputs.GetM3AggregatorM3aggregatorUserConfigResult']:
194
- """
195
- M3aggregator user configurable settings. **Warning:** There's no way to reset advanced configuration options to default. Options that you add cannot be removed later
196
- """
197
173
  return pulumi.get(self, "m3aggregator_user_configs")
198
174
 
199
175
  @_builtins.property
200
176
  @pulumi.getter
201
177
  def m3aggregators(self) -> Sequence['outputs.GetM3AggregatorM3aggregatorResult']:
202
- """
203
- M3 Aggregator server provided values
204
- """
205
178
  return pulumi.get(self, "m3aggregators")
206
179
 
207
180
  @_builtins.property
208
181
  @pulumi.getter(name="maintenanceWindowDow")
209
182
  def maintenance_window_dow(self) -> _builtins.str:
210
- """
211
- Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
212
- """
213
183
  return pulumi.get(self, "maintenance_window_dow")
214
184
 
185
+ @_builtins.property
186
+ @pulumi.getter(name="maintenanceWindowEnabled")
187
+ def maintenance_window_enabled(self) -> _builtins.bool:
188
+ return pulumi.get(self, "maintenance_window_enabled")
189
+
215
190
  @_builtins.property
216
191
  @pulumi.getter(name="maintenanceWindowTime")
217
192
  def maintenance_window_time(self) -> _builtins.str:
218
- """
219
- Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
220
- """
221
193
  return pulumi.get(self, "maintenance_window_time")
222
194
 
223
195
  @_builtins.property
224
196
  @pulumi.getter
225
197
  def plan(self) -> _builtins.str:
226
- """
227
- Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seen from the [Aiven pricing page](https://aiven.io/pricing).
228
- """
229
198
  return pulumi.get(self, "plan")
230
199
 
231
200
  @_builtins.property
232
201
  @pulumi.getter
233
202
  def project(self) -> _builtins.str:
234
- """
235
- The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
236
- """
237
203
  return pulumi.get(self, "project")
238
204
 
239
205
  @_builtins.property
240
206
  @pulumi.getter(name="projectVpcId")
241
207
  def project_vpc_id(self) -> _builtins.str:
242
- """
243
- Specifies the VPC the service should run in. If the value is not set, the service runs on the Public Internet. When set, the value should be given as a reference to set up dependencies correctly, and the VPC must be in the same cloud and region as the service itself. The service can be freely moved to and from VPC after creation, but doing so triggers migration to new servers, so the operation can take a significant amount of time to complete if the service has a lot of data.
244
- """
245
208
  return pulumi.get(self, "project_vpc_id")
246
209
 
247
210
  @_builtins.property
248
211
  @pulumi.getter(name="serviceHost")
249
212
  def service_host(self) -> _builtins.str:
250
- """
251
- The hostname of the service.
252
- """
253
213
  return pulumi.get(self, "service_host")
254
214
 
255
215
  @_builtins.property
256
216
  @pulumi.getter(name="serviceIntegrations")
257
217
  def service_integrations(self) -> Sequence['outputs.GetM3AggregatorServiceIntegrationResult']:
258
- """
259
- Service integrations to specify when creating a service. Not applied after initial service creation
260
- """
261
218
  return pulumi.get(self, "service_integrations")
262
219
 
263
220
  @_builtins.property
264
221
  @pulumi.getter(name="serviceName")
265
222
  def service_name(self) -> _builtins.str:
266
- """
267
- Specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.
268
- """
269
223
  return pulumi.get(self, "service_name")
270
224
 
271
225
  @_builtins.property
272
226
  @pulumi.getter(name="servicePassword")
273
227
  def service_password(self) -> _builtins.str:
274
- """
275
- Password used for connecting to the service, if applicable
276
- """
277
228
  return pulumi.get(self, "service_password")
278
229
 
279
230
  @_builtins.property
280
231
  @pulumi.getter(name="servicePort")
281
232
  def service_port(self) -> _builtins.int:
282
- """
283
- The port of the service
284
- """
285
233
  return pulumi.get(self, "service_port")
286
234
 
287
235
  @_builtins.property
288
236
  @pulumi.getter(name="serviceType")
289
237
  def service_type(self) -> _builtins.str:
290
- """
291
- Aiven internal service type code
292
- """
293
238
  return pulumi.get(self, "service_type")
294
239
 
295
240
  @_builtins.property
296
241
  @pulumi.getter(name="serviceUri")
297
242
  def service_uri(self) -> _builtins.str:
298
- """
299
- URI for connecting to the service. Service specific info is under "kafka", "pg", etc.
300
- """
301
243
  return pulumi.get(self, "service_uri")
302
244
 
303
245
  @_builtins.property
304
246
  @pulumi.getter(name="serviceUsername")
305
247
  def service_username(self) -> _builtins.str:
306
- """
307
- Username used for connecting to the service, if applicable
308
- """
309
248
  return pulumi.get(self, "service_username")
310
249
 
311
250
  @_builtins.property
@@ -316,33 +255,21 @@ class GetM3AggregatorResult:
316
255
  @_builtins.property
317
256
  @pulumi.getter(name="staticIps")
318
257
  def static_ips(self) -> Sequence[_builtins.str]:
319
- """
320
- Static IPs that are going to be associated with this service. Please assign a value using the 'toset' function. Once a static ip resource is in the 'assigned' state it cannot be unbound from the node again
321
- """
322
258
  return pulumi.get(self, "static_ips")
323
259
 
324
260
  @_builtins.property
325
261
  @pulumi.getter
326
262
  def tags(self) -> Sequence['outputs.GetM3AggregatorTagResult']:
327
- """
328
- Tags are key-value pairs that allow you to categorize services.
329
- """
330
263
  return pulumi.get(self, "tags")
331
264
 
332
265
  @_builtins.property
333
266
  @pulumi.getter(name="techEmails")
334
267
  def tech_emails(self) -> Sequence['outputs.GetM3AggregatorTechEmailResult']:
335
- """
336
- The email addresses for [service contacts](https://aiven.io/docs/platform/howto/technical-emails), who will receive important alerts and updates about this service. You can also set email contacts at the project level.
337
- """
338
268
  return pulumi.get(self, "tech_emails")
339
269
 
340
270
  @_builtins.property
341
271
  @pulumi.getter(name="terminationProtection")
342
272
  def termination_protection(self) -> _builtins.bool:
343
- """
344
- Prevents the service from being deleted. It is recommended to set this to `true` for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.
345
- """
346
273
  return pulumi.get(self, "termination_protection")
347
274
 
348
275
 
@@ -364,6 +291,7 @@ class AwaitableGetM3AggregatorResult(GetM3AggregatorResult):
364
291
  m3aggregator_user_configs=self.m3aggregator_user_configs,
365
292
  m3aggregators=self.m3aggregators,
366
293
  maintenance_window_dow=self.maintenance_window_dow,
294
+ maintenance_window_enabled=self.maintenance_window_enabled,
367
295
  maintenance_window_time=self.maintenance_window_time,
368
296
  plan=self.plan,
369
297
  project=self.project,
@@ -387,21 +315,7 @@ def get_m3_aggregator(project: Optional[_builtins.str] = None,
387
315
  service_name: Optional[_builtins.str] = None,
388
316
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetM3AggregatorResult:
389
317
  """
390
- The M3 Aggregator data source provides information about the existing Aiven M3 Aggregator.
391
-
392
- ## Example Usage
393
-
394
- ```python
395
- import pulumi
396
- import pulumi_aiven as aiven
397
-
398
- m3a = aiven.get_m3_aggregator(project=foo["project"],
399
- service_name="my-m3a")
400
- ```
401
-
402
-
403
- :param _builtins.str project: The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
404
- :param _builtins.str service_name: Specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.
318
+ Use this data source to access information about an existing resource.
405
319
  """
406
320
  __args__ = dict()
407
321
  __args__['project'] = project
@@ -422,6 +336,7 @@ def get_m3_aggregator(project: Optional[_builtins.str] = None,
422
336
  m3aggregator_user_configs=pulumi.get(__ret__, 'm3aggregator_user_configs'),
423
337
  m3aggregators=pulumi.get(__ret__, 'm3aggregators'),
424
338
  maintenance_window_dow=pulumi.get(__ret__, 'maintenance_window_dow'),
339
+ maintenance_window_enabled=pulumi.get(__ret__, 'maintenance_window_enabled'),
425
340
  maintenance_window_time=pulumi.get(__ret__, 'maintenance_window_time'),
426
341
  plan=pulumi.get(__ret__, 'plan'),
427
342
  project=pulumi.get(__ret__, 'project'),
@@ -443,21 +358,7 @@ def get_m3_aggregator_output(project: Optional[pulumi.Input[_builtins.str]] = No
443
358
  service_name: Optional[pulumi.Input[_builtins.str]] = None,
444
359
  opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetM3AggregatorResult]:
445
360
  """
446
- The M3 Aggregator data source provides information about the existing Aiven M3 Aggregator.
447
-
448
- ## Example Usage
449
-
450
- ```python
451
- import pulumi
452
- import pulumi_aiven as aiven
453
-
454
- m3a = aiven.get_m3_aggregator(project=foo["project"],
455
- service_name="my-m3a")
456
- ```
457
-
458
-
459
- :param _builtins.str project: The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
460
- :param _builtins.str service_name: Specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.
361
+ Use this data source to access information about an existing resource.
461
362
  """
462
363
  __args__ = dict()
463
364
  __args__['project'] = project
@@ -477,6 +378,7 @@ def get_m3_aggregator_output(project: Optional[pulumi.Input[_builtins.str]] = No
477
378
  m3aggregator_user_configs=pulumi.get(__response__, 'm3aggregator_user_configs'),
478
379
  m3aggregators=pulumi.get(__response__, 'm3aggregators'),
479
380
  maintenance_window_dow=pulumi.get(__response__, 'maintenance_window_dow'),
381
+ maintenance_window_enabled=pulumi.get(__response__, 'maintenance_window_enabled'),
480
382
  maintenance_window_time=pulumi.get(__response__, 'maintenance_window_time'),
481
383
  plan=pulumi.get(__response__, 'plan'),
482
384
  project=pulumi.get(__response__, 'project'),
pulumi_aiven/get_m3_db.py CHANGED
@@ -27,7 +27,7 @@ class GetM3DbResult:
27
27
  """
28
28
  A collection of values returned by getM3Db.
29
29
  """
30
- def __init__(__self__, additional_disk_space=None, cloud_name=None, components=None, disk_space=None, disk_space_cap=None, disk_space_default=None, disk_space_step=None, disk_space_used=None, id=None, m3db_user_configs=None, m3dbs=None, maintenance_window_dow=None, maintenance_window_time=None, plan=None, project=None, project_vpc_id=None, service_host=None, service_integrations=None, service_name=None, service_password=None, service_port=None, service_type=None, service_uri=None, service_username=None, state=None, static_ips=None, tags=None, tech_emails=None, termination_protection=None):
30
+ def __init__(__self__, additional_disk_space=None, cloud_name=None, components=None, disk_space=None, disk_space_cap=None, disk_space_default=None, disk_space_step=None, disk_space_used=None, id=None, m3db_user_configs=None, m3dbs=None, maintenance_window_dow=None, maintenance_window_enabled=None, maintenance_window_time=None, plan=None, project=None, project_vpc_id=None, service_host=None, service_integrations=None, service_name=None, service_password=None, service_port=None, service_type=None, service_uri=None, service_username=None, state=None, static_ips=None, tags=None, tech_emails=None, termination_protection=None):
31
31
  if additional_disk_space and not isinstance(additional_disk_space, str):
32
32
  raise TypeError("Expected argument 'additional_disk_space' to be a str")
33
33
  pulumi.set(__self__, "additional_disk_space", additional_disk_space)
@@ -64,6 +64,9 @@ class GetM3DbResult:
64
64
  if maintenance_window_dow and not isinstance(maintenance_window_dow, str):
65
65
  raise TypeError("Expected argument 'maintenance_window_dow' to be a str")
66
66
  pulumi.set(__self__, "maintenance_window_dow", maintenance_window_dow)
67
+ if maintenance_window_enabled and not isinstance(maintenance_window_enabled, bool):
68
+ raise TypeError("Expected argument 'maintenance_window_enabled' to be a bool")
69
+ pulumi.set(__self__, "maintenance_window_enabled", maintenance_window_enabled)
67
70
  if maintenance_window_time and not isinstance(maintenance_window_time, str):
68
71
  raise TypeError("Expected argument 'maintenance_window_time' to be a str")
69
72
  pulumi.set(__self__, "maintenance_window_time", maintenance_window_time)
@@ -119,65 +122,41 @@ class GetM3DbResult:
119
122
  @_builtins.property
120
123
  @pulumi.getter(name="additionalDiskSpace")
121
124
  def additional_disk_space(self) -> _builtins.str:
122
- """
123
- Add [disk storage](https://aiven.io/docs/platform/howto/add-storage-space) in increments of 30 GiB to scale your service. The maximum value depends on the service type and cloud provider. Removing additional storage causes the service nodes to go through a rolling restart, and there might be a short downtime for services without an autoscaler integration or high availability capabilities. The field can be safely removed when autoscaler is enabled without causing any changes.
124
- """
125
125
  return pulumi.get(self, "additional_disk_space")
126
126
 
127
127
  @_builtins.property
128
128
  @pulumi.getter(name="cloudName")
129
129
  def cloud_name(self) -> _builtins.str:
130
- """
131
- The cloud provider and region the service is hosted in. The format is `provider-region`, for example: `google-europe-west1`. The [available cloud regions](https://aiven.io/docs/platform/reference/list_of_clouds) can differ per project and service. Changing this value [migrates the service to another cloud provider or region](https://aiven.io/docs/platform/howto/migrate-services-cloud-region). The migration runs in the background and includes a DNS update to redirect traffic to the new region. Most services experience no downtime, but some databases may have a brief interruption during DNS propagation.
132
- """
133
130
  return pulumi.get(self, "cloud_name")
134
131
 
135
132
  @_builtins.property
136
133
  @pulumi.getter
137
134
  def components(self) -> Sequence['outputs.GetM3DbComponentResult']:
138
- """
139
- Service component information objects
140
- """
141
135
  return pulumi.get(self, "components")
142
136
 
143
137
  @_builtins.property
144
138
  @pulumi.getter(name="diskSpace")
145
139
  def disk_space(self) -> _builtins.str:
146
- """
147
- Service disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
148
- """
149
140
  return pulumi.get(self, "disk_space")
150
141
 
151
142
  @_builtins.property
152
143
  @pulumi.getter(name="diskSpaceCap")
153
144
  def disk_space_cap(self) -> _builtins.str:
154
- """
155
- The maximum disk space of the service, possible values depend on the service type, the cloud provider and the project.
156
- """
157
145
  return pulumi.get(self, "disk_space_cap")
158
146
 
159
147
  @_builtins.property
160
148
  @pulumi.getter(name="diskSpaceDefault")
161
149
  def disk_space_default(self) -> _builtins.str:
162
- """
163
- The default disk space of the service, possible values depend on the service type, the cloud provider and the project. Its also the minimum value for `disk_space`
164
- """
165
150
  return pulumi.get(self, "disk_space_default")
166
151
 
167
152
  @_builtins.property
168
153
  @pulumi.getter(name="diskSpaceStep")
169
154
  def disk_space_step(self) -> _builtins.str:
170
- """
171
- The default disk space step of the service, possible values depend on the service type, the cloud provider and the project. `disk_space` needs to increment from `disk_space_default` by increments of this size.
172
- """
173
155
  return pulumi.get(self, "disk_space_step")
174
156
 
175
157
  @_builtins.property
176
158
  @pulumi.getter(name="diskSpaceUsed")
177
159
  def disk_space_used(self) -> _builtins.str:
178
- """
179
- Disk space that service is currently using
180
- """
181
160
  return pulumi.get(self, "disk_space_used")
182
161
 
183
162
  @_builtins.property
@@ -191,121 +170,81 @@ class GetM3DbResult:
191
170
  @_builtins.property
192
171
  @pulumi.getter(name="m3dbUserConfigs")
193
172
  def m3db_user_configs(self) -> Sequence['outputs.GetM3DbM3dbUserConfigResult']:
194
- """
195
- M3db user configurable settings. **Warning:** There's no way to reset advanced configuration options to default. Options that you add cannot be removed later
196
- """
197
173
  return pulumi.get(self, "m3db_user_configs")
198
174
 
199
175
  @_builtins.property
200
176
  @pulumi.getter
201
177
  def m3dbs(self) -> Sequence['outputs.GetM3DbM3dbResult']:
202
- """
203
- Values provided by the M3DB server.
204
- """
205
178
  return pulumi.get(self, "m3dbs")
206
179
 
207
180
  @_builtins.property
208
181
  @pulumi.getter(name="maintenanceWindowDow")
209
182
  def maintenance_window_dow(self) -> _builtins.str:
210
- """
211
- Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
212
- """
213
183
  return pulumi.get(self, "maintenance_window_dow")
214
184
 
185
+ @_builtins.property
186
+ @pulumi.getter(name="maintenanceWindowEnabled")
187
+ def maintenance_window_enabled(self) -> _builtins.bool:
188
+ return pulumi.get(self, "maintenance_window_enabled")
189
+
215
190
  @_builtins.property
216
191
  @pulumi.getter(name="maintenanceWindowTime")
217
192
  def maintenance_window_time(self) -> _builtins.str:
218
- """
219
- Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
220
- """
221
193
  return pulumi.get(self, "maintenance_window_time")
222
194
 
223
195
  @_builtins.property
224
196
  @pulumi.getter
225
197
  def plan(self) -> _builtins.str:
226
- """
227
- Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seen from the [Aiven pricing page](https://aiven.io/pricing).
228
- """
229
198
  return pulumi.get(self, "plan")
230
199
 
231
200
  @_builtins.property
232
201
  @pulumi.getter
233
202
  def project(self) -> _builtins.str:
234
- """
235
- The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
236
- """
237
203
  return pulumi.get(self, "project")
238
204
 
239
205
  @_builtins.property
240
206
  @pulumi.getter(name="projectVpcId")
241
207
  def project_vpc_id(self) -> _builtins.str:
242
- """
243
- Specifies the VPC the service should run in. If the value is not set, the service runs on the Public Internet. When set, the value should be given as a reference to set up dependencies correctly, and the VPC must be in the same cloud and region as the service itself. The service can be freely moved to and from VPC after creation, but doing so triggers migration to new servers, so the operation can take a significant amount of time to complete if the service has a lot of data.
244
- """
245
208
  return pulumi.get(self, "project_vpc_id")
246
209
 
247
210
  @_builtins.property
248
211
  @pulumi.getter(name="serviceHost")
249
212
  def service_host(self) -> _builtins.str:
250
- """
251
- The hostname of the service.
252
- """
253
213
  return pulumi.get(self, "service_host")
254
214
 
255
215
  @_builtins.property
256
216
  @pulumi.getter(name="serviceIntegrations")
257
217
  def service_integrations(self) -> Sequence['outputs.GetM3DbServiceIntegrationResult']:
258
- """
259
- Service integrations to specify when creating a service. Not applied after initial service creation
260
- """
261
218
  return pulumi.get(self, "service_integrations")
262
219
 
263
220
  @_builtins.property
264
221
  @pulumi.getter(name="serviceName")
265
222
  def service_name(self) -> _builtins.str:
266
- """
267
- Specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.
268
- """
269
223
  return pulumi.get(self, "service_name")
270
224
 
271
225
  @_builtins.property
272
226
  @pulumi.getter(name="servicePassword")
273
227
  def service_password(self) -> _builtins.str:
274
- """
275
- Password used for connecting to the service, if applicable
276
- """
277
228
  return pulumi.get(self, "service_password")
278
229
 
279
230
  @_builtins.property
280
231
  @pulumi.getter(name="servicePort")
281
232
  def service_port(self) -> _builtins.int:
282
- """
283
- The port of the service
284
- """
285
233
  return pulumi.get(self, "service_port")
286
234
 
287
235
  @_builtins.property
288
236
  @pulumi.getter(name="serviceType")
289
237
  def service_type(self) -> _builtins.str:
290
- """
291
- Aiven internal service type code
292
- """
293
238
  return pulumi.get(self, "service_type")
294
239
 
295
240
  @_builtins.property
296
241
  @pulumi.getter(name="serviceUri")
297
242
  def service_uri(self) -> _builtins.str:
298
- """
299
- URI for connecting to the service. Service specific info is under "kafka", "pg", etc.
300
- """
301
243
  return pulumi.get(self, "service_uri")
302
244
 
303
245
  @_builtins.property
304
246
  @pulumi.getter(name="serviceUsername")
305
247
  def service_username(self) -> _builtins.str:
306
- """
307
- Username used for connecting to the service, if applicable
308
- """
309
248
  return pulumi.get(self, "service_username")
310
249
 
311
250
  @_builtins.property
@@ -316,33 +255,21 @@ class GetM3DbResult:
316
255
  @_builtins.property
317
256
  @pulumi.getter(name="staticIps")
318
257
  def static_ips(self) -> Sequence[_builtins.str]:
319
- """
320
- Static IPs that are going to be associated with this service. Please assign a value using the 'toset' function. Once a static ip resource is in the 'assigned' state it cannot be unbound from the node again
321
- """
322
258
  return pulumi.get(self, "static_ips")
323
259
 
324
260
  @_builtins.property
325
261
  @pulumi.getter
326
262
  def tags(self) -> Sequence['outputs.GetM3DbTagResult']:
327
- """
328
- Tags are key-value pairs that allow you to categorize services.
329
- """
330
263
  return pulumi.get(self, "tags")
331
264
 
332
265
  @_builtins.property
333
266
  @pulumi.getter(name="techEmails")
334
267
  def tech_emails(self) -> Sequence['outputs.GetM3DbTechEmailResult']:
335
- """
336
- The email addresses for [service contacts](https://aiven.io/docs/platform/howto/technical-emails), who will receive important alerts and updates about this service. You can also set email contacts at the project level.
337
- """
338
268
  return pulumi.get(self, "tech_emails")
339
269
 
340
270
  @_builtins.property
341
271
  @pulumi.getter(name="terminationProtection")
342
272
  def termination_protection(self) -> _builtins.bool:
343
- """
344
- Prevents the service from being deleted. It is recommended to set this to `true` for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.
345
- """
346
273
  return pulumi.get(self, "termination_protection")
347
274
 
348
275
 
@@ -364,6 +291,7 @@ class AwaitableGetM3DbResult(GetM3DbResult):
364
291
  m3db_user_configs=self.m3db_user_configs,
365
292
  m3dbs=self.m3dbs,
366
293
  maintenance_window_dow=self.maintenance_window_dow,
294
+ maintenance_window_enabled=self.maintenance_window_enabled,
367
295
  maintenance_window_time=self.maintenance_window_time,
368
296
  plan=self.plan,
369
297
  project=self.project,
@@ -387,27 +315,7 @@ def get_m3_db(project: Optional[_builtins.str] = None,
387
315
  service_name: Optional[_builtins.str] = None,
388
316
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetM3DbResult:
389
317
  """
390
- Gets information about an Aiven for M3DB service.
391
-
392
- !> **End of life notice**
393
- **After 30 April 2025** all running Aiven for M3 services will be powered off and deleted, making data from these services inaccessible.
394
- You cannot create M3DB services in Aiven projects that didn't have M3DB services before.
395
- To avoid interruptions to your service, migrate to Aiven for Thanos Metrics
396
- before the end of life date.
397
-
398
- ## Example Usage
399
-
400
- ```python
401
- import pulumi
402
- import pulumi_aiven as aiven
403
-
404
- example_m3db = aiven.get_m3_db(project=example_project["project"],
405
- service_name="example-m3db-service")
406
- ```
407
-
408
-
409
- :param _builtins.str project: The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
410
- :param _builtins.str service_name: Specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.
318
+ Use this data source to access information about an existing resource.
411
319
  """
412
320
  __args__ = dict()
413
321
  __args__['project'] = project
@@ -428,6 +336,7 @@ def get_m3_db(project: Optional[_builtins.str] = None,
428
336
  m3db_user_configs=pulumi.get(__ret__, 'm3db_user_configs'),
429
337
  m3dbs=pulumi.get(__ret__, 'm3dbs'),
430
338
  maintenance_window_dow=pulumi.get(__ret__, 'maintenance_window_dow'),
339
+ maintenance_window_enabled=pulumi.get(__ret__, 'maintenance_window_enabled'),
431
340
  maintenance_window_time=pulumi.get(__ret__, 'maintenance_window_time'),
432
341
  plan=pulumi.get(__ret__, 'plan'),
433
342
  project=pulumi.get(__ret__, 'project'),
@@ -449,27 +358,7 @@ def get_m3_db_output(project: Optional[pulumi.Input[_builtins.str]] = None,
449
358
  service_name: Optional[pulumi.Input[_builtins.str]] = None,
450
359
  opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetM3DbResult]:
451
360
  """
452
- Gets information about an Aiven for M3DB service.
453
-
454
- !> **End of life notice**
455
- **After 30 April 2025** all running Aiven for M3 services will be powered off and deleted, making data from these services inaccessible.
456
- You cannot create M3DB services in Aiven projects that didn't have M3DB services before.
457
- To avoid interruptions to your service, migrate to Aiven for Thanos Metrics
458
- before the end of life date.
459
-
460
- ## Example Usage
461
-
462
- ```python
463
- import pulumi
464
- import pulumi_aiven as aiven
465
-
466
- example_m3db = aiven.get_m3_db(project=example_project["project"],
467
- service_name="example-m3db-service")
468
- ```
469
-
470
-
471
- :param _builtins.str project: The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
472
- :param _builtins.str service_name: Specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.
361
+ Use this data source to access information about an existing resource.
473
362
  """
474
363
  __args__ = dict()
475
364
  __args__['project'] = project
@@ -489,6 +378,7 @@ def get_m3_db_output(project: Optional[pulumi.Input[_builtins.str]] = None,
489
378
  m3db_user_configs=pulumi.get(__response__, 'm3db_user_configs'),
490
379
  m3dbs=pulumi.get(__response__, 'm3dbs'),
491
380
  maintenance_window_dow=pulumi.get(__response__, 'maintenance_window_dow'),
381
+ maintenance_window_enabled=pulumi.get(__response__, 'maintenance_window_enabled'),
492
382
  maintenance_window_time=pulumi.get(__response__, 'maintenance_window_time'),
493
383
  plan=pulumi.get(__response__, 'plan'),
494
384
  project=pulumi.get(__response__, 'project'),