pulumi-aiven 6.19.0a1721845827__py3-none-any.whl → 6.19.0a1721847551__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-aiven might be problematic. Click here for more details.

Files changed (47) hide show
  1. pulumi_aiven/__init__.py +20 -0
  2. pulumi_aiven/_inputs.py +1089 -29
  3. pulumi_aiven/account_team.py +12 -4
  4. pulumi_aiven/account_team_member.py +4 -4
  5. pulumi_aiven/account_team_project.py +4 -4
  6. pulumi_aiven/clickhouse.py +22 -22
  7. pulumi_aiven/clickhouse_database.py +39 -19
  8. pulumi_aiven/clickhouse_grant.py +80 -82
  9. pulumi_aiven/clickhouse_role.py +17 -31
  10. pulumi_aiven/clickhouse_user.py +31 -31
  11. pulumi_aiven/flink.py +19 -19
  12. pulumi_aiven/flink_application.py +39 -39
  13. pulumi_aiven/flink_application_deployment.py +131 -57
  14. pulumi_aiven/flink_application_version.py +64 -56
  15. pulumi_aiven/get_clickhouse.py +8 -8
  16. pulumi_aiven/get_clickhouse_database.py +11 -11
  17. pulumi_aiven/get_clickhouse_user.py +14 -14
  18. pulumi_aiven/get_flink.py +7 -7
  19. pulumi_aiven/get_flink_application.py +16 -16
  20. pulumi_aiven/get_flink_application_version.py +22 -22
  21. pulumi_aiven/get_kafka_acl.py +22 -22
  22. pulumi_aiven/get_kafka_connect.py +6 -6
  23. pulumi_aiven/get_kafka_connector.py +13 -13
  24. pulumi_aiven/get_kafka_topic.py +2 -2
  25. pulumi_aiven/get_kafka_user.py +15 -15
  26. pulumi_aiven/get_transit_gateway_vpc_attachment.py +1 -1
  27. pulumi_aiven/get_valkey.py +469 -0
  28. pulumi_aiven/get_valkey_user.py +206 -0
  29. pulumi_aiven/kafka_acl.py +43 -39
  30. pulumi_aiven/kafka_connect.py +66 -14
  31. pulumi_aiven/kafka_connector.py +46 -40
  32. pulumi_aiven/kafka_schema_registry_acl.py +2 -2
  33. pulumi_aiven/kafka_topic.py +16 -16
  34. pulumi_aiven/kafka_user.py +40 -40
  35. pulumi_aiven/organization_application_user.py +12 -2
  36. pulumi_aiven/organization_application_user_token.py +7 -7
  37. pulumi_aiven/organization_group_project.py +9 -9
  38. pulumi_aiven/organization_user_group_member.py +13 -9
  39. pulumi_aiven/outputs.py +2113 -332
  40. pulumi_aiven/pulumi-plugin.json +1 -1
  41. pulumi_aiven/transit_gateway_vpc_attachment.py +7 -16
  42. pulumi_aiven/valkey.py +1252 -0
  43. pulumi_aiven/valkey_user.py +513 -0
  44. {pulumi_aiven-6.19.0a1721845827.dist-info → pulumi_aiven-6.19.0a1721847551.dist-info}/METADATA +1 -1
  45. {pulumi_aiven-6.19.0a1721845827.dist-info → pulumi_aiven-6.19.0a1721847551.dist-info}/RECORD +47 -43
  46. {pulumi_aiven-6.19.0a1721845827.dist-info → pulumi_aiven-6.19.0a1721847551.dist-info}/WHEEL +0 -0
  47. {pulumi_aiven-6.19.0a1721845827.dist-info → pulumi_aiven-6.19.0a1721847551.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,469 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from . import _utilities
11
+ from . import outputs
12
+
13
+ __all__ = [
14
+ 'GetValkeyResult',
15
+ 'AwaitableGetValkeyResult',
16
+ 'get_valkey',
17
+ 'get_valkey_output',
18
+ ]
19
+
20
+ @pulumi.output_type
21
+ class GetValkeyResult:
22
+ """
23
+ A collection of values returned by getValkey.
24
+ """
25
+ 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, 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, valkey_user_configs=None, valkeys=None):
26
+ if additional_disk_space and not isinstance(additional_disk_space, str):
27
+ raise TypeError("Expected argument 'additional_disk_space' to be a str")
28
+ pulumi.set(__self__, "additional_disk_space", additional_disk_space)
29
+ if cloud_name and not isinstance(cloud_name, str):
30
+ raise TypeError("Expected argument 'cloud_name' to be a str")
31
+ pulumi.set(__self__, "cloud_name", cloud_name)
32
+ if components and not isinstance(components, list):
33
+ raise TypeError("Expected argument 'components' to be a list")
34
+ pulumi.set(__self__, "components", components)
35
+ if disk_space and not isinstance(disk_space, str):
36
+ raise TypeError("Expected argument 'disk_space' to be a str")
37
+ pulumi.set(__self__, "disk_space", disk_space)
38
+ if disk_space_cap and not isinstance(disk_space_cap, str):
39
+ raise TypeError("Expected argument 'disk_space_cap' to be a str")
40
+ pulumi.set(__self__, "disk_space_cap", disk_space_cap)
41
+ if disk_space_default and not isinstance(disk_space_default, str):
42
+ raise TypeError("Expected argument 'disk_space_default' to be a str")
43
+ pulumi.set(__self__, "disk_space_default", disk_space_default)
44
+ if disk_space_step and not isinstance(disk_space_step, str):
45
+ raise TypeError("Expected argument 'disk_space_step' to be a str")
46
+ pulumi.set(__self__, "disk_space_step", disk_space_step)
47
+ if disk_space_used and not isinstance(disk_space_used, str):
48
+ raise TypeError("Expected argument 'disk_space_used' to be a str")
49
+ pulumi.set(__self__, "disk_space_used", disk_space_used)
50
+ if id and not isinstance(id, str):
51
+ raise TypeError("Expected argument 'id' to be a str")
52
+ pulumi.set(__self__, "id", id)
53
+ if maintenance_window_dow and not isinstance(maintenance_window_dow, str):
54
+ raise TypeError("Expected argument 'maintenance_window_dow' to be a str")
55
+ pulumi.set(__self__, "maintenance_window_dow", maintenance_window_dow)
56
+ if maintenance_window_time and not isinstance(maintenance_window_time, str):
57
+ raise TypeError("Expected argument 'maintenance_window_time' to be a str")
58
+ pulumi.set(__self__, "maintenance_window_time", maintenance_window_time)
59
+ if plan and not isinstance(plan, str):
60
+ raise TypeError("Expected argument 'plan' to be a str")
61
+ pulumi.set(__self__, "plan", plan)
62
+ if project and not isinstance(project, str):
63
+ raise TypeError("Expected argument 'project' to be a str")
64
+ pulumi.set(__self__, "project", project)
65
+ if project_vpc_id and not isinstance(project_vpc_id, str):
66
+ raise TypeError("Expected argument 'project_vpc_id' to be a str")
67
+ pulumi.set(__self__, "project_vpc_id", project_vpc_id)
68
+ if service_host and not isinstance(service_host, str):
69
+ raise TypeError("Expected argument 'service_host' to be a str")
70
+ pulumi.set(__self__, "service_host", service_host)
71
+ if service_integrations and not isinstance(service_integrations, list):
72
+ raise TypeError("Expected argument 'service_integrations' to be a list")
73
+ pulumi.set(__self__, "service_integrations", service_integrations)
74
+ if service_name and not isinstance(service_name, str):
75
+ raise TypeError("Expected argument 'service_name' to be a str")
76
+ pulumi.set(__self__, "service_name", service_name)
77
+ if service_password and not isinstance(service_password, str):
78
+ raise TypeError("Expected argument 'service_password' to be a str")
79
+ pulumi.set(__self__, "service_password", service_password)
80
+ if service_port and not isinstance(service_port, int):
81
+ raise TypeError("Expected argument 'service_port' to be a int")
82
+ pulumi.set(__self__, "service_port", service_port)
83
+ if service_type and not isinstance(service_type, str):
84
+ raise TypeError("Expected argument 'service_type' to be a str")
85
+ pulumi.set(__self__, "service_type", service_type)
86
+ if service_uri and not isinstance(service_uri, str):
87
+ raise TypeError("Expected argument 'service_uri' to be a str")
88
+ pulumi.set(__self__, "service_uri", service_uri)
89
+ if service_username and not isinstance(service_username, str):
90
+ raise TypeError("Expected argument 'service_username' to be a str")
91
+ pulumi.set(__self__, "service_username", service_username)
92
+ if state and not isinstance(state, str):
93
+ raise TypeError("Expected argument 'state' to be a str")
94
+ pulumi.set(__self__, "state", state)
95
+ if static_ips and not isinstance(static_ips, list):
96
+ raise TypeError("Expected argument 'static_ips' to be a list")
97
+ pulumi.set(__self__, "static_ips", static_ips)
98
+ if tags and not isinstance(tags, list):
99
+ raise TypeError("Expected argument 'tags' to be a list")
100
+ pulumi.set(__self__, "tags", tags)
101
+ if tech_emails and not isinstance(tech_emails, list):
102
+ raise TypeError("Expected argument 'tech_emails' to be a list")
103
+ pulumi.set(__self__, "tech_emails", tech_emails)
104
+ if termination_protection and not isinstance(termination_protection, bool):
105
+ raise TypeError("Expected argument 'termination_protection' to be a bool")
106
+ pulumi.set(__self__, "termination_protection", termination_protection)
107
+ if valkey_user_configs and not isinstance(valkey_user_configs, list):
108
+ raise TypeError("Expected argument 'valkey_user_configs' to be a list")
109
+ pulumi.set(__self__, "valkey_user_configs", valkey_user_configs)
110
+ if valkeys and not isinstance(valkeys, list):
111
+ raise TypeError("Expected argument 'valkeys' to be a list")
112
+ pulumi.set(__self__, "valkeys", valkeys)
113
+
114
+ @property
115
+ @pulumi.getter(name="additionalDiskSpace")
116
+ def additional_disk_space(self) -> str:
117
+ """
118
+ Additional disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
119
+ """
120
+ return pulumi.get(self, "additional_disk_space")
121
+
122
+ @property
123
+ @pulumi.getter(name="cloudName")
124
+ def cloud_name(self) -> str:
125
+ """
126
+ Defines where the cloud provider and region where the service is hosted in. This can be changed freely after service is created. Changing the value will trigger a potentially lengthy migration process for the service. Format is cloud provider name (`aws`, `azure`, `do` `google`, `upcloud`, etc.), dash, and the cloud provider specific region name. These are documented on each Cloud provider's own support articles, like [here for Google](https://cloud.google.com/compute/docs/regions-zones/) and [here for AWS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html).
127
+ """
128
+ return pulumi.get(self, "cloud_name")
129
+
130
+ @property
131
+ @pulumi.getter
132
+ def components(self) -> Sequence['outputs.GetValkeyComponentResult']:
133
+ """
134
+ Service component information objects
135
+ """
136
+ return pulumi.get(self, "components")
137
+
138
+ @property
139
+ @pulumi.getter(name="diskSpace")
140
+ def disk_space(self) -> str:
141
+ """
142
+ Service disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
143
+ """
144
+ return pulumi.get(self, "disk_space")
145
+
146
+ @property
147
+ @pulumi.getter(name="diskSpaceCap")
148
+ def disk_space_cap(self) -> str:
149
+ """
150
+ The maximum disk space of the service, possible values depend on the service type, the cloud provider and the project.
151
+ """
152
+ return pulumi.get(self, "disk_space_cap")
153
+
154
+ @property
155
+ @pulumi.getter(name="diskSpaceDefault")
156
+ def disk_space_default(self) -> str:
157
+ """
158
+ 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`
159
+ """
160
+ return pulumi.get(self, "disk_space_default")
161
+
162
+ @property
163
+ @pulumi.getter(name="diskSpaceStep")
164
+ def disk_space_step(self) -> str:
165
+ """
166
+ 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.
167
+ """
168
+ return pulumi.get(self, "disk_space_step")
169
+
170
+ @property
171
+ @pulumi.getter(name="diskSpaceUsed")
172
+ def disk_space_used(self) -> str:
173
+ """
174
+ Disk space that service is currently using
175
+ """
176
+ return pulumi.get(self, "disk_space_used")
177
+
178
+ @property
179
+ @pulumi.getter
180
+ def id(self) -> str:
181
+ """
182
+ The provider-assigned unique ID for this managed resource.
183
+ """
184
+ return pulumi.get(self, "id")
185
+
186
+ @property
187
+ @pulumi.getter(name="maintenanceWindowDow")
188
+ def maintenance_window_dow(self) -> str:
189
+ """
190
+ Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
191
+ """
192
+ return pulumi.get(self, "maintenance_window_dow")
193
+
194
+ @property
195
+ @pulumi.getter(name="maintenanceWindowTime")
196
+ def maintenance_window_time(self) -> str:
197
+ """
198
+ Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
199
+ """
200
+ return pulumi.get(self, "maintenance_window_time")
201
+
202
+ @property
203
+ @pulumi.getter
204
+ def plan(self) -> str:
205
+ """
206
+ 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 seem from the [Aiven pricing page](https://aiven.io/pricing).
207
+ """
208
+ return pulumi.get(self, "plan")
209
+
210
+ @property
211
+ @pulumi.getter
212
+ def project(self) -> str:
213
+ """
214
+ 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.
215
+ """
216
+ return pulumi.get(self, "project")
217
+
218
+ @property
219
+ @pulumi.getter(name="projectVpcId")
220
+ def project_vpc_id(self) -> str:
221
+ """
222
+ Specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. 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. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.
223
+ """
224
+ return pulumi.get(self, "project_vpc_id")
225
+
226
+ @property
227
+ @pulumi.getter(name="serviceHost")
228
+ def service_host(self) -> str:
229
+ """
230
+ The hostname of the service.
231
+ """
232
+ return pulumi.get(self, "service_host")
233
+
234
+ @property
235
+ @pulumi.getter(name="serviceIntegrations")
236
+ def service_integrations(self) -> Sequence['outputs.GetValkeyServiceIntegrationResult']:
237
+ """
238
+ Service integrations to specify when creating a service. Not applied after initial service creation
239
+ """
240
+ return pulumi.get(self, "service_integrations")
241
+
242
+ @property
243
+ @pulumi.getter(name="serviceName")
244
+ def service_name(self) -> str:
245
+ """
246
+ 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.
247
+ """
248
+ return pulumi.get(self, "service_name")
249
+
250
+ @property
251
+ @pulumi.getter(name="servicePassword")
252
+ def service_password(self) -> str:
253
+ """
254
+ Password used for connecting to the service, if applicable
255
+ """
256
+ return pulumi.get(self, "service_password")
257
+
258
+ @property
259
+ @pulumi.getter(name="servicePort")
260
+ def service_port(self) -> int:
261
+ """
262
+ The port of the service
263
+ """
264
+ return pulumi.get(self, "service_port")
265
+
266
+ @property
267
+ @pulumi.getter(name="serviceType")
268
+ def service_type(self) -> str:
269
+ """
270
+ Aiven internal service type code
271
+ """
272
+ return pulumi.get(self, "service_type")
273
+
274
+ @property
275
+ @pulumi.getter(name="serviceUri")
276
+ def service_uri(self) -> str:
277
+ """
278
+ URI for connecting to the service. Service specific info is under "kafka", "pg", etc.
279
+ """
280
+ return pulumi.get(self, "service_uri")
281
+
282
+ @property
283
+ @pulumi.getter(name="serviceUsername")
284
+ def service_username(self) -> str:
285
+ """
286
+ Username used for connecting to the service, if applicable
287
+ """
288
+ return pulumi.get(self, "service_username")
289
+
290
+ @property
291
+ @pulumi.getter
292
+ def state(self) -> str:
293
+ """
294
+ Service state. One of `POWEROFF`, `REBALANCING`, `REBUILDING` or `RUNNING`
295
+ """
296
+ return pulumi.get(self, "state")
297
+
298
+ @property
299
+ @pulumi.getter(name="staticIps")
300
+ def static_ips(self) -> Sequence[str]:
301
+ """
302
+ 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
303
+ """
304
+ return pulumi.get(self, "static_ips")
305
+
306
+ @property
307
+ @pulumi.getter
308
+ def tags(self) -> Sequence['outputs.GetValkeyTagResult']:
309
+ """
310
+ Tags are key-value pairs that allow you to categorize services.
311
+ """
312
+ return pulumi.get(self, "tags")
313
+
314
+ @property
315
+ @pulumi.getter(name="techEmails")
316
+ def tech_emails(self) -> Sequence['outputs.GetValkeyTechEmailResult']:
317
+ """
318
+ 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.
319
+ """
320
+ return pulumi.get(self, "tech_emails")
321
+
322
+ @property
323
+ @pulumi.getter(name="terminationProtection")
324
+ def termination_protection(self) -> bool:
325
+ """
326
+ 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.
327
+ """
328
+ return pulumi.get(self, "termination_protection")
329
+
330
+ @property
331
+ @pulumi.getter(name="valkeyUserConfigs")
332
+ def valkey_user_configs(self) -> Sequence['outputs.GetValkeyValkeyUserConfigResult']:
333
+ """
334
+ Valkey user configurable settings
335
+ """
336
+ return pulumi.get(self, "valkey_user_configs")
337
+
338
+ @property
339
+ @pulumi.getter
340
+ def valkeys(self) -> Sequence['outputs.GetValkeyValkeyResult']:
341
+ """
342
+ Valkey server provided values
343
+ """
344
+ return pulumi.get(self, "valkeys")
345
+
346
+
347
+ class AwaitableGetValkeyResult(GetValkeyResult):
348
+ # pylint: disable=using-constant-test
349
+ def __await__(self):
350
+ if False:
351
+ yield self
352
+ return GetValkeyResult(
353
+ additional_disk_space=self.additional_disk_space,
354
+ cloud_name=self.cloud_name,
355
+ components=self.components,
356
+ disk_space=self.disk_space,
357
+ disk_space_cap=self.disk_space_cap,
358
+ disk_space_default=self.disk_space_default,
359
+ disk_space_step=self.disk_space_step,
360
+ disk_space_used=self.disk_space_used,
361
+ id=self.id,
362
+ maintenance_window_dow=self.maintenance_window_dow,
363
+ maintenance_window_time=self.maintenance_window_time,
364
+ plan=self.plan,
365
+ project=self.project,
366
+ project_vpc_id=self.project_vpc_id,
367
+ service_host=self.service_host,
368
+ service_integrations=self.service_integrations,
369
+ service_name=self.service_name,
370
+ service_password=self.service_password,
371
+ service_port=self.service_port,
372
+ service_type=self.service_type,
373
+ service_uri=self.service_uri,
374
+ service_username=self.service_username,
375
+ state=self.state,
376
+ static_ips=self.static_ips,
377
+ tags=self.tags,
378
+ tech_emails=self.tech_emails,
379
+ termination_protection=self.termination_protection,
380
+ valkey_user_configs=self.valkey_user_configs,
381
+ valkeys=self.valkeys)
382
+
383
+
384
+ def get_valkey(project: Optional[str] = None,
385
+ service_name: Optional[str] = None,
386
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetValkeyResult:
387
+ """
388
+ Gets information about an Aiven for Valkey service.
389
+
390
+ **This resource is in the beta stage and may change without notice.** Set
391
+ the `PROVIDER_AIVEN_ENABLE_BETA` environment variable to use the resource.
392
+
393
+ ## Example Usage
394
+
395
+ ```python
396
+ import pulumi
397
+ import pulumi_aiven as aiven
398
+
399
+ example_valkey = aiven.get_valkey(project=example_project["project"],
400
+ service_name="example-valkey-service")
401
+ ```
402
+
403
+
404
+ :param 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.
405
+ :param 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.
406
+ """
407
+ __args__ = dict()
408
+ __args__['project'] = project
409
+ __args__['serviceName'] = service_name
410
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
411
+ __ret__ = pulumi.runtime.invoke('aiven:index/getValkey:getValkey', __args__, opts=opts, typ=GetValkeyResult).value
412
+
413
+ return AwaitableGetValkeyResult(
414
+ additional_disk_space=pulumi.get(__ret__, 'additional_disk_space'),
415
+ cloud_name=pulumi.get(__ret__, 'cloud_name'),
416
+ components=pulumi.get(__ret__, 'components'),
417
+ disk_space=pulumi.get(__ret__, 'disk_space'),
418
+ disk_space_cap=pulumi.get(__ret__, 'disk_space_cap'),
419
+ disk_space_default=pulumi.get(__ret__, 'disk_space_default'),
420
+ disk_space_step=pulumi.get(__ret__, 'disk_space_step'),
421
+ disk_space_used=pulumi.get(__ret__, 'disk_space_used'),
422
+ id=pulumi.get(__ret__, 'id'),
423
+ maintenance_window_dow=pulumi.get(__ret__, 'maintenance_window_dow'),
424
+ maintenance_window_time=pulumi.get(__ret__, 'maintenance_window_time'),
425
+ plan=pulumi.get(__ret__, 'plan'),
426
+ project=pulumi.get(__ret__, 'project'),
427
+ project_vpc_id=pulumi.get(__ret__, 'project_vpc_id'),
428
+ service_host=pulumi.get(__ret__, 'service_host'),
429
+ service_integrations=pulumi.get(__ret__, 'service_integrations'),
430
+ service_name=pulumi.get(__ret__, 'service_name'),
431
+ service_password=pulumi.get(__ret__, 'service_password'),
432
+ service_port=pulumi.get(__ret__, 'service_port'),
433
+ service_type=pulumi.get(__ret__, 'service_type'),
434
+ service_uri=pulumi.get(__ret__, 'service_uri'),
435
+ service_username=pulumi.get(__ret__, 'service_username'),
436
+ state=pulumi.get(__ret__, 'state'),
437
+ static_ips=pulumi.get(__ret__, 'static_ips'),
438
+ tags=pulumi.get(__ret__, 'tags'),
439
+ tech_emails=pulumi.get(__ret__, 'tech_emails'),
440
+ termination_protection=pulumi.get(__ret__, 'termination_protection'),
441
+ valkey_user_configs=pulumi.get(__ret__, 'valkey_user_configs'),
442
+ valkeys=pulumi.get(__ret__, 'valkeys'))
443
+
444
+
445
+ @_utilities.lift_output_func(get_valkey)
446
+ def get_valkey_output(project: Optional[pulumi.Input[str]] = None,
447
+ service_name: Optional[pulumi.Input[str]] = None,
448
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetValkeyResult]:
449
+ """
450
+ Gets information about an Aiven for Valkey service.
451
+
452
+ **This resource is in the beta stage and may change without notice.** Set
453
+ the `PROVIDER_AIVEN_ENABLE_BETA` environment variable to use the resource.
454
+
455
+ ## Example Usage
456
+
457
+ ```python
458
+ import pulumi
459
+ import pulumi_aiven as aiven
460
+
461
+ example_valkey = aiven.get_valkey(project=example_project["project"],
462
+ service_name="example-valkey-service")
463
+ ```
464
+
465
+
466
+ :param 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.
467
+ :param 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.
468
+ """
469
+ ...
@@ -0,0 +1,206 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from . import _utilities
11
+
12
+ __all__ = [
13
+ 'GetValkeyUserResult',
14
+ 'AwaitableGetValkeyUserResult',
15
+ 'get_valkey_user',
16
+ 'get_valkey_user_output',
17
+ ]
18
+
19
+ @pulumi.output_type
20
+ class GetValkeyUserResult:
21
+ """
22
+ A collection of values returned by getValkeyUser.
23
+ """
24
+ def __init__(__self__, id=None, password=None, project=None, service_name=None, type=None, username=None, valkey_acl_categories=None, valkey_acl_channels=None, valkey_acl_commands=None, valkey_acl_keys=None):
25
+ if id and not isinstance(id, str):
26
+ raise TypeError("Expected argument 'id' to be a str")
27
+ pulumi.set(__self__, "id", id)
28
+ if password and not isinstance(password, str):
29
+ raise TypeError("Expected argument 'password' to be a str")
30
+ pulumi.set(__self__, "password", password)
31
+ if project and not isinstance(project, str):
32
+ raise TypeError("Expected argument 'project' to be a str")
33
+ pulumi.set(__self__, "project", project)
34
+ if service_name and not isinstance(service_name, str):
35
+ raise TypeError("Expected argument 'service_name' to be a str")
36
+ pulumi.set(__self__, "service_name", service_name)
37
+ if type and not isinstance(type, str):
38
+ raise TypeError("Expected argument 'type' to be a str")
39
+ pulumi.set(__self__, "type", type)
40
+ if username and not isinstance(username, str):
41
+ raise TypeError("Expected argument 'username' to be a str")
42
+ pulumi.set(__self__, "username", username)
43
+ if valkey_acl_categories and not isinstance(valkey_acl_categories, list):
44
+ raise TypeError("Expected argument 'valkey_acl_categories' to be a list")
45
+ pulumi.set(__self__, "valkey_acl_categories", valkey_acl_categories)
46
+ if valkey_acl_channels and not isinstance(valkey_acl_channels, list):
47
+ raise TypeError("Expected argument 'valkey_acl_channels' to be a list")
48
+ pulumi.set(__self__, "valkey_acl_channels", valkey_acl_channels)
49
+ if valkey_acl_commands and not isinstance(valkey_acl_commands, list):
50
+ raise TypeError("Expected argument 'valkey_acl_commands' to be a list")
51
+ pulumi.set(__self__, "valkey_acl_commands", valkey_acl_commands)
52
+ if valkey_acl_keys and not isinstance(valkey_acl_keys, list):
53
+ raise TypeError("Expected argument 'valkey_acl_keys' to be a list")
54
+ pulumi.set(__self__, "valkey_acl_keys", valkey_acl_keys)
55
+
56
+ @property
57
+ @pulumi.getter
58
+ def id(self) -> str:
59
+ """
60
+ The provider-assigned unique ID for this managed resource.
61
+ """
62
+ return pulumi.get(self, "id")
63
+
64
+ @property
65
+ @pulumi.getter
66
+ def password(self) -> str:
67
+ """
68
+ The password of the Valkey User.
69
+ """
70
+ return pulumi.get(self, "password")
71
+
72
+ @property
73
+ @pulumi.getter
74
+ def project(self) -> str:
75
+ """
76
+ 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.
77
+ """
78
+ return pulumi.get(self, "project")
79
+
80
+ @property
81
+ @pulumi.getter(name="serviceName")
82
+ def service_name(self) -> str:
83
+ """
84
+ The name of the service that 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.
85
+ """
86
+ return pulumi.get(self, "service_name")
87
+
88
+ @property
89
+ @pulumi.getter
90
+ def type(self) -> str:
91
+ """
92
+ Type of the user account. Tells whether the user is the primary account or a regular account.
93
+ """
94
+ return pulumi.get(self, "type")
95
+
96
+ @property
97
+ @pulumi.getter
98
+ def username(self) -> str:
99
+ """
100
+ The actual name of the Valkey User. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
101
+ """
102
+ return pulumi.get(self, "username")
103
+
104
+ @property
105
+ @pulumi.getter(name="valkeyAclCategories")
106
+ def valkey_acl_categories(self) -> Sequence[str]:
107
+ """
108
+ Defines command category rules. The field is required with`valkey_acl_commands` and `valkey_acl_keys`. Changing this property forces recreation of the resource.
109
+ """
110
+ return pulumi.get(self, "valkey_acl_categories")
111
+
112
+ @property
113
+ @pulumi.getter(name="valkeyAclChannels")
114
+ def valkey_acl_channels(self) -> Sequence[str]:
115
+ """
116
+ Defines the permitted pub/sub channel patterns. Changing this property forces recreation of the resource.
117
+ """
118
+ return pulumi.get(self, "valkey_acl_channels")
119
+
120
+ @property
121
+ @pulumi.getter(name="valkeyAclCommands")
122
+ def valkey_acl_commands(self) -> Sequence[str]:
123
+ """
124
+ Defines rules for individual commands. The field is required with`valkey_acl_categories` and `valkey_acl_keys`. Changing this property forces recreation of the resource.
125
+ """
126
+ return pulumi.get(self, "valkey_acl_commands")
127
+
128
+ @property
129
+ @pulumi.getter(name="valkeyAclKeys")
130
+ def valkey_acl_keys(self) -> Sequence[str]:
131
+ """
132
+ Defines key access rules. The field is required with`valkey_acl_categories` and `valkey_acl_keys`. Changing this property forces recreation of the resource.
133
+ """
134
+ return pulumi.get(self, "valkey_acl_keys")
135
+
136
+
137
+ class AwaitableGetValkeyUserResult(GetValkeyUserResult):
138
+ # pylint: disable=using-constant-test
139
+ def __await__(self):
140
+ if False:
141
+ yield self
142
+ return GetValkeyUserResult(
143
+ id=self.id,
144
+ password=self.password,
145
+ project=self.project,
146
+ service_name=self.service_name,
147
+ type=self.type,
148
+ username=self.username,
149
+ valkey_acl_categories=self.valkey_acl_categories,
150
+ valkey_acl_channels=self.valkey_acl_channels,
151
+ valkey_acl_commands=self.valkey_acl_commands,
152
+ valkey_acl_keys=self.valkey_acl_keys)
153
+
154
+
155
+ def get_valkey_user(project: Optional[str] = None,
156
+ service_name: Optional[str] = None,
157
+ username: Optional[str] = None,
158
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetValkeyUserResult:
159
+ """
160
+ The Valkey User data source provides information about the existing Aiven for Valkey user.
161
+
162
+ **This resource is in the beta stage and may change without notice.** Set
163
+ the `PROVIDER_AIVEN_ENABLE_BETA` environment variable to use the resource.
164
+
165
+
166
+ :param 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.
167
+ :param str service_name: The name of the service that 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.
168
+ :param str username: The actual name of the Valkey User. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
169
+ """
170
+ __args__ = dict()
171
+ __args__['project'] = project
172
+ __args__['serviceName'] = service_name
173
+ __args__['username'] = username
174
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
175
+ __ret__ = pulumi.runtime.invoke('aiven:index/getValkeyUser:getValkeyUser', __args__, opts=opts, typ=GetValkeyUserResult).value
176
+
177
+ return AwaitableGetValkeyUserResult(
178
+ id=pulumi.get(__ret__, 'id'),
179
+ password=pulumi.get(__ret__, 'password'),
180
+ project=pulumi.get(__ret__, 'project'),
181
+ service_name=pulumi.get(__ret__, 'service_name'),
182
+ type=pulumi.get(__ret__, 'type'),
183
+ username=pulumi.get(__ret__, 'username'),
184
+ valkey_acl_categories=pulumi.get(__ret__, 'valkey_acl_categories'),
185
+ valkey_acl_channels=pulumi.get(__ret__, 'valkey_acl_channels'),
186
+ valkey_acl_commands=pulumi.get(__ret__, 'valkey_acl_commands'),
187
+ valkey_acl_keys=pulumi.get(__ret__, 'valkey_acl_keys'))
188
+
189
+
190
+ @_utilities.lift_output_func(get_valkey_user)
191
+ def get_valkey_user_output(project: Optional[pulumi.Input[str]] = None,
192
+ service_name: Optional[pulumi.Input[str]] = None,
193
+ username: Optional[pulumi.Input[str]] = None,
194
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetValkeyUserResult]:
195
+ """
196
+ The Valkey User data source provides information about the existing Aiven for Valkey user.
197
+
198
+ **This resource is in the beta stage and may change without notice.** Set
199
+ the `PROVIDER_AIVEN_ENABLE_BETA` environment variable to use the resource.
200
+
201
+
202
+ :param 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.
203
+ :param str service_name: The name of the service that 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.
204
+ :param str username: The actual name of the Valkey User. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
205
+ """
206
+ ...