pulumi-aiven 6.12.0a1708541199__py3-none-any.whl → 6.13.0__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 (135) hide show
  1. pulumi_aiven/__init__.py +28 -0
  2. pulumi_aiven/_inputs.py +2491 -944
  3. pulumi_aiven/account.py +40 -32
  4. pulumi_aiven/account_authentication.py +8 -4
  5. pulumi_aiven/account_team.py +6 -2
  6. pulumi_aiven/account_team_member.py +27 -23
  7. pulumi_aiven/account_team_project.py +6 -2
  8. pulumi_aiven/aws_privatelink.py +43 -39
  9. pulumi_aiven/aws_vpc_peering_connection.py +66 -52
  10. pulumi_aiven/azure_privatelink.py +53 -49
  11. pulumi_aiven/azure_privatelink_connection_approval.py +33 -33
  12. pulumi_aiven/azure_vpc_peering_connection.py +80 -68
  13. pulumi_aiven/billing_group.py +6 -2
  14. pulumi_aiven/cassandra.py +13 -9
  15. pulumi_aiven/cassandra_user.py +27 -23
  16. pulumi_aiven/clickhouse.py +13 -9
  17. pulumi_aiven/clickhouse_database.py +27 -23
  18. pulumi_aiven/clickhouse_grant.py +46 -42
  19. pulumi_aiven/clickhouse_role.py +27 -23
  20. pulumi_aiven/clickhouse_user.py +27 -23
  21. pulumi_aiven/connection_pool.py +34 -30
  22. pulumi_aiven/dragonfly.py +1344 -0
  23. pulumi_aiven/flink.py +13 -9
  24. pulumi_aiven/flink_application.py +20 -16
  25. pulumi_aiven/flink_application_deployment.py +14 -14
  26. pulumi_aiven/flink_application_version.py +16 -16
  27. pulumi_aiven/gcp_privatelink.py +26 -26
  28. pulumi_aiven/gcp_privatelink_connection_approval.py +33 -33
  29. pulumi_aiven/gcp_vpc_peering_connection.py +41 -37
  30. pulumi_aiven/get_account.py +4 -0
  31. pulumi_aiven/get_account_team_member.py +9 -9
  32. pulumi_aiven/get_aws_privatelink.py +19 -15
  33. pulumi_aiven/get_aws_vpc_peering_connection.py +37 -23
  34. pulumi_aiven/get_azure_privatelink.py +21 -17
  35. pulumi_aiven/get_azure_vpc_peering_connection.py +58 -26
  36. pulumi_aiven/get_cassanda.py +7 -3
  37. pulumi_aiven/get_cassandra.py +7 -3
  38. pulumi_aiven/get_cassandra_user.py +13 -9
  39. pulumi_aiven/get_clickhouse.py +7 -3
  40. pulumi_aiven/get_clickhouse_database.py +13 -9
  41. pulumi_aiven/get_clickhouse_user.py +13 -9
  42. pulumi_aiven/get_connection_pool.py +14 -10
  43. pulumi_aiven/get_dragonfly.py +443 -0
  44. pulumi_aiven/get_flink.py +7 -3
  45. pulumi_aiven/get_flink_application.py +10 -6
  46. pulumi_aiven/get_flink_application_version.py +10 -6
  47. pulumi_aiven/get_gcp_vpc_peering_connection.py +22 -18
  48. pulumi_aiven/get_grafana.py +7 -3
  49. pulumi_aiven/get_kafka.py +7 -3
  50. pulumi_aiven/get_kafka_acl.py +19 -15
  51. pulumi_aiven/get_kafka_connect.py +7 -3
  52. pulumi_aiven/get_kafka_connector.py +13 -9
  53. pulumi_aiven/get_kafka_mirror_maker.py +7 -3
  54. pulumi_aiven/get_kafka_schema.py +13 -9
  55. pulumi_aiven/get_kafka_schema_configuration.py +11 -7
  56. pulumi_aiven/get_kafka_schema_registry_acl.py +15 -15
  57. pulumi_aiven/get_kafka_topic.py +13 -9
  58. pulumi_aiven/get_kafka_user.py +13 -9
  59. pulumi_aiven/get_m3_aggregator.py +7 -3
  60. pulumi_aiven/get_m3_db.py +7 -3
  61. pulumi_aiven/get_m3db_user.py +13 -9
  62. pulumi_aiven/get_mirror_maker_replication_flow.py +10 -6
  63. pulumi_aiven/get_my_sql.py +7 -3
  64. pulumi_aiven/get_mysql_database.py +13 -9
  65. pulumi_aiven/get_mysql_user.py +13 -9
  66. pulumi_aiven/get_open_search.py +7 -3
  67. pulumi_aiven/get_open_search_acl_config.py +10 -6
  68. pulumi_aiven/get_open_search_acl_rule.py +16 -12
  69. pulumi_aiven/get_opensearch_security_plugin_config.py +10 -6
  70. pulumi_aiven/get_opensearch_user.py +13 -9
  71. pulumi_aiven/get_organization.py +12 -8
  72. pulumi_aiven/get_organization_user_group.py +33 -9
  73. pulumi_aiven/get_organizational_unit.py +9 -9
  74. pulumi_aiven/get_pg.py +7 -3
  75. pulumi_aiven/get_pg_database.py +15 -11
  76. pulumi_aiven/get_pg_user.py +13 -9
  77. pulumi_aiven/get_project.py +4 -0
  78. pulumi_aiven/get_project_user.py +10 -6
  79. pulumi_aiven/get_project_vpc.py +15 -13
  80. pulumi_aiven/get_redis.py +7 -3
  81. pulumi_aiven/get_redis_user.py +17 -13
  82. pulumi_aiven/get_service_component.py +4 -0
  83. pulumi_aiven/get_service_integration.py +60 -4
  84. pulumi_aiven/get_service_integration_endpoint.py +5 -1
  85. pulumi_aiven/get_transit_gateway_vpc_attachment.py +13 -9
  86. pulumi_aiven/grafana.py +13 -9
  87. pulumi_aiven/influx_db.py +7 -7
  88. pulumi_aiven/influxdb_database.py +21 -21
  89. pulumi_aiven/influxdb_user.py +28 -28
  90. pulumi_aiven/kafka.py +13 -9
  91. pulumi_aiven/kafka_acl.py +41 -37
  92. pulumi_aiven/kafka_connect.py +13 -9
  93. pulumi_aiven/kafka_connector.py +27 -23
  94. pulumi_aiven/kafka_mirror_maker.py +13 -9
  95. pulumi_aiven/kafka_schema.py +53 -45
  96. pulumi_aiven/kafka_schema_configuration.py +20 -16
  97. pulumi_aiven/kafka_schema_registry_acl.py +35 -35
  98. pulumi_aiven/kafka_topic.py +23 -23
  99. pulumi_aiven/kafka_user.py +27 -23
  100. pulumi_aiven/m3_aggregator.py +13 -9
  101. pulumi_aiven/m3_db.py +13 -9
  102. pulumi_aiven/m3db_user.py +27 -23
  103. pulumi_aiven/mirror_maker_replication_flow.py +56 -50
  104. pulumi_aiven/my_sql.py +13 -9
  105. pulumi_aiven/mysql_database.py +27 -23
  106. pulumi_aiven/mysql_user.py +27 -23
  107. pulumi_aiven/open_search.py +13 -9
  108. pulumi_aiven/open_search_acl_config.py +20 -16
  109. pulumi_aiven/open_search_acl_rule.py +34 -30
  110. pulumi_aiven/opensearch_security_plugin_config.py +68 -16
  111. pulumi_aiven/opensearch_user.py +27 -23
  112. pulumi_aiven/organization.py +14 -10
  113. pulumi_aiven/organization_group_project.py +290 -0
  114. pulumi_aiven/organization_user.py +16 -16
  115. pulumi_aiven/organization_user_group.py +61 -23
  116. pulumi_aiven/organization_user_group_member.py +352 -0
  117. pulumi_aiven/organizational_unit.py +36 -32
  118. pulumi_aiven/outputs.py +3013 -491
  119. pulumi_aiven/pg.py +9 -9
  120. pulumi_aiven/pg_database.py +41 -37
  121. pulumi_aiven/pg_user.py +27 -23
  122. pulumi_aiven/project.py +28 -2
  123. pulumi_aiven/project_user.py +20 -16
  124. pulumi_aiven/project_vpc.py +25 -25
  125. pulumi_aiven/redis.py +13 -9
  126. pulumi_aiven/redis_user.py +55 -51
  127. pulumi_aiven/service_integration.py +201 -9
  128. pulumi_aiven/service_integration_endpoint.py +7 -7
  129. pulumi_aiven/static_ip.py +14 -14
  130. pulumi_aiven/transit_gateway_vpc_attachment.py +27 -23
  131. {pulumi_aiven-6.12.0a1708541199.dist-info → pulumi_aiven-6.13.0.dist-info}/METADATA +1 -1
  132. pulumi_aiven-6.13.0.dist-info/RECORD +150 -0
  133. {pulumi_aiven-6.12.0a1708541199.dist-info → pulumi_aiven-6.13.0.dist-info}/WHEEL +1 -1
  134. pulumi_aiven-6.12.0a1708541199.dist-info/RECORD +0 -146
  135. {pulumi_aiven-6.12.0a1708541199.dist-info → pulumi_aiven-6.13.0.dist-info}/top_level.txt +0 -0
@@ -19,9 +19,9 @@ class OrganizationUserGroupArgs:
19
19
  name: Optional[pulumi.Input[str]] = None):
20
20
  """
21
21
  The set of arguments for constructing a OrganizationUserGroup resource.
22
- :param pulumi.Input[str] description: The description of the user group. This property cannot be changed, doing so forces recreation of the resource.
23
- :param pulumi.Input[str] organization_id: The ID of the organization. This property cannot be changed, doing so forces recreation of the resource.
24
- :param pulumi.Input[str] name: The name of the user group. This property cannot be changed, doing so forces recreation of the resource.
22
+ :param pulumi.Input[str] description: The description of the user group. Changing this property forces recreation of the resource.
23
+ :param pulumi.Input[str] organization_id: The ID of the organization. Changing this property forces recreation of the resource.
24
+ :param pulumi.Input[str] name: The name of the user group. Changing this property forces recreation of the resource.
25
25
  """
26
26
  pulumi.set(__self__, "description", description)
27
27
  pulumi.set(__self__, "organization_id", organization_id)
@@ -32,7 +32,7 @@ class OrganizationUserGroupArgs:
32
32
  @pulumi.getter
33
33
  def description(self) -> pulumi.Input[str]:
34
34
  """
35
- The description of the user group. This property cannot be changed, doing so forces recreation of the resource.
35
+ The description of the user group. Changing this property forces recreation of the resource.
36
36
  """
37
37
  return pulumi.get(self, "description")
38
38
 
@@ -44,7 +44,7 @@ class OrganizationUserGroupArgs:
44
44
  @pulumi.getter(name="organizationId")
45
45
  def organization_id(self) -> pulumi.Input[str]:
46
46
  """
47
- The ID of the organization. This property cannot be changed, doing so forces recreation of the resource.
47
+ The ID of the organization. Changing this property forces recreation of the resource.
48
48
  """
49
49
  return pulumi.get(self, "organization_id")
50
50
 
@@ -56,7 +56,7 @@ class OrganizationUserGroupArgs:
56
56
  @pulumi.getter
57
57
  def name(self) -> Optional[pulumi.Input[str]]:
58
58
  """
59
- The name of the user group. This property cannot be changed, doing so forces recreation of the resource.
59
+ The name of the user group. Changing this property forces recreation of the resource.
60
60
  """
61
61
  return pulumi.get(self, "name")
62
62
 
@@ -77,10 +77,10 @@ class _OrganizationUserGroupState:
77
77
  """
78
78
  Input properties used for looking up and filtering OrganizationUserGroup resources.
79
79
  :param pulumi.Input[str] create_time: Time of creation.
80
- :param pulumi.Input[str] description: The description of the user group. This property cannot be changed, doing so forces recreation of the resource.
80
+ :param pulumi.Input[str] description: The description of the user group. Changing this property forces recreation of the resource.
81
81
  :param pulumi.Input[str] group_id: The ID of the user group.
82
- :param pulumi.Input[str] name: The name of the user group. This property cannot be changed, doing so forces recreation of the resource.
83
- :param pulumi.Input[str] organization_id: The ID of the organization. This property cannot be changed, doing so forces recreation of the resource.
82
+ :param pulumi.Input[str] name: The name of the user group. Changing this property forces recreation of the resource.
83
+ :param pulumi.Input[str] organization_id: The ID of the organization. Changing this property forces recreation of the resource.
84
84
  :param pulumi.Input[str] update_time: Time of last update.
85
85
  """
86
86
  if create_time is not None:
@@ -112,7 +112,7 @@ class _OrganizationUserGroupState:
112
112
  @pulumi.getter
113
113
  def description(self) -> Optional[pulumi.Input[str]]:
114
114
  """
115
- The description of the user group. This property cannot be changed, doing so forces recreation of the resource.
115
+ The description of the user group. Changing this property forces recreation of the resource.
116
116
  """
117
117
  return pulumi.get(self, "description")
118
118
 
@@ -136,7 +136,7 @@ class _OrganizationUserGroupState:
136
136
  @pulumi.getter
137
137
  def name(self) -> Optional[pulumi.Input[str]]:
138
138
  """
139
- The name of the user group. This property cannot be changed, doing so forces recreation of the resource.
139
+ The name of the user group. Changing this property forces recreation of the resource.
140
140
  """
141
141
  return pulumi.get(self, "name")
142
142
 
@@ -148,7 +148,7 @@ class _OrganizationUserGroupState:
148
148
  @pulumi.getter(name="organizationId")
149
149
  def organization_id(self) -> Optional[pulumi.Input[str]]:
150
150
  """
151
- The ID of the organization. This property cannot be changed, doing so forces recreation of the resource.
151
+ The ID of the organization. Changing this property forces recreation of the resource.
152
152
  """
153
153
  return pulumi.get(self, "organization_id")
154
154
 
@@ -179,13 +179,32 @@ class OrganizationUserGroup(pulumi.CustomResource):
179
179
  organization_id: Optional[pulumi.Input[str]] = None,
180
180
  __props__=None):
181
181
  """
182
- Creates and manages a user group in an organization.
182
+ Creates and manages a [user group](https://aiven.io/docs/platform/concepts/projects_accounts_access#groups) in an organization.
183
+
184
+ ## Example Usage
185
+
186
+ <!--Start PulumiCodeChooser -->
187
+ ```python
188
+ import pulumi
189
+ import pulumi_aiven as aiven
190
+
191
+ example = aiven.OrganizationUserGroup("example",
192
+ description="Example group of users.",
193
+ organization_id=aiven_organization["main"]["id"])
194
+ ```
195
+ <!--End PulumiCodeChooser -->
196
+
197
+ ## Import
198
+
199
+ ```sh
200
+ $ pulumi import aiven:index/organizationUserGroup:OrganizationUserGroup example ORGANIZATION_ID/USER_GROUP_ID
201
+ ```
183
202
 
184
203
  :param str resource_name: The name of the resource.
185
204
  :param pulumi.ResourceOptions opts: Options for the resource.
186
- :param pulumi.Input[str] description: The description of the user group. This property cannot be changed, doing so forces recreation of the resource.
187
- :param pulumi.Input[str] name: The name of the user group. This property cannot be changed, doing so forces recreation of the resource.
188
- :param pulumi.Input[str] organization_id: The ID of the organization. This property cannot be changed, doing so forces recreation of the resource.
205
+ :param pulumi.Input[str] description: The description of the user group. Changing this property forces recreation of the resource.
206
+ :param pulumi.Input[str] name: The name of the user group. Changing this property forces recreation of the resource.
207
+ :param pulumi.Input[str] organization_id: The ID of the organization. Changing this property forces recreation of the resource.
189
208
  """
190
209
  ...
191
210
  @overload
@@ -194,7 +213,26 @@ class OrganizationUserGroup(pulumi.CustomResource):
194
213
  args: OrganizationUserGroupArgs,
195
214
  opts: Optional[pulumi.ResourceOptions] = None):
196
215
  """
197
- Creates and manages a user group in an organization.
216
+ Creates and manages a [user group](https://aiven.io/docs/platform/concepts/projects_accounts_access#groups) in an organization.
217
+
218
+ ## Example Usage
219
+
220
+ <!--Start PulumiCodeChooser -->
221
+ ```python
222
+ import pulumi
223
+ import pulumi_aiven as aiven
224
+
225
+ example = aiven.OrganizationUserGroup("example",
226
+ description="Example group of users.",
227
+ organization_id=aiven_organization["main"]["id"])
228
+ ```
229
+ <!--End PulumiCodeChooser -->
230
+
231
+ ## Import
232
+
233
+ ```sh
234
+ $ pulumi import aiven:index/organizationUserGroup:OrganizationUserGroup example ORGANIZATION_ID/USER_GROUP_ID
235
+ ```
198
236
 
199
237
  :param str resource_name: The name of the resource.
200
238
  :param OrganizationUserGroupArgs args: The arguments to use to populate this resource's properties.
@@ -257,10 +295,10 @@ class OrganizationUserGroup(pulumi.CustomResource):
257
295
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
258
296
  :param pulumi.ResourceOptions opts: Options for the resource.
259
297
  :param pulumi.Input[str] create_time: Time of creation.
260
- :param pulumi.Input[str] description: The description of the user group. This property cannot be changed, doing so forces recreation of the resource.
298
+ :param pulumi.Input[str] description: The description of the user group. Changing this property forces recreation of the resource.
261
299
  :param pulumi.Input[str] group_id: The ID of the user group.
262
- :param pulumi.Input[str] name: The name of the user group. This property cannot be changed, doing so forces recreation of the resource.
263
- :param pulumi.Input[str] organization_id: The ID of the organization. This property cannot be changed, doing so forces recreation of the resource.
300
+ :param pulumi.Input[str] name: The name of the user group. Changing this property forces recreation of the resource.
301
+ :param pulumi.Input[str] organization_id: The ID of the organization. Changing this property forces recreation of the resource.
264
302
  :param pulumi.Input[str] update_time: Time of last update.
265
303
  """
266
304
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
@@ -287,7 +325,7 @@ class OrganizationUserGroup(pulumi.CustomResource):
287
325
  @pulumi.getter
288
326
  def description(self) -> pulumi.Output[str]:
289
327
  """
290
- The description of the user group. This property cannot be changed, doing so forces recreation of the resource.
328
+ The description of the user group. Changing this property forces recreation of the resource.
291
329
  """
292
330
  return pulumi.get(self, "description")
293
331
 
@@ -303,7 +341,7 @@ class OrganizationUserGroup(pulumi.CustomResource):
303
341
  @pulumi.getter
304
342
  def name(self) -> pulumi.Output[str]:
305
343
  """
306
- The name of the user group. This property cannot be changed, doing so forces recreation of the resource.
344
+ The name of the user group. Changing this property forces recreation of the resource.
307
345
  """
308
346
  return pulumi.get(self, "name")
309
347
 
@@ -311,7 +349,7 @@ class OrganizationUserGroup(pulumi.CustomResource):
311
349
  @pulumi.getter(name="organizationId")
312
350
  def organization_id(self) -> pulumi.Output[str]:
313
351
  """
314
- The ID of the organization. This property cannot be changed, doing so forces recreation of the resource.
352
+ The ID of the organization. Changing this property forces recreation of the resource.
315
353
  """
316
354
  return pulumi.get(self, "organization_id")
317
355
 
@@ -0,0 +1,352 @@
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
+ from ._inputs import *
13
+
14
+ __all__ = ['OrganizationUserGroupMemberArgs', 'OrganizationUserGroupMember']
15
+
16
+ @pulumi.input_type
17
+ class OrganizationUserGroupMemberArgs:
18
+ def __init__(__self__, *,
19
+ group_id: pulumi.Input[str],
20
+ organization_id: pulumi.Input[str],
21
+ user_id: pulumi.Input[str],
22
+ timeouts: Optional[pulumi.Input['OrganizationUserGroupMemberTimeoutsArgs']] = None):
23
+ """
24
+ The set of arguments for constructing a OrganizationUserGroupMember resource.
25
+ :param pulumi.Input[str] group_id: The ID of the user group.
26
+ :param pulumi.Input[str] organization_id: The ID of the organization.
27
+ :param pulumi.Input[str] user_id: The ID of the organization user.
28
+ """
29
+ pulumi.set(__self__, "group_id", group_id)
30
+ pulumi.set(__self__, "organization_id", organization_id)
31
+ pulumi.set(__self__, "user_id", user_id)
32
+ if timeouts is not None:
33
+ pulumi.set(__self__, "timeouts", timeouts)
34
+
35
+ @property
36
+ @pulumi.getter(name="groupId")
37
+ def group_id(self) -> pulumi.Input[str]:
38
+ """
39
+ The ID of the user group.
40
+ """
41
+ return pulumi.get(self, "group_id")
42
+
43
+ @group_id.setter
44
+ def group_id(self, value: pulumi.Input[str]):
45
+ pulumi.set(self, "group_id", value)
46
+
47
+ @property
48
+ @pulumi.getter(name="organizationId")
49
+ def organization_id(self) -> pulumi.Input[str]:
50
+ """
51
+ The ID of the organization.
52
+ """
53
+ return pulumi.get(self, "organization_id")
54
+
55
+ @organization_id.setter
56
+ def organization_id(self, value: pulumi.Input[str]):
57
+ pulumi.set(self, "organization_id", value)
58
+
59
+ @property
60
+ @pulumi.getter(name="userId")
61
+ def user_id(self) -> pulumi.Input[str]:
62
+ """
63
+ The ID of the organization user.
64
+ """
65
+ return pulumi.get(self, "user_id")
66
+
67
+ @user_id.setter
68
+ def user_id(self, value: pulumi.Input[str]):
69
+ pulumi.set(self, "user_id", value)
70
+
71
+ @property
72
+ @pulumi.getter
73
+ def timeouts(self) -> Optional[pulumi.Input['OrganizationUserGroupMemberTimeoutsArgs']]:
74
+ return pulumi.get(self, "timeouts")
75
+
76
+ @timeouts.setter
77
+ def timeouts(self, value: Optional[pulumi.Input['OrganizationUserGroupMemberTimeoutsArgs']]):
78
+ pulumi.set(self, "timeouts", value)
79
+
80
+
81
+ @pulumi.input_type
82
+ class _OrganizationUserGroupMemberState:
83
+ def __init__(__self__, *,
84
+ group_id: Optional[pulumi.Input[str]] = None,
85
+ last_activity_time: Optional[pulumi.Input[str]] = None,
86
+ organization_id: Optional[pulumi.Input[str]] = None,
87
+ timeouts: Optional[pulumi.Input['OrganizationUserGroupMemberTimeoutsArgs']] = None,
88
+ user_id: Optional[pulumi.Input[str]] = None):
89
+ """
90
+ Input properties used for looking up and filtering OrganizationUserGroupMember resources.
91
+ :param pulumi.Input[str] group_id: The ID of the user group.
92
+ :param pulumi.Input[str] last_activity_time: Last activity time of the user group member.
93
+ :param pulumi.Input[str] organization_id: The ID of the organization.
94
+ :param pulumi.Input[str] user_id: The ID of the organization user.
95
+ """
96
+ if group_id is not None:
97
+ pulumi.set(__self__, "group_id", group_id)
98
+ if last_activity_time is not None:
99
+ pulumi.set(__self__, "last_activity_time", last_activity_time)
100
+ if organization_id is not None:
101
+ pulumi.set(__self__, "organization_id", organization_id)
102
+ if timeouts is not None:
103
+ pulumi.set(__self__, "timeouts", timeouts)
104
+ if user_id is not None:
105
+ pulumi.set(__self__, "user_id", user_id)
106
+
107
+ @property
108
+ @pulumi.getter(name="groupId")
109
+ def group_id(self) -> Optional[pulumi.Input[str]]:
110
+ """
111
+ The ID of the user group.
112
+ """
113
+ return pulumi.get(self, "group_id")
114
+
115
+ @group_id.setter
116
+ def group_id(self, value: Optional[pulumi.Input[str]]):
117
+ pulumi.set(self, "group_id", value)
118
+
119
+ @property
120
+ @pulumi.getter(name="lastActivityTime")
121
+ def last_activity_time(self) -> Optional[pulumi.Input[str]]:
122
+ """
123
+ Last activity time of the user group member.
124
+ """
125
+ return pulumi.get(self, "last_activity_time")
126
+
127
+ @last_activity_time.setter
128
+ def last_activity_time(self, value: Optional[pulumi.Input[str]]):
129
+ pulumi.set(self, "last_activity_time", value)
130
+
131
+ @property
132
+ @pulumi.getter(name="organizationId")
133
+ def organization_id(self) -> Optional[pulumi.Input[str]]:
134
+ """
135
+ The ID of the organization.
136
+ """
137
+ return pulumi.get(self, "organization_id")
138
+
139
+ @organization_id.setter
140
+ def organization_id(self, value: Optional[pulumi.Input[str]]):
141
+ pulumi.set(self, "organization_id", value)
142
+
143
+ @property
144
+ @pulumi.getter
145
+ def timeouts(self) -> Optional[pulumi.Input['OrganizationUserGroupMemberTimeoutsArgs']]:
146
+ return pulumi.get(self, "timeouts")
147
+
148
+ @timeouts.setter
149
+ def timeouts(self, value: Optional[pulumi.Input['OrganizationUserGroupMemberTimeoutsArgs']]):
150
+ pulumi.set(self, "timeouts", value)
151
+
152
+ @property
153
+ @pulumi.getter(name="userId")
154
+ def user_id(self) -> Optional[pulumi.Input[str]]:
155
+ """
156
+ The ID of the organization user.
157
+ """
158
+ return pulumi.get(self, "user_id")
159
+
160
+ @user_id.setter
161
+ def user_id(self, value: Optional[pulumi.Input[str]]):
162
+ pulumi.set(self, "user_id", value)
163
+
164
+
165
+ class OrganizationUserGroupMember(pulumi.CustomResource):
166
+ @overload
167
+ def __init__(__self__,
168
+ resource_name: str,
169
+ opts: Optional[pulumi.ResourceOptions] = None,
170
+ group_id: Optional[pulumi.Input[str]] = None,
171
+ organization_id: Optional[pulumi.Input[str]] = None,
172
+ timeouts: Optional[pulumi.Input[pulumi.InputType['OrganizationUserGroupMemberTimeoutsArgs']]] = None,
173
+ user_id: Optional[pulumi.Input[str]] = None,
174
+ __props__=None):
175
+ """
176
+ Adds and manages users in a [user group](https://aiven.io/docs/platform/concepts/projects_accounts_access#groups).
177
+
178
+ ## Example Usage
179
+
180
+ <!--Start PulumiCodeChooser -->
181
+ ```python
182
+ import pulumi
183
+ import pulumi_aiven as aiven
184
+
185
+ example = aiven.OrganizationUserGroup("example",
186
+ description="Example group of users.",
187
+ organization_id=aiven_organization["main"]["id"])
188
+ project_admin = aiven.OrganizationUserGroupMember("projectAdmin",
189
+ group_id=example.group_id,
190
+ organization_id=aiven_organization["main"]["id"],
191
+ user_id="u123a456b7890c")
192
+ ```
193
+ <!--End PulumiCodeChooser -->
194
+
195
+ ## Import
196
+
197
+ ```sh
198
+ $ pulumi import aiven:index/organizationUserGroupMember:OrganizationUserGroupMember project_admin ORGANIZATION_ID/USER_GROUP_ID/USER_ID
199
+ ```
200
+
201
+ :param str resource_name: The name of the resource.
202
+ :param pulumi.ResourceOptions opts: Options for the resource.
203
+ :param pulumi.Input[str] group_id: The ID of the user group.
204
+ :param pulumi.Input[str] organization_id: The ID of the organization.
205
+ :param pulumi.Input[str] user_id: The ID of the organization user.
206
+ """
207
+ ...
208
+ @overload
209
+ def __init__(__self__,
210
+ resource_name: str,
211
+ args: OrganizationUserGroupMemberArgs,
212
+ opts: Optional[pulumi.ResourceOptions] = None):
213
+ """
214
+ Adds and manages users in a [user group](https://aiven.io/docs/platform/concepts/projects_accounts_access#groups).
215
+
216
+ ## Example Usage
217
+
218
+ <!--Start PulumiCodeChooser -->
219
+ ```python
220
+ import pulumi
221
+ import pulumi_aiven as aiven
222
+
223
+ example = aiven.OrganizationUserGroup("example",
224
+ description="Example group of users.",
225
+ organization_id=aiven_organization["main"]["id"])
226
+ project_admin = aiven.OrganizationUserGroupMember("projectAdmin",
227
+ group_id=example.group_id,
228
+ organization_id=aiven_organization["main"]["id"],
229
+ user_id="u123a456b7890c")
230
+ ```
231
+ <!--End PulumiCodeChooser -->
232
+
233
+ ## Import
234
+
235
+ ```sh
236
+ $ pulumi import aiven:index/organizationUserGroupMember:OrganizationUserGroupMember project_admin ORGANIZATION_ID/USER_GROUP_ID/USER_ID
237
+ ```
238
+
239
+ :param str resource_name: The name of the resource.
240
+ :param OrganizationUserGroupMemberArgs args: The arguments to use to populate this resource's properties.
241
+ :param pulumi.ResourceOptions opts: Options for the resource.
242
+ """
243
+ ...
244
+ def __init__(__self__, resource_name: str, *args, **kwargs):
245
+ resource_args, opts = _utilities.get_resource_args_opts(OrganizationUserGroupMemberArgs, pulumi.ResourceOptions, *args, **kwargs)
246
+ if resource_args is not None:
247
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
248
+ else:
249
+ __self__._internal_init(resource_name, *args, **kwargs)
250
+
251
+ def _internal_init(__self__,
252
+ resource_name: str,
253
+ opts: Optional[pulumi.ResourceOptions] = None,
254
+ group_id: Optional[pulumi.Input[str]] = None,
255
+ organization_id: Optional[pulumi.Input[str]] = None,
256
+ timeouts: Optional[pulumi.Input[pulumi.InputType['OrganizationUserGroupMemberTimeoutsArgs']]] = None,
257
+ user_id: Optional[pulumi.Input[str]] = None,
258
+ __props__=None):
259
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
260
+ if not isinstance(opts, pulumi.ResourceOptions):
261
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
262
+ if opts.id is None:
263
+ if __props__ is not None:
264
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
265
+ __props__ = OrganizationUserGroupMemberArgs.__new__(OrganizationUserGroupMemberArgs)
266
+
267
+ if group_id is None and not opts.urn:
268
+ raise TypeError("Missing required property 'group_id'")
269
+ __props__.__dict__["group_id"] = group_id
270
+ if organization_id is None and not opts.urn:
271
+ raise TypeError("Missing required property 'organization_id'")
272
+ __props__.__dict__["organization_id"] = organization_id
273
+ __props__.__dict__["timeouts"] = timeouts
274
+ if user_id is None and not opts.urn:
275
+ raise TypeError("Missing required property 'user_id'")
276
+ __props__.__dict__["user_id"] = user_id
277
+ __props__.__dict__["last_activity_time"] = None
278
+ super(OrganizationUserGroupMember, __self__).__init__(
279
+ 'aiven:index/organizationUserGroupMember:OrganizationUserGroupMember',
280
+ resource_name,
281
+ __props__,
282
+ opts)
283
+
284
+ @staticmethod
285
+ def get(resource_name: str,
286
+ id: pulumi.Input[str],
287
+ opts: Optional[pulumi.ResourceOptions] = None,
288
+ group_id: Optional[pulumi.Input[str]] = None,
289
+ last_activity_time: Optional[pulumi.Input[str]] = None,
290
+ organization_id: Optional[pulumi.Input[str]] = None,
291
+ timeouts: Optional[pulumi.Input[pulumi.InputType['OrganizationUserGroupMemberTimeoutsArgs']]] = None,
292
+ user_id: Optional[pulumi.Input[str]] = None) -> 'OrganizationUserGroupMember':
293
+ """
294
+ Get an existing OrganizationUserGroupMember resource's state with the given name, id, and optional extra
295
+ properties used to qualify the lookup.
296
+
297
+ :param str resource_name: The unique name of the resulting resource.
298
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
299
+ :param pulumi.ResourceOptions opts: Options for the resource.
300
+ :param pulumi.Input[str] group_id: The ID of the user group.
301
+ :param pulumi.Input[str] last_activity_time: Last activity time of the user group member.
302
+ :param pulumi.Input[str] organization_id: The ID of the organization.
303
+ :param pulumi.Input[str] user_id: The ID of the organization user.
304
+ """
305
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
306
+
307
+ __props__ = _OrganizationUserGroupMemberState.__new__(_OrganizationUserGroupMemberState)
308
+
309
+ __props__.__dict__["group_id"] = group_id
310
+ __props__.__dict__["last_activity_time"] = last_activity_time
311
+ __props__.__dict__["organization_id"] = organization_id
312
+ __props__.__dict__["timeouts"] = timeouts
313
+ __props__.__dict__["user_id"] = user_id
314
+ return OrganizationUserGroupMember(resource_name, opts=opts, __props__=__props__)
315
+
316
+ @property
317
+ @pulumi.getter(name="groupId")
318
+ def group_id(self) -> pulumi.Output[str]:
319
+ """
320
+ The ID of the user group.
321
+ """
322
+ return pulumi.get(self, "group_id")
323
+
324
+ @property
325
+ @pulumi.getter(name="lastActivityTime")
326
+ def last_activity_time(self) -> pulumi.Output[str]:
327
+ """
328
+ Last activity time of the user group member.
329
+ """
330
+ return pulumi.get(self, "last_activity_time")
331
+
332
+ @property
333
+ @pulumi.getter(name="organizationId")
334
+ def organization_id(self) -> pulumi.Output[str]:
335
+ """
336
+ The ID of the organization.
337
+ """
338
+ return pulumi.get(self, "organization_id")
339
+
340
+ @property
341
+ @pulumi.getter
342
+ def timeouts(self) -> pulumi.Output[Optional['outputs.OrganizationUserGroupMemberTimeouts']]:
343
+ return pulumi.get(self, "timeouts")
344
+
345
+ @property
346
+ @pulumi.getter(name="userId")
347
+ def user_id(self) -> pulumi.Output[str]:
348
+ """
349
+ The ID of the organization user.
350
+ """
351
+ return pulumi.get(self, "user_id")
352
+