pulumi-aiven 6.13.0a1709702245__py3-none-any.whl → 6.31.0a1736831339__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 +32826 -13922
  3. pulumi_aiven/_utilities.py +41 -5
  4. pulumi_aiven/account.py +34 -43
  5. pulumi_aiven/account_authentication.py +24 -9
  6. pulumi_aiven/account_team.py +37 -12
  7. pulumi_aiven/account_team_member.py +48 -35
  8. pulumi_aiven/account_team_project.py +42 -25
  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 -39
  13. pulumi_aiven/aws_vpc_peering_connection.py +72 -57
  14. pulumi_aiven/azure_privatelink.py +54 -49
  15. pulumi_aiven/azure_privatelink_connection_approval.py +136 -33
  16. pulumi_aiven/azure_vpc_peering_connection.py +86 -73
  17. pulumi_aiven/billing_group.py +33 -30
  18. pulumi_aiven/cassandra.py +145 -122
  19. pulumi_aiven/cassandra_user.py +59 -54
  20. pulumi_aiven/clickhouse.py +133 -110
  21. pulumi_aiven/clickhouse_database.py +58 -58
  22. pulumi_aiven/clickhouse_grant.py +135 -130
  23. pulumi_aiven/clickhouse_role.py +36 -45
  24. pulumi_aiven/clickhouse_user.py +50 -45
  25. pulumi_aiven/config/__init__.pyi +5 -0
  26. pulumi_aiven/config/vars.py +5 -0
  27. pulumi_aiven/connection_pool.py +67 -62
  28. pulumi_aiven/dragonfly.py +1256 -0
  29. pulumi_aiven/flink.py +104 -100
  30. pulumi_aiven/flink_application.py +58 -51
  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 -44
  36. pulumi_aiven/get_account.py +20 -5
  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 -20
  45. pulumi_aiven/get_aws_vpc_peering_connection.py +56 -29
  46. pulumi_aiven/get_azure_privatelink.py +37 -22
  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 -19
  50. pulumi_aiven/get_cassandra.py +55 -19
  51. pulumi_aiven/get_cassandra_user.py +42 -26
  52. pulumi_aiven/get_clickhouse.py +55 -19
  53. pulumi_aiven/get_clickhouse_database.py +35 -22
  54. pulumi_aiven/get_clickhouse_user.py +40 -25
  55. pulumi_aiven/get_connection_pool.py +43 -26
  56. pulumi_aiven/get_dragonfly.py +499 -0
  57. pulumi_aiven/get_external_identity.py +160 -0
  58. pulumi_aiven/get_flink.py +55 -19
  59. pulumi_aiven/get_flink_application.py +44 -27
  60. pulumi_aiven/get_flink_application_version.py +55 -33
  61. pulumi_aiven/get_gcp_privatelink.py +63 -7
  62. pulumi_aiven/get_gcp_vpc_peering_connection.py +39 -24
  63. pulumi_aiven/get_grafana.py +55 -19
  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 -21
  68. pulumi_aiven/get_kafka_acl.py +50 -33
  69. pulumi_aiven/get_kafka_connect.py +54 -32
  70. pulumi_aiven/get_kafka_connector.py +44 -24
  71. pulumi_aiven/get_kafka_mirror_maker.py +50 -28
  72. pulumi_aiven/get_kafka_schema.py +35 -19
  73. pulumi_aiven/get_kafka_schema_configuration.py +32 -17
  74. pulumi_aiven/get_kafka_schema_registry_acl.py +37 -20
  75. pulumi_aiven/get_kafka_topic.py +70 -25
  76. pulumi_aiven/get_kafka_user.py +42 -26
  77. pulumi_aiven/get_m3_aggregator.py +51 -15
  78. pulumi_aiven/get_m3_db.py +55 -19
  79. pulumi_aiven/get_m3db_user.py +38 -24
  80. pulumi_aiven/get_mirror_maker_replication_flow.py +86 -21
  81. pulumi_aiven/get_my_sql.py +50 -14
  82. pulumi_aiven/get_mysql_database.py +31 -18
  83. pulumi_aiven/get_mysql_user.py +36 -19
  84. pulumi_aiven/get_open_search.py +50 -14
  85. pulumi_aiven/get_open_search_acl_config.py +27 -15
  86. pulumi_aiven/get_open_search_acl_rule.py +37 -21
  87. pulumi_aiven/get_opensearch_security_plugin_config.py +29 -15
  88. pulumi_aiven/get_opensearch_user.py +32 -18
  89. pulumi_aiven/get_organization.py +25 -13
  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 -19
  96. pulumi_aiven/get_pg_database.py +39 -24
  97. pulumi_aiven/get_pg_user.py +44 -27
  98. pulumi_aiven/get_project.py +43 -22
  99. pulumi_aiven/get_project_user.py +27 -15
  100. pulumi_aiven/get_project_vpc.py +31 -19
  101. pulumi_aiven/get_redis.py +50 -14
  102. pulumi_aiven/get_redis_user.py +40 -22
  103. pulumi_aiven/get_service_component.py +40 -18
  104. pulumi_aiven/get_service_integration.py +163 -49
  105. pulumi_aiven/get_service_integration_endpoint.py +128 -33
  106. pulumi_aiven/get_thanos.py +499 -0
  107. pulumi_aiven/get_transit_gateway_vpc_attachment.py +35 -18
  108. pulumi_aiven/get_valkey.py +499 -0
  109. pulumi_aiven/get_valkey_user.py +218 -0
  110. pulumi_aiven/grafana.py +188 -318
  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 -140
  115. pulumi_aiven/kafka_acl.py +64 -53
  116. pulumi_aiven/kafka_connect.py +201 -328
  117. pulumi_aiven/kafka_connector.py +67 -56
  118. pulumi_aiven/kafka_mirror_maker.py +139 -318
  119. pulumi_aiven/kafka_native_acl.py +588 -0
  120. pulumi_aiven/kafka_schema.py +65 -56
  121. pulumi_aiven/kafka_schema_configuration.py +25 -20
  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 -54
  125. pulumi_aiven/m3_aggregator.py +176 -308
  126. pulumi_aiven/m3_db.py +190 -322
  127. pulumi_aiven/m3db_user.py +51 -46
  128. pulumi_aiven/mirror_maker_replication_flow.py +217 -53
  129. pulumi_aiven/my_sql.py +190 -322
  130. pulumi_aiven/mysql_database.py +32 -47
  131. pulumi_aiven/mysql_user.py +37 -32
  132. pulumi_aiven/open_search.py +128 -105
  133. pulumi_aiven/open_search_acl_config.py +33 -32
  134. pulumi_aiven/open_search_acl_rule.py +55 -50
  135. pulumi_aiven/opensearch_security_plugin_config.py +69 -16
  136. pulumi_aiven/opensearch_user.py +30 -25
  137. pulumi_aiven/organization.py +18 -13
  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 -32
  146. pulumi_aiven/outputs.py +38509 -21612
  147. pulumi_aiven/pg.py +92 -88
  148. pulumi_aiven/pg_database.py +52 -67
  149. pulumi_aiven/pg_user.py +80 -61
  150. pulumi_aiven/project.py +111 -102
  151. pulumi_aiven/project_user.py +44 -31
  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 +163 -295
  156. pulumi_aiven/redis_user.py +58 -53
  157. pulumi_aiven/service_integration.py +511 -161
  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 -54
  162. pulumi_aiven/valkey.py +1256 -0
  163. pulumi_aiven/valkey_user.py +606 -0
  164. {pulumi_aiven-6.13.0a1709702245.dist-info → pulumi_aiven-6.31.0a1736831339.dist-info}/METADATA +7 -6
  165. pulumi_aiven-6.31.0a1736831339.dist-info/RECORD +169 -0
  166. {pulumi_aiven-6.13.0a1709702245.dist-info → pulumi_aiven-6.31.0a1736831339.dist-info}/WHEEL +1 -1
  167. pulumi_aiven-6.13.0a1709702245.dist-info/RECORD +0 -146
  168. {pulumi_aiven-6.13.0a1709702245.dist-info → pulumi_aiven-6.31.0a1736831339.dist-info}/top_level.txt +0 -0
@@ -4,6 +4,7 @@
4
4
 
5
5
 
6
6
  import asyncio
7
+ import functools
7
8
  import importlib.metadata
8
9
  import importlib.util
9
10
  import inspect
@@ -11,14 +12,19 @@ import json
11
12
  import os
12
13
  import sys
13
14
  import typing
15
+ import warnings
16
+ import base64
14
17
 
15
18
  import pulumi
16
19
  import pulumi.runtime
17
20
  from pulumi.runtime.sync_await import _sync_await
21
+ from pulumi.runtime.proto import resource_pb2
18
22
 
19
23
  from semver import VersionInfo as SemverVersion
20
24
  from parver import Version as PEP440Version
21
25
 
26
+ C = typing.TypeVar("C", bound=typing.Callable)
27
+
22
28
 
23
29
  def get_env(*args):
24
30
  for v in args:
@@ -96,10 +102,6 @@ def _get_semver_version():
96
102
  _version = _get_semver_version()
97
103
  _version_str = str(_version)
98
104
 
99
-
100
- def get_version():
101
- return _version_str
102
-
103
105
  def get_resource_opts_defaults() -> pulumi.ResourceOptions:
104
106
  return pulumi.ResourceOptions(
105
107
  version=get_version(),
@@ -262,7 +264,7 @@ def call_plain(
262
264
  output = pulumi.runtime.call(tok, props, res, typ)
263
265
 
264
266
  # Ingoring deps silently. They are typically non-empty, r.f() calls include r as a dependency.
265
- result, known, secret, _ = _sync_await(asyncio.ensure_future(_await_output(output)))
267
+ result, known, secret, _ = _sync_await(asyncio.create_task(_await_output(output)))
266
268
 
267
269
  problem = None
268
270
  if not known:
@@ -287,5 +289,39 @@ async def _await_output(o: pulumi.Output[typing.Any]) -> typing.Tuple[object, bo
287
289
  await o._resources,
288
290
  )
289
291
 
292
+
293
+ # This is included to provide an upgrade path for users who are using a version
294
+ # of the Pulumi SDK (<3.121.0) that does not include the `deprecated` decorator.
295
+ def deprecated(message: str) -> typing.Callable[[C], C]:
296
+ """
297
+ Decorator to indicate a function is deprecated.
298
+
299
+ As well as inserting appropriate statements to indicate that the function is
300
+ deprecated, this decorator also tags the function with a special attribute
301
+ so that Pulumi code can detect that it is deprecated and react appropriately
302
+ in certain situations.
303
+
304
+ message is the deprecation message that should be printed if the function is called.
305
+ """
306
+
307
+ def decorator(fn: C) -> C:
308
+ if not callable(fn):
309
+ raise TypeError("Expected fn to be callable")
310
+
311
+ @functools.wraps(fn)
312
+ def deprecated_fn(*args, **kwargs):
313
+ warnings.warn(message)
314
+ pulumi.warn(f"{fn.__name__} is deprecated: {message}")
315
+
316
+ return fn(*args, **kwargs)
317
+
318
+ deprecated_fn.__dict__["_pulumi_deprecated_callable"] = fn
319
+ return typing.cast(C, deprecated_fn)
320
+
321
+ return decorator
322
+
290
323
  def get_plugin_download_url():
291
324
  return None
325
+
326
+ def get_version():
327
+ return _version_str
pulumi_aiven/account.py CHANGED
@@ -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
 
12
17
  __all__ = ['AccountArgs', 'Account']
@@ -24,8 +29,8 @@ class AccountArgs:
24
29
  if name is not None:
25
30
  pulumi.set(__self__, "name", name)
26
31
  if primary_billing_group_id is not None:
27
- warnings.warn("""The new aiven_organization resource won't have it, and will not have a replacement.""", DeprecationWarning)
28
- pulumi.log.warn("""primary_billing_group_id is deprecated: The new aiven_organization resource won't have it, and will not have a replacement.""")
32
+ warnings.warn("""The new Organization resource won't have it, and will not have a replacement.""", DeprecationWarning)
33
+ pulumi.log.warn("""primary_billing_group_id is deprecated: The new Organization resource won't have it, and will not have a replacement.""")
29
34
  if primary_billing_group_id is not None:
30
35
  pulumi.set(__self__, "primary_billing_group_id", primary_billing_group_id)
31
36
 
@@ -43,13 +48,11 @@ class AccountArgs:
43
48
 
44
49
  @property
45
50
  @pulumi.getter(name="primaryBillingGroupId")
51
+ @_utilities.deprecated("""The new Organization resource won't have it, and will not have a replacement.""")
46
52
  def primary_billing_group_id(self) -> Optional[pulumi.Input[str]]:
47
53
  """
48
54
  Billing group id
49
55
  """
50
- warnings.warn("""The new aiven_organization resource won't have it, and will not have a replacement.""", DeprecationWarning)
51
- pulumi.log.warn("""primary_billing_group_id is deprecated: The new aiven_organization resource won't have it, and will not have a replacement.""")
52
-
53
56
  return pulumi.get(self, "primary_billing_group_id")
54
57
 
55
58
  @primary_billing_group_id.setter
@@ -80,27 +83,27 @@ class _AccountState:
80
83
  :param pulumi.Input[str] update_time: Time of last update
81
84
  """
82
85
  if account_id is not None:
83
- warnings.warn("""The new aiven_organization resource won't have it, use the built-in ID field instead.""", DeprecationWarning)
84
- pulumi.log.warn("""account_id is deprecated: The new aiven_organization resource won't have it, use the built-in ID field instead.""")
86
+ warnings.warn("""The new Organization resource won't have it, use the built-in ID field instead.""", DeprecationWarning)
87
+ pulumi.log.warn("""account_id is deprecated: The new Organization resource won't have it, use the built-in ID field instead.""")
85
88
  if account_id is not None:
86
89
  pulumi.set(__self__, "account_id", account_id)
87
90
  if create_time is not None:
88
91
  pulumi.set(__self__, "create_time", create_time)
89
92
  if is_account_owner is not None:
90
- warnings.warn("""The new aiven_organization resource won't have it, and will not have a replacement.""", DeprecationWarning)
91
- pulumi.log.warn("""is_account_owner is deprecated: The new aiven_organization resource won't have it, and will not have a replacement.""")
93
+ warnings.warn("""The new Organization resource won't have it, and will not have a replacement.""", DeprecationWarning)
94
+ pulumi.log.warn("""is_account_owner is deprecated: The new Organization resource won't have it, and will not have a replacement.""")
92
95
  if is_account_owner is not None:
93
96
  pulumi.set(__self__, "is_account_owner", is_account_owner)
94
97
  if name is not None:
95
98
  pulumi.set(__self__, "name", name)
96
99
  if owner_team_id is not None:
97
- warnings.warn("""The new aiven_organization resource won't have it, and will not have a replacement.""", DeprecationWarning)
98
- pulumi.log.warn("""owner_team_id is deprecated: The new aiven_organization resource won't have it, and will not have a replacement.""")
100
+ warnings.warn("""The new Organization resource won't have it, and will not have a replacement.""", DeprecationWarning)
101
+ pulumi.log.warn("""owner_team_id is deprecated: The new Organization resource won't have it, and will not have a replacement.""")
99
102
  if owner_team_id is not None:
100
103
  pulumi.set(__self__, "owner_team_id", owner_team_id)
101
104
  if primary_billing_group_id is not None:
102
- warnings.warn("""The new aiven_organization resource won't have it, and will not have a replacement.""", DeprecationWarning)
103
- pulumi.log.warn("""primary_billing_group_id is deprecated: The new aiven_organization resource won't have it, and will not have a replacement.""")
105
+ warnings.warn("""The new Organization resource won't have it, and will not have a replacement.""", DeprecationWarning)
106
+ pulumi.log.warn("""primary_billing_group_id is deprecated: The new Organization resource won't have it, and will not have a replacement.""")
104
107
  if primary_billing_group_id is not None:
105
108
  pulumi.set(__self__, "primary_billing_group_id", primary_billing_group_id)
106
109
  if tenant_id is not None:
@@ -110,13 +113,11 @@ class _AccountState:
110
113
 
111
114
  @property
112
115
  @pulumi.getter(name="accountId")
116
+ @_utilities.deprecated("""The new Organization resource won't have it, use the built-in ID field instead.""")
113
117
  def account_id(self) -> Optional[pulumi.Input[str]]:
114
118
  """
115
119
  Account id
116
120
  """
117
- warnings.warn("""The new aiven_organization resource won't have it, use the built-in ID field instead.""", DeprecationWarning)
118
- pulumi.log.warn("""account_id is deprecated: The new aiven_organization resource won't have it, use the built-in ID field instead.""")
119
-
120
121
  return pulumi.get(self, "account_id")
121
122
 
122
123
  @account_id.setter
@@ -137,13 +138,11 @@ class _AccountState:
137
138
 
138
139
  @property
139
140
  @pulumi.getter(name="isAccountOwner")
141
+ @_utilities.deprecated("""The new Organization resource won't have it, and will not have a replacement.""")
140
142
  def is_account_owner(self) -> Optional[pulumi.Input[bool]]:
141
143
  """
142
144
  If true, user is part of the owners team for this account
143
145
  """
144
- warnings.warn("""The new aiven_organization resource won't have it, and will not have a replacement.""", DeprecationWarning)
145
- pulumi.log.warn("""is_account_owner is deprecated: The new aiven_organization resource won't have it, and will not have a replacement.""")
146
-
147
146
  return pulumi.get(self, "is_account_owner")
148
147
 
149
148
  @is_account_owner.setter
@@ -164,13 +163,11 @@ class _AccountState:
164
163
 
165
164
  @property
166
165
  @pulumi.getter(name="ownerTeamId")
166
+ @_utilities.deprecated("""The new Organization resource won't have it, and will not have a replacement.""")
167
167
  def owner_team_id(self) -> Optional[pulumi.Input[str]]:
168
168
  """
169
169
  Owner team id
170
170
  """
171
- warnings.warn("""The new aiven_organization resource won't have it, and will not have a replacement.""", DeprecationWarning)
172
- pulumi.log.warn("""owner_team_id is deprecated: The new aiven_organization resource won't have it, and will not have a replacement.""")
173
-
174
171
  return pulumi.get(self, "owner_team_id")
175
172
 
176
173
  @owner_team_id.setter
@@ -179,13 +176,11 @@ class _AccountState:
179
176
 
180
177
  @property
181
178
  @pulumi.getter(name="primaryBillingGroupId")
179
+ @_utilities.deprecated("""The new Organization resource won't have it, and will not have a replacement.""")
182
180
  def primary_billing_group_id(self) -> Optional[pulumi.Input[str]]:
183
181
  """
184
182
  Billing group id
185
183
  """
186
- warnings.warn("""The new aiven_organization resource won't have it, and will not have a replacement.""", DeprecationWarning)
187
- pulumi.log.warn("""primary_billing_group_id is deprecated: The new aiven_organization resource won't have it, and will not have a replacement.""")
188
-
189
184
  return pulumi.get(self, "primary_billing_group_id")
190
185
 
191
186
  @primary_billing_group_id.setter
@@ -226,7 +221,9 @@ class Account(pulumi.CustomResource):
226
221
  primary_billing_group_id: Optional[pulumi.Input[str]] = None,
227
222
  __props__=None):
228
223
  """
229
- The Account resource allows the creation and management of an Aiven Account.
224
+ Creates and manages an Aiven account.
225
+
226
+ **This resource is deprecated.** Use `Organization` instead.
230
227
 
231
228
  ## Example Usage
232
229
 
@@ -234,13 +231,13 @@ class Account(pulumi.CustomResource):
234
231
  import pulumi
235
232
  import pulumi_aiven as aiven
236
233
 
237
- account1 = aiven.Account("account1")
234
+ account1 = aiven.Account("account1", name="<ACCOUNT_NAME>")
238
235
  ```
239
236
 
240
237
  ## Import
241
238
 
242
239
  ```sh
243
- $ pulumi import aiven:index/account:Account account1 account_id
240
+ $ pulumi import aiven:index/account:Account account1 account_id
244
241
  ```
245
242
 
246
243
  :param str resource_name: The name of the resource.
@@ -255,7 +252,9 @@ class Account(pulumi.CustomResource):
255
252
  args: Optional[AccountArgs] = None,
256
253
  opts: Optional[pulumi.ResourceOptions] = None):
257
254
  """
258
- The Account resource allows the creation and management of an Aiven Account.
255
+ Creates and manages an Aiven account.
256
+
257
+ **This resource is deprecated.** Use `Organization` instead.
259
258
 
260
259
  ## Example Usage
261
260
 
@@ -263,13 +262,13 @@ class Account(pulumi.CustomResource):
263
262
  import pulumi
264
263
  import pulumi_aiven as aiven
265
264
 
266
- account1 = aiven.Account("account1")
265
+ account1 = aiven.Account("account1", name="<ACCOUNT_NAME>")
267
266
  ```
268
267
 
269
268
  ## Import
270
269
 
271
270
  ```sh
272
- $ pulumi import aiven:index/account:Account account1 account_id
271
+ $ pulumi import aiven:index/account:Account account1 account_id
273
272
  ```
274
273
 
275
274
  :param str resource_name: The name of the resource.
@@ -356,13 +355,11 @@ class Account(pulumi.CustomResource):
356
355
 
357
356
  @property
358
357
  @pulumi.getter(name="accountId")
358
+ @_utilities.deprecated("""The new Organization resource won't have it, use the built-in ID field instead.""")
359
359
  def account_id(self) -> pulumi.Output[str]:
360
360
  """
361
361
  Account id
362
362
  """
363
- warnings.warn("""The new aiven_organization resource won't have it, use the built-in ID field instead.""", DeprecationWarning)
364
- pulumi.log.warn("""account_id is deprecated: The new aiven_organization resource won't have it, use the built-in ID field instead.""")
365
-
366
363
  return pulumi.get(self, "account_id")
367
364
 
368
365
  @property
@@ -375,13 +372,11 @@ class Account(pulumi.CustomResource):
375
372
 
376
373
  @property
377
374
  @pulumi.getter(name="isAccountOwner")
375
+ @_utilities.deprecated("""The new Organization resource won't have it, and will not have a replacement.""")
378
376
  def is_account_owner(self) -> pulumi.Output[bool]:
379
377
  """
380
378
  If true, user is part of the owners team for this account
381
379
  """
382
- warnings.warn("""The new aiven_organization resource won't have it, and will not have a replacement.""", DeprecationWarning)
383
- pulumi.log.warn("""is_account_owner is deprecated: The new aiven_organization resource won't have it, and will not have a replacement.""")
384
-
385
380
  return pulumi.get(self, "is_account_owner")
386
381
 
387
382
  @property
@@ -394,24 +389,20 @@ class Account(pulumi.CustomResource):
394
389
 
395
390
  @property
396
391
  @pulumi.getter(name="ownerTeamId")
392
+ @_utilities.deprecated("""The new Organization resource won't have it, and will not have a replacement.""")
397
393
  def owner_team_id(self) -> pulumi.Output[str]:
398
394
  """
399
395
  Owner team id
400
396
  """
401
- warnings.warn("""The new aiven_organization resource won't have it, and will not have a replacement.""", DeprecationWarning)
402
- pulumi.log.warn("""owner_team_id is deprecated: The new aiven_organization resource won't have it, and will not have a replacement.""")
403
-
404
397
  return pulumi.get(self, "owner_team_id")
405
398
 
406
399
  @property
407
400
  @pulumi.getter(name="primaryBillingGroupId")
401
+ @_utilities.deprecated("""The new Organization resource won't have it, and will not have a replacement.""")
408
402
  def primary_billing_group_id(self) -> pulumi.Output[Optional[str]]:
409
403
  """
410
404
  Billing group id
411
405
  """
412
- warnings.warn("""The new aiven_organization resource won't have it, and will not have a replacement.""", DeprecationWarning)
413
- pulumi.log.warn("""primary_billing_group_id is deprecated: The new aiven_organization resource won't have it, and will not have a replacement.""")
414
-
415
406
  return pulumi.get(self, "primary_billing_group_id")
416
407
 
417
408
  @property
@@ -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 *
@@ -535,7 +540,7 @@ class AccountAuthentication(pulumi.CustomResource):
535
540
  saml_certificate: Optional[pulumi.Input[str]] = None,
536
541
  saml_digest_algorithm: Optional[pulumi.Input[str]] = None,
537
542
  saml_entity_id: Optional[pulumi.Input[str]] = None,
538
- saml_field_mapping: Optional[pulumi.Input[pulumi.InputType['AccountAuthenticationSamlFieldMappingArgs']]] = None,
543
+ saml_field_mapping: Optional[pulumi.Input[Union['AccountAuthenticationSamlFieldMappingArgs', 'AccountAuthenticationSamlFieldMappingArgsDict']]] = None,
539
544
  saml_idp_login_allowed: Optional[pulumi.Input[bool]] = None,
540
545
  saml_idp_url: Optional[pulumi.Input[str]] = None,
541
546
  saml_signature_algorithm: Optional[pulumi.Input[str]] = None,
@@ -543,12 +548,17 @@ class AccountAuthentication(pulumi.CustomResource):
543
548
  type: Optional[pulumi.Input[str]] = None,
544
549
  __props__=None):
545
550
  """
546
- The Account Authentication resource allows the creation and management of an Aiven Account Authentications.
551
+ Creates and manages an authentication method.
552
+
553
+ > **This resource is deprecated**
554
+ To set up an identity provider as an authentication method for your organization,
555
+ [use the Aiven Console](https://aiven.io/docs/platform/howto/saml/add-identity-providers).
556
+ It guides you through the steps and explains the settings.
547
557
 
548
558
  ## Import
549
559
 
550
560
  ```sh
551
- $ pulumi import aiven:index/accountAuthentication:AccountAuthentication foo account_id/authentication_id
561
+ $ pulumi import aiven:index/accountAuthentication:AccountAuthentication foo ACCOUNT_ID/AUTHENTICATION_ID
552
562
  ```
553
563
 
554
564
  :param str resource_name: The name of the resource.
@@ -560,7 +570,7 @@ class AccountAuthentication(pulumi.CustomResource):
560
570
  :param pulumi.Input[str] saml_certificate: SAML Certificate
561
571
  :param pulumi.Input[str] saml_digest_algorithm: Digest algorithm. This is an advanced option that typically does not need to be set.
562
572
  :param pulumi.Input[str] saml_entity_id: SAML Entity id
563
- :param pulumi.Input[pulumi.InputType['AccountAuthenticationSamlFieldMappingArgs']] saml_field_mapping: Map IdP fields
573
+ :param pulumi.Input[Union['AccountAuthenticationSamlFieldMappingArgs', 'AccountAuthenticationSamlFieldMappingArgsDict']] saml_field_mapping: Map IdP fields
564
574
  :param pulumi.Input[bool] saml_idp_login_allowed: Set to 'true' to enable IdP initiated login
565
575
  :param pulumi.Input[str] saml_idp_url: SAML Idp URL
566
576
  :param pulumi.Input[str] saml_signature_algorithm: Signature algorithm. This is an advanced option that typically does not need to be set.
@@ -574,12 +584,17 @@ class AccountAuthentication(pulumi.CustomResource):
574
584
  args: AccountAuthenticationArgs,
575
585
  opts: Optional[pulumi.ResourceOptions] = None):
576
586
  """
577
- The Account Authentication resource allows the creation and management of an Aiven Account Authentications.
587
+ Creates and manages an authentication method.
588
+
589
+ > **This resource is deprecated**
590
+ To set up an identity provider as an authentication method for your organization,
591
+ [use the Aiven Console](https://aiven.io/docs/platform/howto/saml/add-identity-providers).
592
+ It guides you through the steps and explains the settings.
578
593
 
579
594
  ## Import
580
595
 
581
596
  ```sh
582
- $ pulumi import aiven:index/accountAuthentication:AccountAuthentication foo account_id/authentication_id
597
+ $ pulumi import aiven:index/accountAuthentication:AccountAuthentication foo ACCOUNT_ID/AUTHENTICATION_ID
583
598
  ```
584
599
 
585
600
  :param str resource_name: The name of the resource.
@@ -604,7 +619,7 @@ class AccountAuthentication(pulumi.CustomResource):
604
619
  saml_certificate: Optional[pulumi.Input[str]] = None,
605
620
  saml_digest_algorithm: Optional[pulumi.Input[str]] = None,
606
621
  saml_entity_id: Optional[pulumi.Input[str]] = None,
607
- saml_field_mapping: Optional[pulumi.Input[pulumi.InputType['AccountAuthenticationSamlFieldMappingArgs']]] = None,
622
+ saml_field_mapping: Optional[pulumi.Input[Union['AccountAuthenticationSamlFieldMappingArgs', 'AccountAuthenticationSamlFieldMappingArgsDict']]] = None,
608
623
  saml_idp_login_allowed: Optional[pulumi.Input[bool]] = None,
609
624
  saml_idp_url: Optional[pulumi.Input[str]] = None,
610
625
  saml_signature_algorithm: Optional[pulumi.Input[str]] = None,
@@ -661,7 +676,7 @@ class AccountAuthentication(pulumi.CustomResource):
661
676
  saml_certificate: Optional[pulumi.Input[str]] = None,
662
677
  saml_digest_algorithm: Optional[pulumi.Input[str]] = None,
663
678
  saml_entity_id: Optional[pulumi.Input[str]] = None,
664
- saml_field_mapping: Optional[pulumi.Input[pulumi.InputType['AccountAuthenticationSamlFieldMappingArgs']]] = None,
679
+ saml_field_mapping: Optional[pulumi.Input[Union['AccountAuthenticationSamlFieldMappingArgs', 'AccountAuthenticationSamlFieldMappingArgsDict']]] = None,
665
680
  saml_idp_login_allowed: Optional[pulumi.Input[bool]] = None,
666
681
  saml_idp_url: Optional[pulumi.Input[str]] = None,
667
682
  saml_metadata_url: Optional[pulumi.Input[str]] = None,
@@ -686,7 +701,7 @@ class AccountAuthentication(pulumi.CustomResource):
686
701
  :param pulumi.Input[str] saml_certificate: SAML Certificate
687
702
  :param pulumi.Input[str] saml_digest_algorithm: Digest algorithm. This is an advanced option that typically does not need to be set.
688
703
  :param pulumi.Input[str] saml_entity_id: SAML Entity id
689
- :param pulumi.Input[pulumi.InputType['AccountAuthenticationSamlFieldMappingArgs']] saml_field_mapping: Map IdP fields
704
+ :param pulumi.Input[Union['AccountAuthenticationSamlFieldMappingArgs', 'AccountAuthenticationSamlFieldMappingArgsDict']] saml_field_mapping: Map IdP fields
690
705
  :param pulumi.Input[bool] saml_idp_login_allowed: Set to 'true' to enable IdP initiated login
691
706
  :param pulumi.Input[str] saml_idp_url: SAML Idp URL
692
707
  :param pulumi.Input[str] saml_metadata_url: SAML Metadata URL
@@ -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
 
12
17
  __all__ = ['AccountTeamArgs', 'AccountTeam']
@@ -147,12 +152,20 @@ class AccountTeam(pulumi.CustomResource):
147
152
  name: Optional[pulumi.Input[str]] = None,
148
153
  __props__=None):
149
154
  """
155
+ **This resource is deprecated.** Use `OrganizationUserGroup` instead.
156
+
150
157
  Creates and manages a team.
151
158
 
152
- > **Teams are becoming groups**
153
- Groups are an easier way to control access to your organization's projects and
154
- services for a group of users.
155
- Migrate your teams to groups.
159
+ > **Teams have been deprecated and are being migrated to groups**
160
+ **On 30 September 2024** the Account Owners team will transition to super admin. Super admin have full access to the organization.
161
+ The Account Owners and super admin are synced, so the removal of the Account Owners team will have no impact on existing permissions.
162
+ **From 4 November 2024** you won't be able to create new teams or update existing ones. Existing teams will be migrated to groups after
163
+ this date. **On 2 December 2024** all teams will be deleted and the teams feature will be completely removed. View the
164
+ migration guide for more information on the changes and migrating to groups.
165
+
166
+ > **Important**
167
+ You can't delete the Account Owners team. **Deleting all other teams in your organization will disable the teams feature.**
168
+ You won't be able to create new teams or access your Account Owners team.
156
169
 
157
170
  ## Example Usage
158
171
 
@@ -160,13 +173,15 @@ class AccountTeam(pulumi.CustomResource):
160
173
  import pulumi
161
174
  import pulumi_aiven as aiven
162
175
 
163
- example_team = aiven.AccountTeam("exampleTeam", account_id=aiven_account["ACCOUNT_RESOURCE_NAME"]["account_id"])
176
+ example_team = aiven.AccountTeam("example_team",
177
+ account_id=accoun_t__resourc_e__name["accountId"],
178
+ name="Example team")
164
179
  ```
165
180
 
166
181
  ## Import
167
182
 
168
183
  ```sh
169
- $ pulumi import aiven:index/accountTeam:AccountTeam account_team1 account_id/team_id
184
+ $ pulumi import aiven:index/accountTeam:AccountTeam account_team1 account_id/team_id
170
185
  ```
171
186
 
172
187
  :param str resource_name: The name of the resource.
@@ -181,12 +196,20 @@ class AccountTeam(pulumi.CustomResource):
181
196
  args: AccountTeamArgs,
182
197
  opts: Optional[pulumi.ResourceOptions] = None):
183
198
  """
199
+ **This resource is deprecated.** Use `OrganizationUserGroup` instead.
200
+
184
201
  Creates and manages a team.
185
202
 
186
- > **Teams are becoming groups**
187
- Groups are an easier way to control access to your organization's projects and
188
- services for a group of users.
189
- Migrate your teams to groups.
203
+ > **Teams have been deprecated and are being migrated to groups**
204
+ **On 30 September 2024** the Account Owners team will transition to super admin. Super admin have full access to the organization.
205
+ The Account Owners and super admin are synced, so the removal of the Account Owners team will have no impact on existing permissions.
206
+ **From 4 November 2024** you won't be able to create new teams or update existing ones. Existing teams will be migrated to groups after
207
+ this date. **On 2 December 2024** all teams will be deleted and the teams feature will be completely removed. View the
208
+ migration guide for more information on the changes and migrating to groups.
209
+
210
+ > **Important**
211
+ You can't delete the Account Owners team. **Deleting all other teams in your organization will disable the teams feature.**
212
+ You won't be able to create new teams or access your Account Owners team.
190
213
 
191
214
  ## Example Usage
192
215
 
@@ -194,13 +217,15 @@ class AccountTeam(pulumi.CustomResource):
194
217
  import pulumi
195
218
  import pulumi_aiven as aiven
196
219
 
197
- example_team = aiven.AccountTeam("exampleTeam", account_id=aiven_account["ACCOUNT_RESOURCE_NAME"]["account_id"])
220
+ example_team = aiven.AccountTeam("example_team",
221
+ account_id=accoun_t__resourc_e__name["accountId"],
222
+ name="Example team")
198
223
  ```
199
224
 
200
225
  ## Import
201
226
 
202
227
  ```sh
203
- $ pulumi import aiven:index/accountTeam:AccountTeam account_team1 account_id/team_id
228
+ $ pulumi import aiven:index/accountTeam:AccountTeam account_team1 account_id/team_id
204
229
  ```
205
230
 
206
231
  :param str resource_name: The name of the resource.