pulumi-aiven 6.13.0a1710156545__py3-none-any.whl → 6.31.0a1736849214__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 (168) hide show
  1. pulumi_aiven/__init__.py +127 -0
  2. pulumi_aiven/_inputs.py +32615 -13711
  3. pulumi_aiven/_utilities.py +41 -5
  4. pulumi_aiven/account.py +32 -45
  5. pulumi_aiven/account_authentication.py +24 -9
  6. pulumi_aiven/account_team.py +35 -14
  7. pulumi_aiven/account_team_member.py +48 -39
  8. pulumi_aiven/account_team_project.py +40 -27
  9. pulumi_aiven/alloydbomni.py +1335 -0
  10. pulumi_aiven/alloydbomni_database.py +347 -0
  11. pulumi_aiven/alloydbomni_user.py +433 -0
  12. pulumi_aiven/aws_privatelink.py +44 -43
  13. pulumi_aiven/aws_vpc_peering_connection.py +72 -61
  14. pulumi_aiven/azure_privatelink.py +54 -53
  15. pulumi_aiven/azure_privatelink_connection_approval.py +136 -33
  16. pulumi_aiven/azure_vpc_peering_connection.py +86 -77
  17. pulumi_aiven/billing_group.py +33 -34
  18. pulumi_aiven/cassandra.py +145 -126
  19. pulumi_aiven/cassandra_user.py +59 -58
  20. pulumi_aiven/clickhouse.py +133 -114
  21. pulumi_aiven/clickhouse_database.py +58 -62
  22. pulumi_aiven/clickhouse_grant.py +135 -134
  23. pulumi_aiven/clickhouse_role.py +36 -49
  24. pulumi_aiven/clickhouse_user.py +50 -49
  25. pulumi_aiven/config/__init__.pyi +5 -0
  26. pulumi_aiven/config/vars.py +5 -0
  27. pulumi_aiven/connection_pool.py +67 -66
  28. pulumi_aiven/dragonfly.py +1256 -0
  29. pulumi_aiven/flink.py +104 -104
  30. pulumi_aiven/flink_application.py +58 -55
  31. pulumi_aiven/flink_application_deployment.py +178 -73
  32. pulumi_aiven/flink_application_version.py +179 -96
  33. pulumi_aiven/gcp_privatelink.py +69 -42
  34. pulumi_aiven/gcp_privatelink_connection_approval.py +78 -49
  35. pulumi_aiven/gcp_vpc_peering_connection.py +49 -48
  36. pulumi_aiven/get_account.py +20 -9
  37. pulumi_aiven/get_account_authentication.py +31 -5
  38. pulumi_aiven/get_account_team.py +18 -5
  39. pulumi_aiven/get_account_team_member.py +29 -14
  40. pulumi_aiven/get_account_team_project.py +19 -6
  41. pulumi_aiven/get_alloydbomni.py +499 -0
  42. pulumi_aiven/get_alloydbomni_database.py +168 -0
  43. pulumi_aiven/get_alloydbomni_user.py +210 -0
  44. pulumi_aiven/get_aws_privatelink.py +33 -24
  45. pulumi_aiven/get_aws_vpc_peering_connection.py +56 -33
  46. pulumi_aiven/get_azure_privatelink.py +37 -26
  47. pulumi_aiven/get_azure_vpc_peering_connection.py +77 -28
  48. pulumi_aiven/get_billing_group.py +31 -8
  49. pulumi_aiven/get_cassanda.py +55 -23
  50. pulumi_aiven/get_cassandra.py +55 -23
  51. pulumi_aiven/get_cassandra_user.py +42 -30
  52. pulumi_aiven/get_clickhouse.py +55 -23
  53. pulumi_aiven/get_clickhouse_database.py +35 -26
  54. pulumi_aiven/get_clickhouse_user.py +40 -29
  55. pulumi_aiven/get_connection_pool.py +43 -30
  56. pulumi_aiven/get_dragonfly.py +499 -0
  57. pulumi_aiven/get_external_identity.py +160 -0
  58. pulumi_aiven/get_flink.py +55 -23
  59. pulumi_aiven/get_flink_application.py +44 -31
  60. pulumi_aiven/get_flink_application_version.py +55 -37
  61. pulumi_aiven/get_gcp_privatelink.py +63 -7
  62. pulumi_aiven/get_gcp_vpc_peering_connection.py +39 -28
  63. pulumi_aiven/get_grafana.py +55 -23
  64. pulumi_aiven/get_influx_db.py +41 -5
  65. pulumi_aiven/get_influxdb_database.py +18 -5
  66. pulumi_aiven/get_influxdb_user.py +21 -5
  67. pulumi_aiven/get_kafka.py +59 -25
  68. pulumi_aiven/get_kafka_acl.py +50 -37
  69. pulumi_aiven/get_kafka_connect.py +54 -36
  70. pulumi_aiven/get_kafka_connector.py +44 -28
  71. pulumi_aiven/get_kafka_mirror_maker.py +50 -32
  72. pulumi_aiven/get_kafka_schema.py +35 -23
  73. pulumi_aiven/get_kafka_schema_configuration.py +32 -21
  74. pulumi_aiven/get_kafka_schema_registry_acl.py +37 -20
  75. pulumi_aiven/get_kafka_topic.py +70 -29
  76. pulumi_aiven/get_kafka_user.py +42 -30
  77. pulumi_aiven/get_m3_aggregator.py +51 -19
  78. pulumi_aiven/get_m3_db.py +55 -23
  79. pulumi_aiven/get_m3db_user.py +38 -28
  80. pulumi_aiven/get_mirror_maker_replication_flow.py +86 -25
  81. pulumi_aiven/get_my_sql.py +50 -18
  82. pulumi_aiven/get_mysql_database.py +31 -22
  83. pulumi_aiven/get_mysql_user.py +36 -23
  84. pulumi_aiven/get_open_search.py +50 -18
  85. pulumi_aiven/get_open_search_acl_config.py +27 -19
  86. pulumi_aiven/get_open_search_acl_rule.py +37 -25
  87. pulumi_aiven/get_opensearch_security_plugin_config.py +29 -19
  88. pulumi_aiven/get_opensearch_user.py +32 -22
  89. pulumi_aiven/get_organization.py +25 -17
  90. pulumi_aiven/get_organization_application_user.py +176 -0
  91. pulumi_aiven/get_organization_user.py +18 -5
  92. pulumi_aiven/get_organization_user_group.py +48 -14
  93. pulumi_aiven/get_organization_user_list.py +121 -0
  94. pulumi_aiven/get_organizational_unit.py +26 -14
  95. pulumi_aiven/get_pg.py +55 -23
  96. pulumi_aiven/get_pg_database.py +39 -28
  97. pulumi_aiven/get_pg_user.py +44 -31
  98. pulumi_aiven/get_project.py +43 -26
  99. pulumi_aiven/get_project_user.py +27 -19
  100. pulumi_aiven/get_project_vpc.py +31 -23
  101. pulumi_aiven/get_redis.py +50 -18
  102. pulumi_aiven/get_redis_user.py +40 -26
  103. pulumi_aiven/get_service_component.py +40 -22
  104. pulumi_aiven/get_service_integration.py +163 -53
  105. pulumi_aiven/get_service_integration_endpoint.py +128 -37
  106. pulumi_aiven/get_thanos.py +499 -0
  107. pulumi_aiven/get_transit_gateway_vpc_attachment.py +35 -22
  108. pulumi_aiven/get_valkey.py +499 -0
  109. pulumi_aiven/get_valkey_user.py +218 -0
  110. pulumi_aiven/grafana.py +188 -322
  111. pulumi_aiven/influx_db.py +127 -90
  112. pulumi_aiven/influxdb_database.py +40 -55
  113. pulumi_aiven/influxdb_user.py +47 -42
  114. pulumi_aiven/kafka.py +157 -144
  115. pulumi_aiven/kafka_acl.py +64 -57
  116. pulumi_aiven/kafka_connect.py +201 -332
  117. pulumi_aiven/kafka_connector.py +67 -60
  118. pulumi_aiven/kafka_mirror_maker.py +137 -320
  119. pulumi_aiven/kafka_native_acl.py +588 -0
  120. pulumi_aiven/kafka_schema.py +63 -58
  121. pulumi_aiven/kafka_schema_configuration.py +25 -24
  122. pulumi_aiven/kafka_schema_registry_acl.py +80 -35
  123. pulumi_aiven/kafka_topic.py +184 -65
  124. pulumi_aiven/kafka_user.py +59 -58
  125. pulumi_aiven/m3_aggregator.py +174 -310
  126. pulumi_aiven/m3_db.py +190 -326
  127. pulumi_aiven/m3db_user.py +51 -50
  128. pulumi_aiven/mirror_maker_replication_flow.py +215 -55
  129. pulumi_aiven/my_sql.py +188 -324
  130. pulumi_aiven/mysql_database.py +32 -51
  131. pulumi_aiven/mysql_user.py +37 -36
  132. pulumi_aiven/open_search.py +126 -107
  133. pulumi_aiven/open_search_acl_config.py +33 -36
  134. pulumi_aiven/open_search_acl_rule.py +55 -54
  135. pulumi_aiven/opensearch_security_plugin_config.py +69 -16
  136. pulumi_aiven/opensearch_user.py +30 -29
  137. pulumi_aiven/organization.py +18 -17
  138. pulumi_aiven/organization_application_user.py +345 -0
  139. pulumi_aiven/organization_application_user_token.py +711 -0
  140. pulumi_aiven/organization_group_project.py +349 -0
  141. pulumi_aiven/organization_permission.py +421 -0
  142. pulumi_aiven/organization_user.py +25 -46
  143. pulumi_aiven/organization_user_group.py +64 -23
  144. pulumi_aiven/organization_user_group_member.py +359 -0
  145. pulumi_aiven/organizational_unit.py +41 -36
  146. pulumi_aiven/outputs.py +38355 -21458
  147. pulumi_aiven/pg.py +92 -88
  148. pulumi_aiven/pg_database.py +52 -71
  149. pulumi_aiven/pg_user.py +80 -65
  150. pulumi_aiven/project.py +111 -102
  151. pulumi_aiven/project_user.py +44 -35
  152. pulumi_aiven/project_vpc.py +58 -29
  153. pulumi_aiven/provider.py +5 -0
  154. pulumi_aiven/pulumi-plugin.json +2 -1
  155. pulumi_aiven/redis.py +161 -297
  156. pulumi_aiven/redis_user.py +58 -57
  157. pulumi_aiven/service_integration.py +511 -165
  158. pulumi_aiven/service_integration_endpoint.py +466 -158
  159. pulumi_aiven/static_ip.py +21 -16
  160. pulumi_aiven/thanos.py +1262 -0
  161. pulumi_aiven/transit_gateway_vpc_attachment.py +44 -58
  162. pulumi_aiven/valkey.py +1256 -0
  163. pulumi_aiven/valkey_user.py +606 -0
  164. {pulumi_aiven-6.13.0a1710156545.dist-info → pulumi_aiven-6.31.0a1736849214.dist-info}/METADATA +7 -6
  165. pulumi_aiven-6.31.0a1736849214.dist-info/RECORD +169 -0
  166. {pulumi_aiven-6.13.0a1710156545.dist-info → pulumi_aiven-6.31.0a1736849214.dist-info}/WHEEL +1 -1
  167. pulumi_aiven-6.13.0a1710156545.dist-info/RECORD +0 -146
  168. {pulumi_aiven-6.13.0a1710156545.dist-info → pulumi_aiven-6.31.0a1736849214.dist-info}/top_level.txt +0 -0
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -24,12 +29,12 @@ class ClickhouseGrantArgs:
24
29
  user: Optional[pulumi.Input[str]] = None):
25
30
  """
26
31
  The set of arguments for constructing a ClickhouseGrant resource.
27
- :param pulumi.Input[str] project: Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
28
- :param pulumi.Input[str] service_name: Specifies the name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
29
- :param pulumi.Input[Sequence[pulumi.Input['ClickhouseGrantPrivilegeGrantArgs']]] privilege_grants: Configuration to grant a privilege. This property cannot be changed, doing so forces recreation of the resource.
30
- :param pulumi.Input[str] role: The role that is to be granted. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
31
- :param pulumi.Input[Sequence[pulumi.Input['ClickhouseGrantRoleGrantArgs']]] role_grants: Configuration to grant a role. This property cannot be changed, doing so forces recreation of the resource.
32
- :param pulumi.Input[str] user: The user to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
32
+ :param pulumi.Input[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.
33
+ :param pulumi.Input[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.
34
+ :param pulumi.Input[Sequence[pulumi.Input['ClickhouseGrantPrivilegeGrantArgs']]] privilege_grants: Grant privileges. Changing this property forces recreation of the resource.
35
+ :param pulumi.Input[str] role: The role to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
36
+ :param pulumi.Input[Sequence[pulumi.Input['ClickhouseGrantRoleGrantArgs']]] role_grants: Grant roles. Changing this property forces recreation of the resource.
37
+ :param pulumi.Input[str] user: The user to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
33
38
  """
34
39
  pulumi.set(__self__, "project", project)
35
40
  pulumi.set(__self__, "service_name", service_name)
@@ -46,7 +51,7 @@ class ClickhouseGrantArgs:
46
51
  @pulumi.getter
47
52
  def project(self) -> pulumi.Input[str]:
48
53
  """
49
- Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
54
+ 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.
50
55
  """
51
56
  return pulumi.get(self, "project")
52
57
 
@@ -58,7 +63,7 @@ class ClickhouseGrantArgs:
58
63
  @pulumi.getter(name="serviceName")
59
64
  def service_name(self) -> pulumi.Input[str]:
60
65
  """
61
- Specifies the name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
66
+ 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.
62
67
  """
63
68
  return pulumi.get(self, "service_name")
64
69
 
@@ -70,7 +75,7 @@ class ClickhouseGrantArgs:
70
75
  @pulumi.getter(name="privilegeGrants")
71
76
  def privilege_grants(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClickhouseGrantPrivilegeGrantArgs']]]]:
72
77
  """
73
- Configuration to grant a privilege. This property cannot be changed, doing so forces recreation of the resource.
78
+ Grant privileges. Changing this property forces recreation of the resource.
74
79
  """
75
80
  return pulumi.get(self, "privilege_grants")
76
81
 
@@ -82,7 +87,7 @@ class ClickhouseGrantArgs:
82
87
  @pulumi.getter
83
88
  def role(self) -> Optional[pulumi.Input[str]]:
84
89
  """
85
- The role that is to be granted. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
90
+ The role to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
86
91
  """
87
92
  return pulumi.get(self, "role")
88
93
 
@@ -94,7 +99,7 @@ class ClickhouseGrantArgs:
94
99
  @pulumi.getter(name="roleGrants")
95
100
  def role_grants(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClickhouseGrantRoleGrantArgs']]]]:
96
101
  """
97
- Configuration to grant a role. This property cannot be changed, doing so forces recreation of the resource.
102
+ Grant roles. Changing this property forces recreation of the resource.
98
103
  """
99
104
  return pulumi.get(self, "role_grants")
100
105
 
@@ -106,7 +111,7 @@ class ClickhouseGrantArgs:
106
111
  @pulumi.getter
107
112
  def user(self) -> Optional[pulumi.Input[str]]:
108
113
  """
109
- The user to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
114
+ The user to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
110
115
  """
111
116
  return pulumi.get(self, "user")
112
117
 
@@ -126,12 +131,12 @@ class _ClickhouseGrantState:
126
131
  user: Optional[pulumi.Input[str]] = None):
127
132
  """
128
133
  Input properties used for looking up and filtering ClickhouseGrant resources.
129
- :param pulumi.Input[Sequence[pulumi.Input['ClickhouseGrantPrivilegeGrantArgs']]] privilege_grants: Configuration to grant a privilege. This property cannot be changed, doing so forces recreation of the resource.
130
- :param pulumi.Input[str] project: Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
131
- :param pulumi.Input[str] role: The role that is to be granted. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
132
- :param pulumi.Input[Sequence[pulumi.Input['ClickhouseGrantRoleGrantArgs']]] role_grants: Configuration to grant a role. This property cannot be changed, doing so forces recreation of the resource.
133
- :param pulumi.Input[str] service_name: Specifies the name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
134
- :param pulumi.Input[str] user: The user to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
134
+ :param pulumi.Input[Sequence[pulumi.Input['ClickhouseGrantPrivilegeGrantArgs']]] privilege_grants: Grant privileges. Changing this property forces recreation of the resource.
135
+ :param pulumi.Input[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.
136
+ :param pulumi.Input[str] role: The role to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
137
+ :param pulumi.Input[Sequence[pulumi.Input['ClickhouseGrantRoleGrantArgs']]] role_grants: Grant roles. Changing this property forces recreation of the resource.
138
+ :param pulumi.Input[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.
139
+ :param pulumi.Input[str] user: The user to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
135
140
  """
136
141
  if privilege_grants is not None:
137
142
  pulumi.set(__self__, "privilege_grants", privilege_grants)
@@ -150,7 +155,7 @@ class _ClickhouseGrantState:
150
155
  @pulumi.getter(name="privilegeGrants")
151
156
  def privilege_grants(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClickhouseGrantPrivilegeGrantArgs']]]]:
152
157
  """
153
- Configuration to grant a privilege. This property cannot be changed, doing so forces recreation of the resource.
158
+ Grant privileges. Changing this property forces recreation of the resource.
154
159
  """
155
160
  return pulumi.get(self, "privilege_grants")
156
161
 
@@ -162,7 +167,7 @@ class _ClickhouseGrantState:
162
167
  @pulumi.getter
163
168
  def project(self) -> Optional[pulumi.Input[str]]:
164
169
  """
165
- Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
170
+ 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.
166
171
  """
167
172
  return pulumi.get(self, "project")
168
173
 
@@ -174,7 +179,7 @@ class _ClickhouseGrantState:
174
179
  @pulumi.getter
175
180
  def role(self) -> Optional[pulumi.Input[str]]:
176
181
  """
177
- The role that is to be granted. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
182
+ The role to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
178
183
  """
179
184
  return pulumi.get(self, "role")
180
185
 
@@ -186,7 +191,7 @@ class _ClickhouseGrantState:
186
191
  @pulumi.getter(name="roleGrants")
187
192
  def role_grants(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClickhouseGrantRoleGrantArgs']]]]:
188
193
  """
189
- Configuration to grant a role. This property cannot be changed, doing so forces recreation of the resource.
194
+ Grant roles. Changing this property forces recreation of the resource.
190
195
  """
191
196
  return pulumi.get(self, "role_grants")
192
197
 
@@ -198,7 +203,7 @@ class _ClickhouseGrantState:
198
203
  @pulumi.getter(name="serviceName")
199
204
  def service_name(self) -> Optional[pulumi.Input[str]]:
200
205
  """
201
- Specifies the name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
206
+ 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.
202
207
  """
203
208
  return pulumi.get(self, "service_name")
204
209
 
@@ -210,7 +215,7 @@ class _ClickhouseGrantState:
210
215
  @pulumi.getter
211
216
  def user(self) -> Optional[pulumi.Input[str]]:
212
217
  """
213
- The user to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
218
+ The user to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
214
219
  """
215
220
  return pulumi.get(self, "user")
216
221
 
@@ -224,77 +229,75 @@ class ClickhouseGrant(pulumi.CustomResource):
224
229
  def __init__(__self__,
225
230
  resource_name: str,
226
231
  opts: Optional[pulumi.ResourceOptions] = None,
227
- privilege_grants: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClickhouseGrantPrivilegeGrantArgs']]]]] = None,
232
+ privilege_grants: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ClickhouseGrantPrivilegeGrantArgs', 'ClickhouseGrantPrivilegeGrantArgsDict']]]]] = None,
228
233
  project: Optional[pulumi.Input[str]] = None,
229
234
  role: Optional[pulumi.Input[str]] = None,
230
- role_grants: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClickhouseGrantRoleGrantArgs']]]]] = None,
235
+ role_grants: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ClickhouseGrantRoleGrantArgs', 'ClickhouseGrantRoleGrantArgsDict']]]]] = None,
231
236
  service_name: Optional[pulumi.Input[str]] = None,
232
237
  user: Optional[pulumi.Input[str]] = None,
233
238
  __props__=None):
234
239
  """
235
- The Clickhouse Grant resource allows the creation and management of Grants in Aiven Clickhouse services.
240
+ Creates and manages ClickHouse grants to give users and roles privileges to a ClickHouse service.
236
241
 
237
- Notes:
238
- * Due to a ambiguity in the GRANT syntax in clickhouse you should not have users and roles with the same name. It is not clear if a grant refers to the user or the role.
239
- * To grant a privilege on all tables of a database, do not write table = "*". Instead, omit the table and only keep the database.
240
- * Currently changes will first revoke all grants and then reissue the remaining grants for convergence.
242
+ **Note:**
243
+ * Users cannot have the same name as roles.
244
+ * To grant a privilege on all tables of a database, omit the table and only keep the database. Don't use `table="*"`.
245
+ * Changes first revoke all grants and then reissue the remaining grants for convergence.
241
246
 
242
247
  ## Example Usage
243
248
 
244
- <!--Start PulumiCodeChooser -->
245
249
  ```python
246
250
  import pulumi
247
251
  import pulumi_aiven as aiven
248
252
 
249
- clickhouse = aiven.Clickhouse("clickhouse",
250
- project=var["aiven_project_name"],
251
- cloud_name="google-europe-west1",
252
- plan="startup-8",
253
- service_name="exapmle-clickhouse")
254
- demodb = aiven.ClickhouseDatabase("demodb",
255
- project=clickhouse.project,
256
- service_name=clickhouse.service_name)
257
- demo_clickhouse_role = aiven.ClickhouseRole("demoClickhouseRole",
258
- project=clickhouse.project,
259
- service_name=clickhouse.service_name,
260
- role="demo-role")
261
- demo_role_grant = aiven.ClickhouseGrant("demo-role-grant",
262
- project=clickhouse.project,
263
- service_name=clickhouse.service_name,
264
- role=demo_clickhouse_role.role,
253
+ example_role = aiven.ClickhouseRole("example_role",
254
+ project=example_project["project"],
255
+ service_name=example_clickhouse["serviceName"],
256
+ role="example-role")
257
+ # Grant privileges to the example role.
258
+ role_privileges = aiven.ClickhouseGrant("role_privileges",
259
+ project=example_project["project"],
260
+ service_name=example_clickhouse["serviceName"],
261
+ role=example_role.role,
265
262
  privilege_grants=[
266
- aiven.ClickhouseGrantPrivilegeGrantArgs(
267
- privilege="INSERT",
268
- database=demodb.name,
269
- table="demo-table",
270
- ),
271
- aiven.ClickhouseGrantPrivilegeGrantArgs(
272
- privilege="SELECT",
273
- database=demodb.name,
274
- ),
263
+ {
264
+ "privilege": "INSERT",
265
+ "database": example_db["name"],
266
+ "table": "example-table",
267
+ },
268
+ {
269
+ "privilege": "SELECT",
270
+ "database": example_db["name"],
271
+ },
275
272
  ])
276
- demo_clickhouse_user = aiven.ClickhouseUser("demoClickhouseUser",
277
- project=clickhouse.project,
278
- service_name=clickhouse.service_name,
279
- username="demo-user")
280
- demo_user_grant = aiven.ClickhouseGrant("demo-user-grant",
281
- project=clickhouse.project,
282
- service_name=clickhouse.service_name,
283
- user=demo_clickhouse_user.username,
284
- role_grants=[aiven.ClickhouseGrantRoleGrantArgs(
285
- role=demo_clickhouse_role.role,
286
- )])
273
+ # Grant the role to the user.
274
+ example_user = aiven.ClickhouseUser("example_user",
275
+ project=example_project["project"],
276
+ service_name=example_clickhouse["serviceName"],
277
+ username="example-user")
278
+ user_role_assignment = aiven.ClickhouseGrant("user_role_assignment",
279
+ project=example_project["project"],
280
+ service_name=example_clickhouse["serviceName"],
281
+ user=example_user.username,
282
+ role_grants=[{
283
+ "role": example_role.role,
284
+ }])
285
+ ```
286
+
287
+ ## Import
288
+
289
+ ```sh
290
+ $ pulumi import aiven:index/clickhouseGrant:ClickhouseGrant example_grant PROJECT/SERVICE_NAME/ID
287
291
  ```
288
- <!--End PulumiCodeChooser -->
289
292
 
290
293
  :param str resource_name: The name of the resource.
291
294
  :param pulumi.ResourceOptions opts: Options for the resource.
292
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClickhouseGrantPrivilegeGrantArgs']]]] privilege_grants: Configuration to grant a privilege. This property cannot be changed, doing so forces recreation of the resource.
293
- :param pulumi.Input[str] project: Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
294
- :param pulumi.Input[str] role: The role that is to be granted. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
295
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClickhouseGrantRoleGrantArgs']]]] role_grants: Configuration to grant a role. This property cannot be changed, doing so forces recreation of the resource.
296
- :param pulumi.Input[str] service_name: Specifies the name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
297
- :param pulumi.Input[str] user: The user to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
295
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ClickhouseGrantPrivilegeGrantArgs', 'ClickhouseGrantPrivilegeGrantArgsDict']]]] privilege_grants: Grant privileges. Changing this property forces recreation of the resource.
296
+ :param pulumi.Input[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.
297
+ :param pulumi.Input[str] role: The role to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
298
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ClickhouseGrantRoleGrantArgs', 'ClickhouseGrantRoleGrantArgsDict']]]] role_grants: Grant roles. Changing this property forces recreation of the resource.
299
+ :param pulumi.Input[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.
300
+ :param pulumi.Input[str] user: The user to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
298
301
  """
299
302
  ...
300
303
  @overload
@@ -303,60 +306,58 @@ class ClickhouseGrant(pulumi.CustomResource):
303
306
  args: ClickhouseGrantArgs,
304
307
  opts: Optional[pulumi.ResourceOptions] = None):
305
308
  """
306
- The Clickhouse Grant resource allows the creation and management of Grants in Aiven Clickhouse services.
309
+ Creates and manages ClickHouse grants to give users and roles privileges to a ClickHouse service.
307
310
 
308
- Notes:
309
- * Due to a ambiguity in the GRANT syntax in clickhouse you should not have users and roles with the same name. It is not clear if a grant refers to the user or the role.
310
- * To grant a privilege on all tables of a database, do not write table = "*". Instead, omit the table and only keep the database.
311
- * Currently changes will first revoke all grants and then reissue the remaining grants for convergence.
311
+ **Note:**
312
+ * Users cannot have the same name as roles.
313
+ * To grant a privilege on all tables of a database, omit the table and only keep the database. Don't use `table="*"`.
314
+ * Changes first revoke all grants and then reissue the remaining grants for convergence.
312
315
 
313
316
  ## Example Usage
314
317
 
315
- <!--Start PulumiCodeChooser -->
316
318
  ```python
317
319
  import pulumi
318
320
  import pulumi_aiven as aiven
319
321
 
320
- clickhouse = aiven.Clickhouse("clickhouse",
321
- project=var["aiven_project_name"],
322
- cloud_name="google-europe-west1",
323
- plan="startup-8",
324
- service_name="exapmle-clickhouse")
325
- demodb = aiven.ClickhouseDatabase("demodb",
326
- project=clickhouse.project,
327
- service_name=clickhouse.service_name)
328
- demo_clickhouse_role = aiven.ClickhouseRole("demoClickhouseRole",
329
- project=clickhouse.project,
330
- service_name=clickhouse.service_name,
331
- role="demo-role")
332
- demo_role_grant = aiven.ClickhouseGrant("demo-role-grant",
333
- project=clickhouse.project,
334
- service_name=clickhouse.service_name,
335
- role=demo_clickhouse_role.role,
322
+ example_role = aiven.ClickhouseRole("example_role",
323
+ project=example_project["project"],
324
+ service_name=example_clickhouse["serviceName"],
325
+ role="example-role")
326
+ # Grant privileges to the example role.
327
+ role_privileges = aiven.ClickhouseGrant("role_privileges",
328
+ project=example_project["project"],
329
+ service_name=example_clickhouse["serviceName"],
330
+ role=example_role.role,
336
331
  privilege_grants=[
337
- aiven.ClickhouseGrantPrivilegeGrantArgs(
338
- privilege="INSERT",
339
- database=demodb.name,
340
- table="demo-table",
341
- ),
342
- aiven.ClickhouseGrantPrivilegeGrantArgs(
343
- privilege="SELECT",
344
- database=demodb.name,
345
- ),
332
+ {
333
+ "privilege": "INSERT",
334
+ "database": example_db["name"],
335
+ "table": "example-table",
336
+ },
337
+ {
338
+ "privilege": "SELECT",
339
+ "database": example_db["name"],
340
+ },
346
341
  ])
347
- demo_clickhouse_user = aiven.ClickhouseUser("demoClickhouseUser",
348
- project=clickhouse.project,
349
- service_name=clickhouse.service_name,
350
- username="demo-user")
351
- demo_user_grant = aiven.ClickhouseGrant("demo-user-grant",
352
- project=clickhouse.project,
353
- service_name=clickhouse.service_name,
354
- user=demo_clickhouse_user.username,
355
- role_grants=[aiven.ClickhouseGrantRoleGrantArgs(
356
- role=demo_clickhouse_role.role,
357
- )])
342
+ # Grant the role to the user.
343
+ example_user = aiven.ClickhouseUser("example_user",
344
+ project=example_project["project"],
345
+ service_name=example_clickhouse["serviceName"],
346
+ username="example-user")
347
+ user_role_assignment = aiven.ClickhouseGrant("user_role_assignment",
348
+ project=example_project["project"],
349
+ service_name=example_clickhouse["serviceName"],
350
+ user=example_user.username,
351
+ role_grants=[{
352
+ "role": example_role.role,
353
+ }])
354
+ ```
355
+
356
+ ## Import
357
+
358
+ ```sh
359
+ $ pulumi import aiven:index/clickhouseGrant:ClickhouseGrant example_grant PROJECT/SERVICE_NAME/ID
358
360
  ```
359
- <!--End PulumiCodeChooser -->
360
361
 
361
362
  :param str resource_name: The name of the resource.
362
363
  :param ClickhouseGrantArgs args: The arguments to use to populate this resource's properties.
@@ -373,10 +374,10 @@ class ClickhouseGrant(pulumi.CustomResource):
373
374
  def _internal_init(__self__,
374
375
  resource_name: str,
375
376
  opts: Optional[pulumi.ResourceOptions] = None,
376
- privilege_grants: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClickhouseGrantPrivilegeGrantArgs']]]]] = None,
377
+ privilege_grants: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ClickhouseGrantPrivilegeGrantArgs', 'ClickhouseGrantPrivilegeGrantArgsDict']]]]] = None,
377
378
  project: Optional[pulumi.Input[str]] = None,
378
379
  role: Optional[pulumi.Input[str]] = None,
379
- role_grants: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClickhouseGrantRoleGrantArgs']]]]] = None,
380
+ role_grants: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ClickhouseGrantRoleGrantArgs', 'ClickhouseGrantRoleGrantArgsDict']]]]] = None,
380
381
  service_name: Optional[pulumi.Input[str]] = None,
381
382
  user: Optional[pulumi.Input[str]] = None,
382
383
  __props__=None):
@@ -408,10 +409,10 @@ class ClickhouseGrant(pulumi.CustomResource):
408
409
  def get(resource_name: str,
409
410
  id: pulumi.Input[str],
410
411
  opts: Optional[pulumi.ResourceOptions] = None,
411
- privilege_grants: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClickhouseGrantPrivilegeGrantArgs']]]]] = None,
412
+ privilege_grants: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ClickhouseGrantPrivilegeGrantArgs', 'ClickhouseGrantPrivilegeGrantArgsDict']]]]] = None,
412
413
  project: Optional[pulumi.Input[str]] = None,
413
414
  role: Optional[pulumi.Input[str]] = None,
414
- role_grants: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClickhouseGrantRoleGrantArgs']]]]] = None,
415
+ role_grants: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ClickhouseGrantRoleGrantArgs', 'ClickhouseGrantRoleGrantArgsDict']]]]] = None,
415
416
  service_name: Optional[pulumi.Input[str]] = None,
416
417
  user: Optional[pulumi.Input[str]] = None) -> 'ClickhouseGrant':
417
418
  """
@@ -421,12 +422,12 @@ class ClickhouseGrant(pulumi.CustomResource):
421
422
  :param str resource_name: The unique name of the resulting resource.
422
423
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
423
424
  :param pulumi.ResourceOptions opts: Options for the resource.
424
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClickhouseGrantPrivilegeGrantArgs']]]] privilege_grants: Configuration to grant a privilege. This property cannot be changed, doing so forces recreation of the resource.
425
- :param pulumi.Input[str] project: Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
426
- :param pulumi.Input[str] role: The role that is to be granted. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
427
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClickhouseGrantRoleGrantArgs']]]] role_grants: Configuration to grant a role. This property cannot be changed, doing so forces recreation of the resource.
428
- :param pulumi.Input[str] service_name: Specifies the name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
429
- :param pulumi.Input[str] user: The user to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
425
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ClickhouseGrantPrivilegeGrantArgs', 'ClickhouseGrantPrivilegeGrantArgsDict']]]] privilege_grants: Grant privileges. Changing this property forces recreation of the resource.
426
+ :param pulumi.Input[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.
427
+ :param pulumi.Input[str] role: The role to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
428
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ClickhouseGrantRoleGrantArgs', 'ClickhouseGrantRoleGrantArgsDict']]]] role_grants: Grant roles. Changing this property forces recreation of the resource.
429
+ :param pulumi.Input[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.
430
+ :param pulumi.Input[str] user: The user to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
430
431
  """
431
432
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
432
433
 
@@ -444,7 +445,7 @@ class ClickhouseGrant(pulumi.CustomResource):
444
445
  @pulumi.getter(name="privilegeGrants")
445
446
  def privilege_grants(self) -> pulumi.Output[Optional[Sequence['outputs.ClickhouseGrantPrivilegeGrant']]]:
446
447
  """
447
- Configuration to grant a privilege. This property cannot be changed, doing so forces recreation of the resource.
448
+ Grant privileges. Changing this property forces recreation of the resource.
448
449
  """
449
450
  return pulumi.get(self, "privilege_grants")
450
451
 
@@ -452,7 +453,7 @@ class ClickhouseGrant(pulumi.CustomResource):
452
453
  @pulumi.getter
453
454
  def project(self) -> pulumi.Output[str]:
454
455
  """
455
- Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
456
+ 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.
456
457
  """
457
458
  return pulumi.get(self, "project")
458
459
 
@@ -460,7 +461,7 @@ class ClickhouseGrant(pulumi.CustomResource):
460
461
  @pulumi.getter
461
462
  def role(self) -> pulumi.Output[Optional[str]]:
462
463
  """
463
- The role that is to be granted. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
464
+ The role to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
464
465
  """
465
466
  return pulumi.get(self, "role")
466
467
 
@@ -468,7 +469,7 @@ class ClickhouseGrant(pulumi.CustomResource):
468
469
  @pulumi.getter(name="roleGrants")
469
470
  def role_grants(self) -> pulumi.Output[Optional[Sequence['outputs.ClickhouseGrantRoleGrant']]]:
470
471
  """
471
- Configuration to grant a role. This property cannot be changed, doing so forces recreation of the resource.
472
+ Grant roles. Changing this property forces recreation of the resource.
472
473
  """
473
474
  return pulumi.get(self, "role_grants")
474
475
 
@@ -476,7 +477,7 @@ class ClickhouseGrant(pulumi.CustomResource):
476
477
  @pulumi.getter(name="serviceName")
477
478
  def service_name(self) -> pulumi.Output[str]:
478
479
  """
479
- Specifies the name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
480
+ 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.
480
481
  """
481
482
  return pulumi.get(self, "service_name")
482
483
 
@@ -484,7 +485,7 @@ class ClickhouseGrant(pulumi.CustomResource):
484
485
  @pulumi.getter
485
486
  def user(self) -> pulumi.Output[Optional[str]]:
486
487
  """
487
- The user to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
488
+ The user to grant privileges or roles to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
488
489
  """
489
490
  return pulumi.get(self, "user")
490
491