pulumi-aiven 6.37.0a1744255932__py3-none-any.whl → 6.38.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 (114) hide show
  1. pulumi_aiven/__init__.py +9 -0
  2. pulumi_aiven/_inputs.py +1302 -160
  3. pulumi_aiven/account.py +1 -0
  4. pulumi_aiven/account_authentication.py +1 -0
  5. pulumi_aiven/account_team.py +1 -0
  6. pulumi_aiven/account_team_member.py +1 -0
  7. pulumi_aiven/account_team_project.py +1 -0
  8. pulumi_aiven/alloydbomni.py +1 -0
  9. pulumi_aiven/alloydbomni_database.py +1 -0
  10. pulumi_aiven/alloydbomni_user.py +1 -0
  11. pulumi_aiven/aws_org_vpc_peering_connection.py +1 -0
  12. pulumi_aiven/aws_privatelink.py +1 -0
  13. pulumi_aiven/aws_vpc_peering_connection.py +1 -0
  14. pulumi_aiven/azure_org_vpc_peering_connection.py +1 -0
  15. pulumi_aiven/azure_privatelink.py +1 -0
  16. pulumi_aiven/azure_privatelink_connection_approval.py +1 -0
  17. pulumi_aiven/azure_vpc_peering_connection.py +1 -0
  18. pulumi_aiven/billing_group.py +1 -0
  19. pulumi_aiven/cassandra.py +1 -0
  20. pulumi_aiven/cassandra_user.py +1 -0
  21. pulumi_aiven/clickhouse.py +1 -0
  22. pulumi_aiven/clickhouse_database.py +1 -0
  23. pulumi_aiven/clickhouse_grant.py +19 -0
  24. pulumi_aiven/clickhouse_role.py +1 -0
  25. pulumi_aiven/clickhouse_user.py +1 -0
  26. pulumi_aiven/connection_pool.py +1 -0
  27. pulumi_aiven/dragonfly.py +1 -0
  28. pulumi_aiven/flink.py +1 -0
  29. pulumi_aiven/flink_application.py +1 -0
  30. pulumi_aiven/flink_application_deployment.py +1 -0
  31. pulumi_aiven/flink_application_version.py +1 -0
  32. pulumi_aiven/flink_jar_application.py +1 -0
  33. pulumi_aiven/flink_jar_application_deployment.py +1 -0
  34. pulumi_aiven/flink_jar_application_version.py +1 -0
  35. pulumi_aiven/gcp_org_vpc_peering_connection.py +1 -0
  36. pulumi_aiven/gcp_privatelink.py +1 -0
  37. pulumi_aiven/gcp_privatelink_connection_approval.py +1 -0
  38. pulumi_aiven/gcp_vpc_peering_connection.py +1 -0
  39. pulumi_aiven/get_external_identity.py +5 -5
  40. pulumi_aiven/get_open_search.py +7 -7
  41. pulumi_aiven/get_open_search_acl_config.py +7 -7
  42. pulumi_aiven/get_open_search_acl_rule.py +19 -19
  43. pulumi_aiven/get_opensearch_security_plugin_config.py +7 -7
  44. pulumi_aiven/get_opensearch_user.py +13 -13
  45. pulumi_aiven/get_organization.py +24 -6
  46. pulumi_aiven/get_organization_address.py +52 -29
  47. pulumi_aiven/get_organization_billing_group.py +38 -15
  48. pulumi_aiven/get_organization_billing_group_list.py +40 -12
  49. pulumi_aiven/get_organization_project.py +50 -14
  50. pulumi_aiven/governance_access.py +418 -0
  51. pulumi_aiven/grafana.py +1 -0
  52. pulumi_aiven/influx_db.py +1 -0
  53. pulumi_aiven/influxdb_database.py +1 -0
  54. pulumi_aiven/influxdb_user.py +1 -0
  55. pulumi_aiven/kafka.py +1 -0
  56. pulumi_aiven/kafka_acl.py +1 -0
  57. pulumi_aiven/kafka_connect.py +1 -0
  58. pulumi_aiven/kafka_connector.py +1 -0
  59. pulumi_aiven/kafka_mirror_maker.py +1 -0
  60. pulumi_aiven/kafka_native_acl.py +1 -0
  61. pulumi_aiven/kafka_quota.py +1 -0
  62. pulumi_aiven/kafka_schema.py +1 -0
  63. pulumi_aiven/kafka_schema_configuration.py +1 -0
  64. pulumi_aiven/kafka_schema_registry_acl.py +1 -0
  65. pulumi_aiven/kafka_topic.py +1 -0
  66. pulumi_aiven/kafka_user.py +1 -0
  67. pulumi_aiven/m3_aggregator.py +1 -0
  68. pulumi_aiven/m3_db.py +1 -0
  69. pulumi_aiven/m3db_user.py +1 -0
  70. pulumi_aiven/mirror_maker_replication_flow.py +1 -0
  71. pulumi_aiven/my_sql.py +1 -0
  72. pulumi_aiven/mysql_database.py +1 -0
  73. pulumi_aiven/mysql_user.py +1 -0
  74. pulumi_aiven/open_search.py +18 -19
  75. pulumi_aiven/open_search_acl_config.py +30 -41
  76. pulumi_aiven/open_search_acl_rule.py +48 -47
  77. pulumi_aiven/opensearch_security_plugin_config.py +15 -42
  78. pulumi_aiven/opensearch_user.py +33 -32
  79. pulumi_aiven/organization.py +25 -19
  80. pulumi_aiven/organization_address.py +103 -96
  81. pulumi_aiven/organization_application_user.py +10 -0
  82. pulumi_aiven/organization_application_user_token.py +1 -0
  83. pulumi_aiven/organization_billing_group.py +67 -60
  84. pulumi_aiven/organization_group_project.py +1 -0
  85. pulumi_aiven/organization_permission.py +1 -0
  86. pulumi_aiven/organization_project.py +112 -62
  87. pulumi_aiven/organization_user.py +1 -0
  88. pulumi_aiven/organization_user_group.py +1 -0
  89. pulumi_aiven/organization_user_group_member.py +1 -0
  90. pulumi_aiven/organization_vpc.py +1 -0
  91. pulumi_aiven/organizational_unit.py +1 -0
  92. pulumi_aiven/outputs.py +1039 -189
  93. pulumi_aiven/pg.py +1 -0
  94. pulumi_aiven/pg_database.py +1 -0
  95. pulumi_aiven/pg_user.py +1 -0
  96. pulumi_aiven/project.py +1 -0
  97. pulumi_aiven/project_user.py +1 -0
  98. pulumi_aiven/project_vpc.py +1 -0
  99. pulumi_aiven/provider.py +21 -0
  100. pulumi_aiven/pulumi-plugin.json +1 -1
  101. pulumi_aiven/redis.py +1 -0
  102. pulumi_aiven/redis_user.py +1 -0
  103. pulumi_aiven/service_integration.py +1 -0
  104. pulumi_aiven/service_integration_endpoint.py +1 -0
  105. pulumi_aiven/static_ip.py +1 -0
  106. pulumi_aiven/thanos.py +1 -0
  107. pulumi_aiven/transit_gateway_vpc_attachment.py +1 -0
  108. pulumi_aiven/valkey.py +1 -0
  109. pulumi_aiven/valkey_user.py +1 -0
  110. {pulumi_aiven-6.37.0a1744255932.dist-info → pulumi_aiven-6.38.0.dist-info}/METADATA +3 -3
  111. pulumi_aiven-6.38.0.dist-info/RECORD +189 -0
  112. {pulumi_aiven-6.37.0a1744255932.dist-info → pulumi_aiven-6.38.0.dist-info}/WHEEL +1 -1
  113. pulumi_aiven-6.37.0a1744255932.dist-info/RECORD +0 -188
  114. {pulumi_aiven-6.37.0a1744255932.dist-info → pulumi_aiven-6.38.0.dist-info}/top_level.txt +0 -0
@@ -26,14 +26,17 @@ class OrganizationProjectArgs:
26
26
  organization_id: pulumi.Input[builtins.str],
27
27
  parent_id: pulumi.Input[builtins.str],
28
28
  project_id: pulumi.Input[builtins.str],
29
+ base_port: Optional[pulumi.Input[builtins.int]] = None,
29
30
  tags: Optional[pulumi.Input[Sequence[pulumi.Input['OrganizationProjectTagArgs']]]] = None,
30
- technical_emails: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None):
31
+ technical_emails: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
32
+ timeouts: Optional[pulumi.Input['OrganizationProjectTimeoutsArgs']] = None):
31
33
  """
32
34
  The set of arguments for constructing a OrganizationProject resource.
33
- :param pulumi.Input[builtins.str] billing_group_id: Billing group ID to assign to the project.
34
- :param pulumi.Input[builtins.str] organization_id: ID of an organization. Changing this property forces recreation of the resource.
35
+ :param pulumi.Input[builtins.str] billing_group_id: Billing group ID to assign to the project. It's required when moving projects between organizations.
36
+ :param pulumi.Input[builtins.str] organization_id: ID of an organization. Maximum length: `36`.
35
37
  :param pulumi.Input[builtins.str] parent_id: Link a project to an [organization or organizational unit](https://aiven.io/docs/platform/concepts/orgs-units-projects) by using its ID. To set up proper dependencies please refer to this variable as a reference.
36
- :param pulumi.Input[builtins.str] project_id: Unique identifier for the project that also serves as the project name.
38
+ :param pulumi.Input[builtins.str] project_id: The name of the project. Names must be globally unique among all Aiven customers. Names must begin with a letter (a-z), and consist of letters, numbers, and dashes. It's recommended to use a random string or your organization name as a prefix or suffix. Changing this property forces recreation of the resource. Changing this property forces recreation of the resource.
39
+ :param pulumi.Input[builtins.int] base_port: Valid port number (1-65535) to use as a base for service port allocation.
37
40
  :param pulumi.Input[Sequence[pulumi.Input['OrganizationProjectTagArgs']]] tags: Tags are key-value pairs that allow you to categorize projects.
38
41
  :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] technical_emails: The email addresses for [project contacts](https://aiven.io/docs/platform/howto/technical-emails), who will receive important alerts and updates about this project and its services. You can also set email contacts at the service level. It's good practice to keep these up-to-date to be aware of any potential issues with your project.
39
42
  """
@@ -41,16 +44,20 @@ class OrganizationProjectArgs:
41
44
  pulumi.set(__self__, "organization_id", organization_id)
42
45
  pulumi.set(__self__, "parent_id", parent_id)
43
46
  pulumi.set(__self__, "project_id", project_id)
47
+ if base_port is not None:
48
+ pulumi.set(__self__, "base_port", base_port)
44
49
  if tags is not None:
45
50
  pulumi.set(__self__, "tags", tags)
46
51
  if technical_emails is not None:
47
52
  pulumi.set(__self__, "technical_emails", technical_emails)
53
+ if timeouts is not None:
54
+ pulumi.set(__self__, "timeouts", timeouts)
48
55
 
49
56
  @property
50
57
  @pulumi.getter(name="billingGroupId")
51
58
  def billing_group_id(self) -> pulumi.Input[builtins.str]:
52
59
  """
53
- Billing group ID to assign to the project.
60
+ Billing group ID to assign to the project. It's required when moving projects between organizations.
54
61
  """
55
62
  return pulumi.get(self, "billing_group_id")
56
63
 
@@ -62,7 +69,7 @@ class OrganizationProjectArgs:
62
69
  @pulumi.getter(name="organizationId")
63
70
  def organization_id(self) -> pulumi.Input[builtins.str]:
64
71
  """
65
- ID of an organization. Changing this property forces recreation of the resource.
72
+ ID of an organization. Maximum length: `36`.
66
73
  """
67
74
  return pulumi.get(self, "organization_id")
68
75
 
@@ -86,7 +93,7 @@ class OrganizationProjectArgs:
86
93
  @pulumi.getter(name="projectId")
87
94
  def project_id(self) -> pulumi.Input[builtins.str]:
88
95
  """
89
- Unique identifier for the project that also serves as the project name.
96
+ The name of the project. Names must be globally unique among all Aiven customers. Names must begin with a letter (a-z), and consist of letters, numbers, and dashes. It's recommended to use a random string or your organization name as a prefix or suffix. Changing this property forces recreation of the resource. Changing this property forces recreation of the resource.
90
97
  """
91
98
  return pulumi.get(self, "project_id")
92
99
 
@@ -94,6 +101,18 @@ class OrganizationProjectArgs:
94
101
  def project_id(self, value: pulumi.Input[builtins.str]):
95
102
  pulumi.set(self, "project_id", value)
96
103
 
104
+ @property
105
+ @pulumi.getter(name="basePort")
106
+ def base_port(self) -> Optional[pulumi.Input[builtins.int]]:
107
+ """
108
+ Valid port number (1-65535) to use as a base for service port allocation.
109
+ """
110
+ return pulumi.get(self, "base_port")
111
+
112
+ @base_port.setter
113
+ def base_port(self, value: Optional[pulumi.Input[builtins.int]]):
114
+ pulumi.set(self, "base_port", value)
115
+
97
116
  @property
98
117
  @pulumi.getter
99
118
  def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['OrganizationProjectTagArgs']]]]:
@@ -118,27 +137,41 @@ class OrganizationProjectArgs:
118
137
  def technical_emails(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
119
138
  pulumi.set(self, "technical_emails", value)
120
139
 
140
+ @property
141
+ @pulumi.getter
142
+ def timeouts(self) -> Optional[pulumi.Input['OrganizationProjectTimeoutsArgs']]:
143
+ return pulumi.get(self, "timeouts")
144
+
145
+ @timeouts.setter
146
+ def timeouts(self, value: Optional[pulumi.Input['OrganizationProjectTimeoutsArgs']]):
147
+ pulumi.set(self, "timeouts", value)
148
+
121
149
 
122
150
  @pulumi.input_type
123
151
  class _OrganizationProjectState:
124
152
  def __init__(__self__, *,
153
+ base_port: Optional[pulumi.Input[builtins.int]] = None,
125
154
  billing_group_id: Optional[pulumi.Input[builtins.str]] = None,
126
155
  ca_cert: Optional[pulumi.Input[builtins.str]] = None,
127
156
  organization_id: Optional[pulumi.Input[builtins.str]] = None,
128
157
  parent_id: Optional[pulumi.Input[builtins.str]] = None,
129
158
  project_id: Optional[pulumi.Input[builtins.str]] = None,
130
159
  tags: Optional[pulumi.Input[Sequence[pulumi.Input['OrganizationProjectTagArgs']]]] = None,
131
- technical_emails: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None):
160
+ technical_emails: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
161
+ timeouts: Optional[pulumi.Input['OrganizationProjectTimeoutsArgs']] = None):
132
162
  """
133
163
  Input properties used for looking up and filtering OrganizationProject resources.
134
- :param pulumi.Input[builtins.str] billing_group_id: Billing group ID to assign to the project.
135
- :param pulumi.Input[builtins.str] ca_cert: The CA certificate for the project. This is required for configuring clients that connect to certain services like Kafka.
136
- :param pulumi.Input[builtins.str] organization_id: ID of an organization. Changing this property forces recreation of the resource.
164
+ :param pulumi.Input[builtins.int] base_port: Valid port number (1-65535) to use as a base for service port allocation.
165
+ :param pulumi.Input[builtins.str] billing_group_id: Billing group ID to assign to the project. It's required when moving projects between organizations.
166
+ :param pulumi.Input[builtins.str] ca_cert: PEM encoded certificate.
167
+ :param pulumi.Input[builtins.str] organization_id: ID of an organization. Maximum length: `36`.
137
168
  :param pulumi.Input[builtins.str] parent_id: Link a project to an [organization or organizational unit](https://aiven.io/docs/platform/concepts/orgs-units-projects) by using its ID. To set up proper dependencies please refer to this variable as a reference.
138
- :param pulumi.Input[builtins.str] project_id: Unique identifier for the project that also serves as the project name.
169
+ :param pulumi.Input[builtins.str] project_id: The name of the project. Names must be globally unique among all Aiven customers. Names must begin with a letter (a-z), and consist of letters, numbers, and dashes. It's recommended to use a random string or your organization name as a prefix or suffix. Changing this property forces recreation of the resource. Changing this property forces recreation of the resource.
139
170
  :param pulumi.Input[Sequence[pulumi.Input['OrganizationProjectTagArgs']]] tags: Tags are key-value pairs that allow you to categorize projects.
140
171
  :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] technical_emails: The email addresses for [project contacts](https://aiven.io/docs/platform/howto/technical-emails), who will receive important alerts and updates about this project and its services. You can also set email contacts at the service level. It's good practice to keep these up-to-date to be aware of any potential issues with your project.
141
172
  """
173
+ if base_port is not None:
174
+ pulumi.set(__self__, "base_port", base_port)
142
175
  if billing_group_id is not None:
143
176
  pulumi.set(__self__, "billing_group_id", billing_group_id)
144
177
  if ca_cert is not None:
@@ -153,12 +186,26 @@ class _OrganizationProjectState:
153
186
  pulumi.set(__self__, "tags", tags)
154
187
  if technical_emails is not None:
155
188
  pulumi.set(__self__, "technical_emails", technical_emails)
189
+ if timeouts is not None:
190
+ pulumi.set(__self__, "timeouts", timeouts)
191
+
192
+ @property
193
+ @pulumi.getter(name="basePort")
194
+ def base_port(self) -> Optional[pulumi.Input[builtins.int]]:
195
+ """
196
+ Valid port number (1-65535) to use as a base for service port allocation.
197
+ """
198
+ return pulumi.get(self, "base_port")
199
+
200
+ @base_port.setter
201
+ def base_port(self, value: Optional[pulumi.Input[builtins.int]]):
202
+ pulumi.set(self, "base_port", value)
156
203
 
157
204
  @property
158
205
  @pulumi.getter(name="billingGroupId")
159
206
  def billing_group_id(self) -> Optional[pulumi.Input[builtins.str]]:
160
207
  """
161
- Billing group ID to assign to the project.
208
+ Billing group ID to assign to the project. It's required when moving projects between organizations.
162
209
  """
163
210
  return pulumi.get(self, "billing_group_id")
164
211
 
@@ -170,7 +217,7 @@ class _OrganizationProjectState:
170
217
  @pulumi.getter(name="caCert")
171
218
  def ca_cert(self) -> Optional[pulumi.Input[builtins.str]]:
172
219
  """
173
- The CA certificate for the project. This is required for configuring clients that connect to certain services like Kafka.
220
+ PEM encoded certificate.
174
221
  """
175
222
  return pulumi.get(self, "ca_cert")
176
223
 
@@ -182,7 +229,7 @@ class _OrganizationProjectState:
182
229
  @pulumi.getter(name="organizationId")
183
230
  def organization_id(self) -> Optional[pulumi.Input[builtins.str]]:
184
231
  """
185
- ID of an organization. Changing this property forces recreation of the resource.
232
+ ID of an organization. Maximum length: `36`.
186
233
  """
187
234
  return pulumi.get(self, "organization_id")
188
235
 
@@ -206,7 +253,7 @@ class _OrganizationProjectState:
206
253
  @pulumi.getter(name="projectId")
207
254
  def project_id(self) -> Optional[pulumi.Input[builtins.str]]:
208
255
  """
209
- Unique identifier for the project that also serves as the project name.
256
+ The name of the project. Names must be globally unique among all Aiven customers. Names must begin with a letter (a-z), and consist of letters, numbers, and dashes. It's recommended to use a random string or your organization name as a prefix or suffix. Changing this property forces recreation of the resource. Changing this property forces recreation of the resource.
210
257
  """
211
258
  return pulumi.get(self, "project_id")
212
259
 
@@ -238,18 +285,30 @@ class _OrganizationProjectState:
238
285
  def technical_emails(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
239
286
  pulumi.set(self, "technical_emails", value)
240
287
 
288
+ @property
289
+ @pulumi.getter
290
+ def timeouts(self) -> Optional[pulumi.Input['OrganizationProjectTimeoutsArgs']]:
291
+ return pulumi.get(self, "timeouts")
241
292
 
293
+ @timeouts.setter
294
+ def timeouts(self, value: Optional[pulumi.Input['OrganizationProjectTimeoutsArgs']]):
295
+ pulumi.set(self, "timeouts", value)
296
+
297
+
298
+ @pulumi.type_token("aiven:index/organizationProject:OrganizationProject")
242
299
  class OrganizationProject(pulumi.CustomResource):
243
300
  @overload
244
301
  def __init__(__self__,
245
302
  resource_name: str,
246
303
  opts: Optional[pulumi.ResourceOptions] = None,
304
+ base_port: Optional[pulumi.Input[builtins.int]] = None,
247
305
  billing_group_id: Optional[pulumi.Input[builtins.str]] = None,
248
306
  organization_id: Optional[pulumi.Input[builtins.str]] = None,
249
307
  parent_id: Optional[pulumi.Input[builtins.str]] = None,
250
308
  project_id: Optional[pulumi.Input[builtins.str]] = None,
251
309
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OrganizationProjectTagArgs', 'OrganizationProjectTagArgsDict']]]]] = None,
252
310
  technical_emails: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
311
+ timeouts: Optional[pulumi.Input[Union['OrganizationProjectTimeoutsArgs', 'OrganizationProjectTimeoutsArgsDict']]] = None,
253
312
  __props__=None):
254
313
  """
255
314
  Creates and manages an [Aiven project](https://aiven.io/docs/platform/concepts/orgs-units-projects#projects).
@@ -257,34 +316,19 @@ class OrganizationProject(pulumi.CustomResource):
257
316
  **This resource is in the beta stage and may change without notice.** Set
258
317
  the `PROVIDER_AIVEN_ENABLE_BETA` environment variable to use the resource.
259
318
 
260
- ## Example Usage
261
-
262
- ```python
263
- import pulumi
264
- import pulumi_aiven as aiven
265
-
266
- foo = aiven.OrganizationProject("foo",
267
- project_id="example-project",
268
- organization_id=foo_aiven_organization["id"],
269
- billing_group_id=foo_aiven_billing_group["id"],
270
- tags=[{
271
- "key": "key_1",
272
- "value": "value_1",
273
- }])
274
- ```
275
-
276
319
  ## Import
277
320
 
278
321
  ```sh
279
- $ pulumi import aiven:index/organizationProject:OrganizationProject main ORGANIZATION_ID/PROJECT_ID
322
+ $ pulumi import aiven:index/organizationProject:OrganizationProject example_project ORGANIZATION_ID/PROJECT_ID
280
323
  ```
281
324
 
282
325
  :param str resource_name: The name of the resource.
283
326
  :param pulumi.ResourceOptions opts: Options for the resource.
284
- :param pulumi.Input[builtins.str] billing_group_id: Billing group ID to assign to the project.
285
- :param pulumi.Input[builtins.str] organization_id: ID of an organization. Changing this property forces recreation of the resource.
327
+ :param pulumi.Input[builtins.int] base_port: Valid port number (1-65535) to use as a base for service port allocation.
328
+ :param pulumi.Input[builtins.str] billing_group_id: Billing group ID to assign to the project. It's required when moving projects between organizations.
329
+ :param pulumi.Input[builtins.str] organization_id: ID of an organization. Maximum length: `36`.
286
330
  :param pulumi.Input[builtins.str] parent_id: Link a project to an [organization or organizational unit](https://aiven.io/docs/platform/concepts/orgs-units-projects) by using its ID. To set up proper dependencies please refer to this variable as a reference.
287
- :param pulumi.Input[builtins.str] project_id: Unique identifier for the project that also serves as the project name.
331
+ :param pulumi.Input[builtins.str] project_id: The name of the project. Names must be globally unique among all Aiven customers. Names must begin with a letter (a-z), and consist of letters, numbers, and dashes. It's recommended to use a random string or your organization name as a prefix or suffix. Changing this property forces recreation of the resource. Changing this property forces recreation of the resource.
288
332
  :param pulumi.Input[Sequence[pulumi.Input[Union['OrganizationProjectTagArgs', 'OrganizationProjectTagArgsDict']]]] tags: Tags are key-value pairs that allow you to categorize projects.
289
333
  :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] technical_emails: The email addresses for [project contacts](https://aiven.io/docs/platform/howto/technical-emails), who will receive important alerts and updates about this project and its services. You can also set email contacts at the service level. It's good practice to keep these up-to-date to be aware of any potential issues with your project.
290
334
  """
@@ -300,26 +344,10 @@ class OrganizationProject(pulumi.CustomResource):
300
344
  **This resource is in the beta stage and may change without notice.** Set
301
345
  the `PROVIDER_AIVEN_ENABLE_BETA` environment variable to use the resource.
302
346
 
303
- ## Example Usage
304
-
305
- ```python
306
- import pulumi
307
- import pulumi_aiven as aiven
308
-
309
- foo = aiven.OrganizationProject("foo",
310
- project_id="example-project",
311
- organization_id=foo_aiven_organization["id"],
312
- billing_group_id=foo_aiven_billing_group["id"],
313
- tags=[{
314
- "key": "key_1",
315
- "value": "value_1",
316
- }])
317
- ```
318
-
319
347
  ## Import
320
348
 
321
349
  ```sh
322
- $ pulumi import aiven:index/organizationProject:OrganizationProject main ORGANIZATION_ID/PROJECT_ID
350
+ $ pulumi import aiven:index/organizationProject:OrganizationProject example_project ORGANIZATION_ID/PROJECT_ID
323
351
  ```
324
352
 
325
353
  :param str resource_name: The name of the resource.
@@ -337,12 +365,14 @@ class OrganizationProject(pulumi.CustomResource):
337
365
  def _internal_init(__self__,
338
366
  resource_name: str,
339
367
  opts: Optional[pulumi.ResourceOptions] = None,
368
+ base_port: Optional[pulumi.Input[builtins.int]] = None,
340
369
  billing_group_id: Optional[pulumi.Input[builtins.str]] = None,
341
370
  organization_id: Optional[pulumi.Input[builtins.str]] = None,
342
371
  parent_id: Optional[pulumi.Input[builtins.str]] = None,
343
372
  project_id: Optional[pulumi.Input[builtins.str]] = None,
344
373
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OrganizationProjectTagArgs', 'OrganizationProjectTagArgsDict']]]]] = None,
345
374
  technical_emails: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
375
+ timeouts: Optional[pulumi.Input[Union['OrganizationProjectTimeoutsArgs', 'OrganizationProjectTimeoutsArgsDict']]] = None,
346
376
  __props__=None):
347
377
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
348
378
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -352,6 +382,7 @@ class OrganizationProject(pulumi.CustomResource):
352
382
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
353
383
  __props__ = OrganizationProjectArgs.__new__(OrganizationProjectArgs)
354
384
 
385
+ __props__.__dict__["base_port"] = base_port
355
386
  if billing_group_id is None and not opts.urn:
356
387
  raise TypeError("Missing required property 'billing_group_id'")
357
388
  __props__.__dict__["billing_group_id"] = billing_group_id
@@ -366,6 +397,7 @@ class OrganizationProject(pulumi.CustomResource):
366
397
  __props__.__dict__["project_id"] = project_id
367
398
  __props__.__dict__["tags"] = tags
368
399
  __props__.__dict__["technical_emails"] = technical_emails
400
+ __props__.__dict__["timeouts"] = timeouts
369
401
  __props__.__dict__["ca_cert"] = None
370
402
  secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["caCert"])
371
403
  opts = pulumi.ResourceOptions.merge(opts, secret_opts)
@@ -379,13 +411,15 @@ class OrganizationProject(pulumi.CustomResource):
379
411
  def get(resource_name: str,
380
412
  id: pulumi.Input[str],
381
413
  opts: Optional[pulumi.ResourceOptions] = None,
414
+ base_port: Optional[pulumi.Input[builtins.int]] = None,
382
415
  billing_group_id: Optional[pulumi.Input[builtins.str]] = None,
383
416
  ca_cert: Optional[pulumi.Input[builtins.str]] = None,
384
417
  organization_id: Optional[pulumi.Input[builtins.str]] = None,
385
418
  parent_id: Optional[pulumi.Input[builtins.str]] = None,
386
419
  project_id: Optional[pulumi.Input[builtins.str]] = None,
387
420
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OrganizationProjectTagArgs', 'OrganizationProjectTagArgsDict']]]]] = None,
388
- technical_emails: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None) -> 'OrganizationProject':
421
+ technical_emails: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
422
+ timeouts: Optional[pulumi.Input[Union['OrganizationProjectTimeoutsArgs', 'OrganizationProjectTimeoutsArgsDict']]] = None) -> 'OrganizationProject':
389
423
  """
390
424
  Get an existing OrganizationProject resource's state with the given name, id, and optional extra
391
425
  properties used to qualify the lookup.
@@ -393,11 +427,12 @@ class OrganizationProject(pulumi.CustomResource):
393
427
  :param str resource_name: The unique name of the resulting resource.
394
428
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
395
429
  :param pulumi.ResourceOptions opts: Options for the resource.
396
- :param pulumi.Input[builtins.str] billing_group_id: Billing group ID to assign to the project.
397
- :param pulumi.Input[builtins.str] ca_cert: The CA certificate for the project. This is required for configuring clients that connect to certain services like Kafka.
398
- :param pulumi.Input[builtins.str] organization_id: ID of an organization. Changing this property forces recreation of the resource.
430
+ :param pulumi.Input[builtins.int] base_port: Valid port number (1-65535) to use as a base for service port allocation.
431
+ :param pulumi.Input[builtins.str] billing_group_id: Billing group ID to assign to the project. It's required when moving projects between organizations.
432
+ :param pulumi.Input[builtins.str] ca_cert: PEM encoded certificate.
433
+ :param pulumi.Input[builtins.str] organization_id: ID of an organization. Maximum length: `36`.
399
434
  :param pulumi.Input[builtins.str] parent_id: Link a project to an [organization or organizational unit](https://aiven.io/docs/platform/concepts/orgs-units-projects) by using its ID. To set up proper dependencies please refer to this variable as a reference.
400
- :param pulumi.Input[builtins.str] project_id: Unique identifier for the project that also serves as the project name.
435
+ :param pulumi.Input[builtins.str] project_id: The name of the project. Names must be globally unique among all Aiven customers. Names must begin with a letter (a-z), and consist of letters, numbers, and dashes. It's recommended to use a random string or your organization name as a prefix or suffix. Changing this property forces recreation of the resource. Changing this property forces recreation of the resource.
401
436
  :param pulumi.Input[Sequence[pulumi.Input[Union['OrganizationProjectTagArgs', 'OrganizationProjectTagArgsDict']]]] tags: Tags are key-value pairs that allow you to categorize projects.
402
437
  :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] technical_emails: The email addresses for [project contacts](https://aiven.io/docs/platform/howto/technical-emails), who will receive important alerts and updates about this project and its services. You can also set email contacts at the service level. It's good practice to keep these up-to-date to be aware of any potential issues with your project.
403
438
  """
@@ -405,6 +440,7 @@ class OrganizationProject(pulumi.CustomResource):
405
440
 
406
441
  __props__ = _OrganizationProjectState.__new__(_OrganizationProjectState)
407
442
 
443
+ __props__.__dict__["base_port"] = base_port
408
444
  __props__.__dict__["billing_group_id"] = billing_group_id
409
445
  __props__.__dict__["ca_cert"] = ca_cert
410
446
  __props__.__dict__["organization_id"] = organization_id
@@ -412,13 +448,22 @@ class OrganizationProject(pulumi.CustomResource):
412
448
  __props__.__dict__["project_id"] = project_id
413
449
  __props__.__dict__["tags"] = tags
414
450
  __props__.__dict__["technical_emails"] = technical_emails
451
+ __props__.__dict__["timeouts"] = timeouts
415
452
  return OrganizationProject(resource_name, opts=opts, __props__=__props__)
416
453
 
454
+ @property
455
+ @pulumi.getter(name="basePort")
456
+ def base_port(self) -> pulumi.Output[builtins.int]:
457
+ """
458
+ Valid port number (1-65535) to use as a base for service port allocation.
459
+ """
460
+ return pulumi.get(self, "base_port")
461
+
417
462
  @property
418
463
  @pulumi.getter(name="billingGroupId")
419
464
  def billing_group_id(self) -> pulumi.Output[builtins.str]:
420
465
  """
421
- Billing group ID to assign to the project.
466
+ Billing group ID to assign to the project. It's required when moving projects between organizations.
422
467
  """
423
468
  return pulumi.get(self, "billing_group_id")
424
469
 
@@ -426,7 +471,7 @@ class OrganizationProject(pulumi.CustomResource):
426
471
  @pulumi.getter(name="caCert")
427
472
  def ca_cert(self) -> pulumi.Output[builtins.str]:
428
473
  """
429
- The CA certificate for the project. This is required for configuring clients that connect to certain services like Kafka.
474
+ PEM encoded certificate.
430
475
  """
431
476
  return pulumi.get(self, "ca_cert")
432
477
 
@@ -434,7 +479,7 @@ class OrganizationProject(pulumi.CustomResource):
434
479
  @pulumi.getter(name="organizationId")
435
480
  def organization_id(self) -> pulumi.Output[builtins.str]:
436
481
  """
437
- ID of an organization. Changing this property forces recreation of the resource.
482
+ ID of an organization. Maximum length: `36`.
438
483
  """
439
484
  return pulumi.get(self, "organization_id")
440
485
 
@@ -450,7 +495,7 @@ class OrganizationProject(pulumi.CustomResource):
450
495
  @pulumi.getter(name="projectId")
451
496
  def project_id(self) -> pulumi.Output[builtins.str]:
452
497
  """
453
- Unique identifier for the project that also serves as the project name.
498
+ The name of the project. Names must be globally unique among all Aiven customers. Names must begin with a letter (a-z), and consist of letters, numbers, and dashes. It's recommended to use a random string or your organization name as a prefix or suffix. Changing this property forces recreation of the resource. Changing this property forces recreation of the resource.
454
499
  """
455
500
  return pulumi.get(self, "project_id")
456
501
 
@@ -470,3 +515,8 @@ class OrganizationProject(pulumi.CustomResource):
470
515
  """
471
516
  return pulumi.get(self, "technical_emails")
472
517
 
518
+ @property
519
+ @pulumi.getter
520
+ def timeouts(self) -> pulumi.Output[Optional['outputs.OrganizationProjectTimeouts']]:
521
+ return pulumi.get(self, "timeouts")
522
+
@@ -167,6 +167,7 @@ class _OrganizationUserState:
167
167
  pulumi.set(self, "user_id", value)
168
168
 
169
169
 
170
+ @pulumi.type_token("aiven:index/organizationUser:OrganizationUser")
170
171
  class OrganizationUser(pulumi.CustomResource):
171
172
  @overload
172
173
  def __init__(__self__,
@@ -175,6 +175,7 @@ class _OrganizationUserGroupState:
175
175
  pulumi.set(self, "update_time", value)
176
176
 
177
177
 
178
+ @pulumi.type_token("aiven:index/organizationUserGroup:OrganizationUserGroup")
178
179
  class OrganizationUserGroup(pulumi.CustomResource):
179
180
  @overload
180
181
  def __init__(__self__,
@@ -168,6 +168,7 @@ class _OrganizationUserGroupMemberState:
168
168
  pulumi.set(self, "user_id", value)
169
169
 
170
170
 
171
+ @pulumi.type_token("aiven:index/organizationUserGroupMember:OrganizationUserGroupMember")
171
172
  class OrganizationUserGroupMember(pulumi.CustomResource):
172
173
  @overload
173
174
  def __init__(__self__,
@@ -190,6 +190,7 @@ class _OrganizationVpcState:
190
190
  pulumi.set(self, "update_time", value)
191
191
 
192
192
 
193
+ @pulumi.type_token("aiven:index/organizationVpc:OrganizationVpc")
193
194
  class OrganizationVpc(pulumi.CustomResource):
194
195
  @overload
195
196
  def __init__(__self__,
@@ -144,6 +144,7 @@ class _OrganizationalUnitState:
144
144
  pulumi.set(self, "update_time", value)
145
145
 
146
146
 
147
+ @pulumi.type_token("aiven:index/organizationalUnit:OrganizationalUnit")
147
148
  class OrganizationalUnit(pulumi.CustomResource):
148
149
  @overload
149
150
  def __init__(__self__,