pulumi-aiven 6.13.0a1710156545__py3-none-any.whl → 6.31.0a1736849214__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pulumi-aiven might be problematic. Click here for more details.

Files changed (168) hide show
  1. pulumi_aiven/__init__.py +127 -0
  2. pulumi_aiven/_inputs.py +32615 -13711
  3. pulumi_aiven/_utilities.py +41 -5
  4. pulumi_aiven/account.py +32 -45
  5. pulumi_aiven/account_authentication.py +24 -9
  6. pulumi_aiven/account_team.py +35 -14
  7. pulumi_aiven/account_team_member.py +48 -39
  8. pulumi_aiven/account_team_project.py +40 -27
  9. pulumi_aiven/alloydbomni.py +1335 -0
  10. pulumi_aiven/alloydbomni_database.py +347 -0
  11. pulumi_aiven/alloydbomni_user.py +433 -0
  12. pulumi_aiven/aws_privatelink.py +44 -43
  13. pulumi_aiven/aws_vpc_peering_connection.py +72 -61
  14. pulumi_aiven/azure_privatelink.py +54 -53
  15. pulumi_aiven/azure_privatelink_connection_approval.py +136 -33
  16. pulumi_aiven/azure_vpc_peering_connection.py +86 -77
  17. pulumi_aiven/billing_group.py +33 -34
  18. pulumi_aiven/cassandra.py +145 -126
  19. pulumi_aiven/cassandra_user.py +59 -58
  20. pulumi_aiven/clickhouse.py +133 -114
  21. pulumi_aiven/clickhouse_database.py +58 -62
  22. pulumi_aiven/clickhouse_grant.py +135 -134
  23. pulumi_aiven/clickhouse_role.py +36 -49
  24. pulumi_aiven/clickhouse_user.py +50 -49
  25. pulumi_aiven/config/__init__.pyi +5 -0
  26. pulumi_aiven/config/vars.py +5 -0
  27. pulumi_aiven/connection_pool.py +67 -66
  28. pulumi_aiven/dragonfly.py +1256 -0
  29. pulumi_aiven/flink.py +104 -104
  30. pulumi_aiven/flink_application.py +58 -55
  31. pulumi_aiven/flink_application_deployment.py +178 -73
  32. pulumi_aiven/flink_application_version.py +179 -96
  33. pulumi_aiven/gcp_privatelink.py +69 -42
  34. pulumi_aiven/gcp_privatelink_connection_approval.py +78 -49
  35. pulumi_aiven/gcp_vpc_peering_connection.py +49 -48
  36. pulumi_aiven/get_account.py +20 -9
  37. pulumi_aiven/get_account_authentication.py +31 -5
  38. pulumi_aiven/get_account_team.py +18 -5
  39. pulumi_aiven/get_account_team_member.py +29 -14
  40. pulumi_aiven/get_account_team_project.py +19 -6
  41. pulumi_aiven/get_alloydbomni.py +499 -0
  42. pulumi_aiven/get_alloydbomni_database.py +168 -0
  43. pulumi_aiven/get_alloydbomni_user.py +210 -0
  44. pulumi_aiven/get_aws_privatelink.py +33 -24
  45. pulumi_aiven/get_aws_vpc_peering_connection.py +56 -33
  46. pulumi_aiven/get_azure_privatelink.py +37 -26
  47. pulumi_aiven/get_azure_vpc_peering_connection.py +77 -28
  48. pulumi_aiven/get_billing_group.py +31 -8
  49. pulumi_aiven/get_cassanda.py +55 -23
  50. pulumi_aiven/get_cassandra.py +55 -23
  51. pulumi_aiven/get_cassandra_user.py +42 -30
  52. pulumi_aiven/get_clickhouse.py +55 -23
  53. pulumi_aiven/get_clickhouse_database.py +35 -26
  54. pulumi_aiven/get_clickhouse_user.py +40 -29
  55. pulumi_aiven/get_connection_pool.py +43 -30
  56. pulumi_aiven/get_dragonfly.py +499 -0
  57. pulumi_aiven/get_external_identity.py +160 -0
  58. pulumi_aiven/get_flink.py +55 -23
  59. pulumi_aiven/get_flink_application.py +44 -31
  60. pulumi_aiven/get_flink_application_version.py +55 -37
  61. pulumi_aiven/get_gcp_privatelink.py +63 -7
  62. pulumi_aiven/get_gcp_vpc_peering_connection.py +39 -28
  63. pulumi_aiven/get_grafana.py +55 -23
  64. pulumi_aiven/get_influx_db.py +41 -5
  65. pulumi_aiven/get_influxdb_database.py +18 -5
  66. pulumi_aiven/get_influxdb_user.py +21 -5
  67. pulumi_aiven/get_kafka.py +59 -25
  68. pulumi_aiven/get_kafka_acl.py +50 -37
  69. pulumi_aiven/get_kafka_connect.py +54 -36
  70. pulumi_aiven/get_kafka_connector.py +44 -28
  71. pulumi_aiven/get_kafka_mirror_maker.py +50 -32
  72. pulumi_aiven/get_kafka_schema.py +35 -23
  73. pulumi_aiven/get_kafka_schema_configuration.py +32 -21
  74. pulumi_aiven/get_kafka_schema_registry_acl.py +37 -20
  75. pulumi_aiven/get_kafka_topic.py +70 -29
  76. pulumi_aiven/get_kafka_user.py +42 -30
  77. pulumi_aiven/get_m3_aggregator.py +51 -19
  78. pulumi_aiven/get_m3_db.py +55 -23
  79. pulumi_aiven/get_m3db_user.py +38 -28
  80. pulumi_aiven/get_mirror_maker_replication_flow.py +86 -25
  81. pulumi_aiven/get_my_sql.py +50 -18
  82. pulumi_aiven/get_mysql_database.py +31 -22
  83. pulumi_aiven/get_mysql_user.py +36 -23
  84. pulumi_aiven/get_open_search.py +50 -18
  85. pulumi_aiven/get_open_search_acl_config.py +27 -19
  86. pulumi_aiven/get_open_search_acl_rule.py +37 -25
  87. pulumi_aiven/get_opensearch_security_plugin_config.py +29 -19
  88. pulumi_aiven/get_opensearch_user.py +32 -22
  89. pulumi_aiven/get_organization.py +25 -17
  90. pulumi_aiven/get_organization_application_user.py +176 -0
  91. pulumi_aiven/get_organization_user.py +18 -5
  92. pulumi_aiven/get_organization_user_group.py +48 -14
  93. pulumi_aiven/get_organization_user_list.py +121 -0
  94. pulumi_aiven/get_organizational_unit.py +26 -14
  95. pulumi_aiven/get_pg.py +55 -23
  96. pulumi_aiven/get_pg_database.py +39 -28
  97. pulumi_aiven/get_pg_user.py +44 -31
  98. pulumi_aiven/get_project.py +43 -26
  99. pulumi_aiven/get_project_user.py +27 -19
  100. pulumi_aiven/get_project_vpc.py +31 -23
  101. pulumi_aiven/get_redis.py +50 -18
  102. pulumi_aiven/get_redis_user.py +40 -26
  103. pulumi_aiven/get_service_component.py +40 -22
  104. pulumi_aiven/get_service_integration.py +163 -53
  105. pulumi_aiven/get_service_integration_endpoint.py +128 -37
  106. pulumi_aiven/get_thanos.py +499 -0
  107. pulumi_aiven/get_transit_gateway_vpc_attachment.py +35 -22
  108. pulumi_aiven/get_valkey.py +499 -0
  109. pulumi_aiven/get_valkey_user.py +218 -0
  110. pulumi_aiven/grafana.py +188 -322
  111. pulumi_aiven/influx_db.py +127 -90
  112. pulumi_aiven/influxdb_database.py +40 -55
  113. pulumi_aiven/influxdb_user.py +47 -42
  114. pulumi_aiven/kafka.py +157 -144
  115. pulumi_aiven/kafka_acl.py +64 -57
  116. pulumi_aiven/kafka_connect.py +201 -332
  117. pulumi_aiven/kafka_connector.py +67 -60
  118. pulumi_aiven/kafka_mirror_maker.py +137 -320
  119. pulumi_aiven/kafka_native_acl.py +588 -0
  120. pulumi_aiven/kafka_schema.py +63 -58
  121. pulumi_aiven/kafka_schema_configuration.py +25 -24
  122. pulumi_aiven/kafka_schema_registry_acl.py +80 -35
  123. pulumi_aiven/kafka_topic.py +184 -65
  124. pulumi_aiven/kafka_user.py +59 -58
  125. pulumi_aiven/m3_aggregator.py +174 -310
  126. pulumi_aiven/m3_db.py +190 -326
  127. pulumi_aiven/m3db_user.py +51 -50
  128. pulumi_aiven/mirror_maker_replication_flow.py +215 -55
  129. pulumi_aiven/my_sql.py +188 -324
  130. pulumi_aiven/mysql_database.py +32 -51
  131. pulumi_aiven/mysql_user.py +37 -36
  132. pulumi_aiven/open_search.py +126 -107
  133. pulumi_aiven/open_search_acl_config.py +33 -36
  134. pulumi_aiven/open_search_acl_rule.py +55 -54
  135. pulumi_aiven/opensearch_security_plugin_config.py +69 -16
  136. pulumi_aiven/opensearch_user.py +30 -29
  137. pulumi_aiven/organization.py +18 -17
  138. pulumi_aiven/organization_application_user.py +345 -0
  139. pulumi_aiven/organization_application_user_token.py +711 -0
  140. pulumi_aiven/organization_group_project.py +349 -0
  141. pulumi_aiven/organization_permission.py +421 -0
  142. pulumi_aiven/organization_user.py +25 -46
  143. pulumi_aiven/organization_user_group.py +64 -23
  144. pulumi_aiven/organization_user_group_member.py +359 -0
  145. pulumi_aiven/organizational_unit.py +41 -36
  146. pulumi_aiven/outputs.py +38355 -21458
  147. pulumi_aiven/pg.py +92 -88
  148. pulumi_aiven/pg_database.py +52 -71
  149. pulumi_aiven/pg_user.py +80 -65
  150. pulumi_aiven/project.py +111 -102
  151. pulumi_aiven/project_user.py +44 -35
  152. pulumi_aiven/project_vpc.py +58 -29
  153. pulumi_aiven/provider.py +5 -0
  154. pulumi_aiven/pulumi-plugin.json +2 -1
  155. pulumi_aiven/redis.py +161 -297
  156. pulumi_aiven/redis_user.py +58 -57
  157. pulumi_aiven/service_integration.py +511 -165
  158. pulumi_aiven/service_integration_endpoint.py +466 -158
  159. pulumi_aiven/static_ip.py +21 -16
  160. pulumi_aiven/thanos.py +1262 -0
  161. pulumi_aiven/transit_gateway_vpc_attachment.py +44 -58
  162. pulumi_aiven/valkey.py +1256 -0
  163. pulumi_aiven/valkey_user.py +606 -0
  164. {pulumi_aiven-6.13.0a1710156545.dist-info → pulumi_aiven-6.31.0a1736849214.dist-info}/METADATA +7 -6
  165. pulumi_aiven-6.31.0a1736849214.dist-info/RECORD +169 -0
  166. {pulumi_aiven-6.13.0a1710156545.dist-info → pulumi_aiven-6.31.0a1736849214.dist-info}/WHEEL +1 -1
  167. pulumi_aiven-6.13.0a1710156545.dist-info/RECORD +0 -146
  168. {pulumi_aiven-6.13.0a1710156545.dist-info → pulumi_aiven-6.31.0a1736849214.dist-info}/top_level.txt +0 -0
pulumi_aiven/cassandra.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
  from . import outputs
12
17
  from ._inputs import *
@@ -20,6 +25,7 @@ class CassandraArgs:
20
25
  project: pulumi.Input[str],
21
26
  service_name: pulumi.Input[str],
22
27
  additional_disk_space: Optional[pulumi.Input[str]] = None,
28
+ cassandra: Optional[pulumi.Input['CassandraCassandraArgs']] = None,
23
29
  cassandra_user_config: Optional[pulumi.Input['CassandraCassandraUserConfigArgs']] = None,
24
30
  cloud_name: Optional[pulumi.Input[str]] = None,
25
31
  disk_space: Optional[pulumi.Input[str]] = None,
@@ -33,20 +39,21 @@ class CassandraArgs:
33
39
  termination_protection: Optional[pulumi.Input[bool]] = None):
34
40
  """
35
41
  The set of arguments for constructing a Cassandra resource.
36
- :param pulumi.Input[str] plan: Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seem from the [Aiven pricing page](https://aiven.io/pricing).
37
- :param pulumi.Input[str] project: Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
42
+ :param pulumi.Input[str] plan: Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seen from the [Aiven pricing page](https://aiven.io/pricing).
43
+ :param pulumi.Input[str] project: The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
38
44
  :param pulumi.Input[str] service_name: Specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.
39
- :param pulumi.Input[str] additional_disk_space: Additional disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
40
- :param pulumi.Input['CassandraCassandraUserConfigArgs'] cassandra_user_config: Cassandra user configurable settings
45
+ :param pulumi.Input[str] additional_disk_space: Add [disk storage](https://aiven.io/docs/platform/howto/add-storage-space) in increments of 30 GiB to scale your service. The maximum value depends on the service type and cloud provider. Removing additional storage causes the service nodes to go through a rolling restart and there might be a short downtime for services with no HA capabilities.
46
+ :param pulumi.Input['CassandraCassandraArgs'] cassandra: Values provided by the Cassandra server.
47
+ :param pulumi.Input['CassandraCassandraUserConfigArgs'] cassandra_user_config: Cassandra user configurable settings. **Warning:** There's no way to reset advanced configuration options to default. Options that you add cannot be removed later
41
48
  :param pulumi.Input[str] cloud_name: Defines where the cloud provider and region where the service is hosted in. This can be changed freely after service is created. Changing the value will trigger a potentially lengthy migration process for the service. Format is cloud provider name (`aws`, `azure`, `do` `google`, `upcloud`, etc.), dash, and the cloud provider specific region name. These are documented on each Cloud provider's own support articles, like [here for Google](https://cloud.google.com/compute/docs/regions-zones/) and [here for AWS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html).
42
49
  :param pulumi.Input[str] disk_space: Service disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
43
50
  :param pulumi.Input[str] maintenance_window_dow: Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
44
51
  :param pulumi.Input[str] maintenance_window_time: Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
45
52
  :param pulumi.Input[str] project_vpc_id: Specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. When set, the value should be given as a reference to set up dependencies correctly and the VPC must be in the same cloud and region as the service itself. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.
46
53
  :param pulumi.Input[Sequence[pulumi.Input['CassandraServiceIntegrationArgs']]] service_integrations: Service integrations to specify when creating a service. Not applied after initial service creation
47
- :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Use static public IP addresses.
54
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Static IPs that are going to be associated with this service. Please assign a value using the 'toset' function. Once a static ip resource is in the 'assigned' state it cannot be unbound from the node again
48
55
  :param pulumi.Input[Sequence[pulumi.Input['CassandraTagArgs']]] tags: Tags are key-value pairs that allow you to categorize services.
49
- :param pulumi.Input[Sequence[pulumi.Input['CassandraTechEmailArgs']]] tech_emails: Defines the email addresses that will receive alerts about upcoming maintenance updates or warnings about service instability.
56
+ :param pulumi.Input[Sequence[pulumi.Input['CassandraTechEmailArgs']]] tech_emails: The email addresses for [service contacts](https://aiven.io/docs/platform/howto/technical-emails), who will receive important alerts and updates about this service. You can also set email contacts at the project level.
50
57
  :param pulumi.Input[bool] termination_protection: Prevents the service from being deleted. It is recommended to set this to `true` for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.
51
58
  """
52
59
  pulumi.set(__self__, "plan", plan)
@@ -54,6 +61,8 @@ class CassandraArgs:
54
61
  pulumi.set(__self__, "service_name", service_name)
55
62
  if additional_disk_space is not None:
56
63
  pulumi.set(__self__, "additional_disk_space", additional_disk_space)
64
+ if cassandra is not None:
65
+ pulumi.set(__self__, "cassandra", cassandra)
57
66
  if cassandra_user_config is not None:
58
67
  pulumi.set(__self__, "cassandra_user_config", cassandra_user_config)
59
68
  if cloud_name is not None:
@@ -84,7 +93,7 @@ class CassandraArgs:
84
93
  @pulumi.getter
85
94
  def plan(self) -> pulumi.Input[str]:
86
95
  """
87
- Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seem from the [Aiven pricing page](https://aiven.io/pricing).
96
+ Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seen from the [Aiven pricing page](https://aiven.io/pricing).
88
97
  """
89
98
  return pulumi.get(self, "plan")
90
99
 
@@ -96,7 +105,7 @@ class CassandraArgs:
96
105
  @pulumi.getter
97
106
  def project(self) -> pulumi.Input[str]:
98
107
  """
99
- Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
108
+ The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
100
109
  """
101
110
  return pulumi.get(self, "project")
102
111
 
@@ -120,7 +129,7 @@ class CassandraArgs:
120
129
  @pulumi.getter(name="additionalDiskSpace")
121
130
  def additional_disk_space(self) -> Optional[pulumi.Input[str]]:
122
131
  """
123
- Additional disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
132
+ Add [disk storage](https://aiven.io/docs/platform/howto/add-storage-space) in increments of 30 GiB to scale your service. The maximum value depends on the service type and cloud provider. Removing additional storage causes the service nodes to go through a rolling restart and there might be a short downtime for services with no HA capabilities.
124
133
  """
125
134
  return pulumi.get(self, "additional_disk_space")
126
135
 
@@ -128,11 +137,23 @@ class CassandraArgs:
128
137
  def additional_disk_space(self, value: Optional[pulumi.Input[str]]):
129
138
  pulumi.set(self, "additional_disk_space", value)
130
139
 
140
+ @property
141
+ @pulumi.getter
142
+ def cassandra(self) -> Optional[pulumi.Input['CassandraCassandraArgs']]:
143
+ """
144
+ Values provided by the Cassandra server.
145
+ """
146
+ return pulumi.get(self, "cassandra")
147
+
148
+ @cassandra.setter
149
+ def cassandra(self, value: Optional[pulumi.Input['CassandraCassandraArgs']]):
150
+ pulumi.set(self, "cassandra", value)
151
+
131
152
  @property
132
153
  @pulumi.getter(name="cassandraUserConfig")
133
154
  def cassandra_user_config(self) -> Optional[pulumi.Input['CassandraCassandraUserConfigArgs']]:
134
155
  """
135
- Cassandra user configurable settings
156
+ Cassandra user configurable settings. **Warning:** There's no way to reset advanced configuration options to default. Options that you add cannot be removed later
136
157
  """
137
158
  return pulumi.get(self, "cassandra_user_config")
138
159
 
@@ -154,13 +175,11 @@ class CassandraArgs:
154
175
 
155
176
  @property
156
177
  @pulumi.getter(name="diskSpace")
178
+ @_utilities.deprecated("""This will be removed in v5.0.0. Please use `additional_disk_space` to specify the space to be added to the default `disk_space` defined by the plan.""")
157
179
  def disk_space(self) -> Optional[pulumi.Input[str]]:
158
180
  """
159
181
  Service disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
160
182
  """
161
- warnings.warn("""This will be removed in v5.0.0. Please use `additional_disk_space` to specify the space to be added to the default `disk_space` defined by the plan.""", DeprecationWarning)
162
- pulumi.log.warn("""disk_space is deprecated: This will be removed in v5.0.0. Please use `additional_disk_space` to specify the space to be added to the default `disk_space` defined by the plan.""")
163
-
164
183
  return pulumi.get(self, "disk_space")
165
184
 
166
185
  @disk_space.setter
@@ -219,7 +238,7 @@ class CassandraArgs:
219
238
  @pulumi.getter(name="staticIps")
220
239
  def static_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
221
240
  """
222
- Use static public IP addresses.
241
+ Static IPs that are going to be associated with this service. Please assign a value using the 'toset' function. Once a static ip resource is in the 'assigned' state it cannot be unbound from the node again
223
242
  """
224
243
  return pulumi.get(self, "static_ips")
225
244
 
@@ -243,7 +262,7 @@ class CassandraArgs:
243
262
  @pulumi.getter(name="techEmails")
244
263
  def tech_emails(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['CassandraTechEmailArgs']]]]:
245
264
  """
246
- Defines the email addresses that will receive alerts about upcoming maintenance updates or warnings about service instability.
265
+ The email addresses for [service contacts](https://aiven.io/docs/platform/howto/technical-emails), who will receive important alerts and updates about this service. You can also set email contacts at the project level.
247
266
  """
248
267
  return pulumi.get(self, "tech_emails")
249
268
 
@@ -268,8 +287,8 @@ class CassandraArgs:
268
287
  class _CassandraState:
269
288
  def __init__(__self__, *,
270
289
  additional_disk_space: Optional[pulumi.Input[str]] = None,
290
+ cassandra: Optional[pulumi.Input['CassandraCassandraArgs']] = None,
271
291
  cassandra_user_config: Optional[pulumi.Input['CassandraCassandraUserConfigArgs']] = None,
272
- cassandras: Optional[pulumi.Input[Sequence[pulumi.Input['CassandraCassandraArgs']]]] = None,
273
292
  cloud_name: Optional[pulumi.Input[str]] = None,
274
293
  components: Optional[pulumi.Input[Sequence[pulumi.Input['CassandraComponentArgs']]]] = None,
275
294
  disk_space: Optional[pulumi.Input[str]] = None,
@@ -297,9 +316,9 @@ class _CassandraState:
297
316
  termination_protection: Optional[pulumi.Input[bool]] = None):
298
317
  """
299
318
  Input properties used for looking up and filtering Cassandra resources.
300
- :param pulumi.Input[str] additional_disk_space: Additional disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
301
- :param pulumi.Input['CassandraCassandraUserConfigArgs'] cassandra_user_config: Cassandra user configurable settings
302
- :param pulumi.Input[Sequence[pulumi.Input['CassandraCassandraArgs']]] cassandras: cassandra configuration values
319
+ :param pulumi.Input[str] additional_disk_space: Add [disk storage](https://aiven.io/docs/platform/howto/add-storage-space) in increments of 30 GiB to scale your service. The maximum value depends on the service type and cloud provider. Removing additional storage causes the service nodes to go through a rolling restart and there might be a short downtime for services with no HA capabilities.
320
+ :param pulumi.Input['CassandraCassandraArgs'] cassandra: Values provided by the Cassandra server.
321
+ :param pulumi.Input['CassandraCassandraUserConfigArgs'] cassandra_user_config: Cassandra user configurable settings. **Warning:** There's no way to reset advanced configuration options to default. Options that you add cannot be removed later
303
322
  :param pulumi.Input[str] cloud_name: Defines where the cloud provider and region where the service is hosted in. This can be changed freely after service is created. Changing the value will trigger a potentially lengthy migration process for the service. Format is cloud provider name (`aws`, `azure`, `do` `google`, `upcloud`, etc.), dash, and the cloud provider specific region name. These are documented on each Cloud provider's own support articles, like [here for Google](https://cloud.google.com/compute/docs/regions-zones/) and [here for AWS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html).
304
323
  :param pulumi.Input[Sequence[pulumi.Input['CassandraComponentArgs']]] components: Service component information objects
305
324
  :param pulumi.Input[str] disk_space: Service disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
@@ -309,8 +328,8 @@ class _CassandraState:
309
328
  :param pulumi.Input[str] disk_space_used: Disk space that service is currently using
310
329
  :param pulumi.Input[str] maintenance_window_dow: Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
311
330
  :param pulumi.Input[str] maintenance_window_time: Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
312
- :param pulumi.Input[str] plan: Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seem from the [Aiven pricing page](https://aiven.io/pricing).
313
- :param pulumi.Input[str] project: Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
331
+ :param pulumi.Input[str] plan: Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seen from the [Aiven pricing page](https://aiven.io/pricing).
332
+ :param pulumi.Input[str] project: The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
314
333
  :param pulumi.Input[str] project_vpc_id: Specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. When set, the value should be given as a reference to set up dependencies correctly and the VPC must be in the same cloud and region as the service itself. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.
315
334
  :param pulumi.Input[str] service_host: The hostname of the service.
316
335
  :param pulumi.Input[Sequence[pulumi.Input['CassandraServiceIntegrationArgs']]] service_integrations: Service integrations to specify when creating a service. Not applied after initial service creation
@@ -321,17 +340,17 @@ class _CassandraState:
321
340
  :param pulumi.Input[str] service_uri: URI for connecting to the service. Service specific info is under "kafka", "pg", etc.
322
341
  :param pulumi.Input[str] service_username: Username used for connecting to the service, if applicable
323
342
  :param pulumi.Input[str] state: Service state. One of `POWEROFF`, `REBALANCING`, `REBUILDING` or `RUNNING`
324
- :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Use static public IP addresses.
343
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Static IPs that are going to be associated with this service. Please assign a value using the 'toset' function. Once a static ip resource is in the 'assigned' state it cannot be unbound from the node again
325
344
  :param pulumi.Input[Sequence[pulumi.Input['CassandraTagArgs']]] tags: Tags are key-value pairs that allow you to categorize services.
326
- :param pulumi.Input[Sequence[pulumi.Input['CassandraTechEmailArgs']]] tech_emails: Defines the email addresses that will receive alerts about upcoming maintenance updates or warnings about service instability.
345
+ :param pulumi.Input[Sequence[pulumi.Input['CassandraTechEmailArgs']]] tech_emails: The email addresses for [service contacts](https://aiven.io/docs/platform/howto/technical-emails), who will receive important alerts and updates about this service. You can also set email contacts at the project level.
327
346
  :param pulumi.Input[bool] termination_protection: Prevents the service from being deleted. It is recommended to set this to `true` for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.
328
347
  """
329
348
  if additional_disk_space is not None:
330
349
  pulumi.set(__self__, "additional_disk_space", additional_disk_space)
350
+ if cassandra is not None:
351
+ pulumi.set(__self__, "cassandra", cassandra)
331
352
  if cassandra_user_config is not None:
332
353
  pulumi.set(__self__, "cassandra_user_config", cassandra_user_config)
333
- if cassandras is not None:
334
- pulumi.set(__self__, "cassandras", cassandras)
335
354
  if cloud_name is not None:
336
355
  pulumi.set(__self__, "cloud_name", cloud_name)
337
356
  if components is not None:
@@ -347,6 +366,9 @@ class _CassandraState:
347
366
  pulumi.set(__self__, "disk_space_default", disk_space_default)
348
367
  if disk_space_step is not None:
349
368
  pulumi.set(__self__, "disk_space_step", disk_space_step)
369
+ if disk_space_used is not None:
370
+ warnings.warn("""This will be removed in v5.0.0. Please use `additional_disk_space` to specify the space to be added to the default `disk_space` defined by the plan.""", DeprecationWarning)
371
+ pulumi.log.warn("""disk_space_used is deprecated: This will be removed in v5.0.0. Please use `additional_disk_space` to specify the space to be added to the default `disk_space` defined by the plan.""")
350
372
  if disk_space_used is not None:
351
373
  pulumi.set(__self__, "disk_space_used", disk_space_used)
352
374
  if maintenance_window_dow is not None:
@@ -390,7 +412,7 @@ class _CassandraState:
390
412
  @pulumi.getter(name="additionalDiskSpace")
391
413
  def additional_disk_space(self) -> Optional[pulumi.Input[str]]:
392
414
  """
393
- Additional disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
415
+ Add [disk storage](https://aiven.io/docs/platform/howto/add-storage-space) in increments of 30 GiB to scale your service. The maximum value depends on the service type and cloud provider. Removing additional storage causes the service nodes to go through a rolling restart and there might be a short downtime for services with no HA capabilities.
394
416
  """
395
417
  return pulumi.get(self, "additional_disk_space")
396
418
 
@@ -398,11 +420,23 @@ class _CassandraState:
398
420
  def additional_disk_space(self, value: Optional[pulumi.Input[str]]):
399
421
  pulumi.set(self, "additional_disk_space", value)
400
422
 
423
+ @property
424
+ @pulumi.getter
425
+ def cassandra(self) -> Optional[pulumi.Input['CassandraCassandraArgs']]:
426
+ """
427
+ Values provided by the Cassandra server.
428
+ """
429
+ return pulumi.get(self, "cassandra")
430
+
431
+ @cassandra.setter
432
+ def cassandra(self, value: Optional[pulumi.Input['CassandraCassandraArgs']]):
433
+ pulumi.set(self, "cassandra", value)
434
+
401
435
  @property
402
436
  @pulumi.getter(name="cassandraUserConfig")
403
437
  def cassandra_user_config(self) -> Optional[pulumi.Input['CassandraCassandraUserConfigArgs']]:
404
438
  """
405
- Cassandra user configurable settings
439
+ Cassandra user configurable settings. **Warning:** There's no way to reset advanced configuration options to default. Options that you add cannot be removed later
406
440
  """
407
441
  return pulumi.get(self, "cassandra_user_config")
408
442
 
@@ -410,18 +444,6 @@ class _CassandraState:
410
444
  def cassandra_user_config(self, value: Optional[pulumi.Input['CassandraCassandraUserConfigArgs']]):
411
445
  pulumi.set(self, "cassandra_user_config", value)
412
446
 
413
- @property
414
- @pulumi.getter
415
- def cassandras(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['CassandraCassandraArgs']]]]:
416
- """
417
- cassandra configuration values
418
- """
419
- return pulumi.get(self, "cassandras")
420
-
421
- @cassandras.setter
422
- def cassandras(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['CassandraCassandraArgs']]]]):
423
- pulumi.set(self, "cassandras", value)
424
-
425
447
  @property
426
448
  @pulumi.getter(name="cloudName")
427
449
  def cloud_name(self) -> Optional[pulumi.Input[str]]:
@@ -448,13 +470,11 @@ class _CassandraState:
448
470
 
449
471
  @property
450
472
  @pulumi.getter(name="diskSpace")
473
+ @_utilities.deprecated("""This will be removed in v5.0.0. Please use `additional_disk_space` to specify the space to be added to the default `disk_space` defined by the plan.""")
451
474
  def disk_space(self) -> Optional[pulumi.Input[str]]:
452
475
  """
453
476
  Service disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
454
477
  """
455
- warnings.warn("""This will be removed in v5.0.0. Please use `additional_disk_space` to specify the space to be added to the default `disk_space` defined by the plan.""", DeprecationWarning)
456
- pulumi.log.warn("""disk_space is deprecated: This will be removed in v5.0.0. Please use `additional_disk_space` to specify the space to be added to the default `disk_space` defined by the plan.""")
457
-
458
478
  return pulumi.get(self, "disk_space")
459
479
 
460
480
  @disk_space.setter
@@ -499,6 +519,7 @@ class _CassandraState:
499
519
 
500
520
  @property
501
521
  @pulumi.getter(name="diskSpaceUsed")
522
+ @_utilities.deprecated("""This will be removed in v5.0.0. Please use `additional_disk_space` to specify the space to be added to the default `disk_space` defined by the plan.""")
502
523
  def disk_space_used(self) -> Optional[pulumi.Input[str]]:
503
524
  """
504
525
  Disk space that service is currently using
@@ -537,7 +558,7 @@ class _CassandraState:
537
558
  @pulumi.getter
538
559
  def plan(self) -> Optional[pulumi.Input[str]]:
539
560
  """
540
- Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seem from the [Aiven pricing page](https://aiven.io/pricing).
561
+ Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seen from the [Aiven pricing page](https://aiven.io/pricing).
541
562
  """
542
563
  return pulumi.get(self, "plan")
543
564
 
@@ -549,7 +570,7 @@ class _CassandraState:
549
570
  @pulumi.getter
550
571
  def project(self) -> Optional[pulumi.Input[str]]:
551
572
  """
552
- Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
573
+ The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
553
574
  """
554
575
  return pulumi.get(self, "project")
555
576
 
@@ -681,7 +702,7 @@ class _CassandraState:
681
702
  @pulumi.getter(name="staticIps")
682
703
  def static_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
683
704
  """
684
- Use static public IP addresses.
705
+ Static IPs that are going to be associated with this service. Please assign a value using the 'toset' function. Once a static ip resource is in the 'assigned' state it cannot be unbound from the node again
685
706
  """
686
707
  return pulumi.get(self, "static_ips")
687
708
 
@@ -705,7 +726,7 @@ class _CassandraState:
705
726
  @pulumi.getter(name="techEmails")
706
727
  def tech_emails(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['CassandraTechEmailArgs']]]]:
707
728
  """
708
- Defines the email addresses that will receive alerts about upcoming maintenance updates or warnings about service instability.
729
+ The email addresses for [service contacts](https://aiven.io/docs/platform/howto/technical-emails), who will receive important alerts and updates about this service. You can also set email contacts at the project level.
709
730
  """
710
731
  return pulumi.get(self, "tech_emails")
711
732
 
@@ -732,7 +753,8 @@ class Cassandra(pulumi.CustomResource):
732
753
  resource_name: str,
733
754
  opts: Optional[pulumi.ResourceOptions] = None,
734
755
  additional_disk_space: Optional[pulumi.Input[str]] = None,
735
- cassandra_user_config: Optional[pulumi.Input[pulumi.InputType['CassandraCassandraUserConfigArgs']]] = None,
756
+ cassandra: Optional[pulumi.Input[Union['CassandraCassandraArgs', 'CassandraCassandraArgsDict']]] = None,
757
+ cassandra_user_config: Optional[pulumi.Input[Union['CassandraCassandraUserConfigArgs', 'CassandraCassandraUserConfigArgsDict']]] = None,
736
758
  cloud_name: Optional[pulumi.Input[str]] = None,
737
759
  disk_space: Optional[pulumi.Input[str]] = None,
738
760
  maintenance_window_dow: Optional[pulumi.Input[str]] = None,
@@ -740,61 +762,60 @@ class Cassandra(pulumi.CustomResource):
740
762
  plan: Optional[pulumi.Input[str]] = None,
741
763
  project: Optional[pulumi.Input[str]] = None,
742
764
  project_vpc_id: Optional[pulumi.Input[str]] = None,
743
- service_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraServiceIntegrationArgs']]]]] = None,
765
+ service_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['CassandraServiceIntegrationArgs', 'CassandraServiceIntegrationArgsDict']]]]] = None,
744
766
  service_name: Optional[pulumi.Input[str]] = None,
745
767
  static_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
746
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraTagArgs']]]]] = None,
747
- tech_emails: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraTechEmailArgs']]]]] = None,
768
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['CassandraTagArgs', 'CassandraTagArgsDict']]]]] = None,
769
+ tech_emails: Optional[pulumi.Input[Sequence[pulumi.Input[Union['CassandraTechEmailArgs', 'CassandraTechEmailArgsDict']]]]] = None,
748
770
  termination_protection: Optional[pulumi.Input[bool]] = None,
749
771
  __props__=None):
750
772
  """
751
- The Cassandra resource allows the creation and management of Aiven Cassandra services.
773
+ Creates and manages an [Aiven for Apache Cassandra®](https://aiven.io/docs/products/cassandra) service.
752
774
 
753
775
  ## Example Usage
754
776
 
755
- <!--Start PulumiCodeChooser -->
756
777
  ```python
757
778
  import pulumi
758
779
  import pulumi_aiven as aiven
759
780
 
760
- bar = aiven.Cassandra("bar",
761
- project=data["aiven_project"]["foo"]["project"],
781
+ example_cassandra = aiven.Cassandra("example_cassandra",
782
+ project=example_project["project"],
762
783
  cloud_name="google-europe-west1",
763
784
  plan="startup-4",
764
- service_name="test-service-name",
785
+ service_name="example-cassandra-service",
765
786
  maintenance_window_dow="monday",
766
787
  maintenance_window_time="10:00:00",
767
- cassandra_user_config=aiven.CassandraCassandraUserConfigArgs(
768
- migrate_sstableloader=True,
769
- public_access=aiven.CassandraCassandraUserConfigPublicAccessArgs(
770
- prometheus=True,
771
- ),
772
- ))
788
+ cassandra_user_config={
789
+ "migrate_sstableloader": True,
790
+ "public_access": {
791
+ "prometheus": True,
792
+ },
793
+ })
773
794
  ```
774
- <!--End PulumiCodeChooser -->
775
795
 
776
796
  ## Import
777
797
 
778
798
  ```sh
779
- $ pulumi import aiven:index/cassandra:Cassandra bar project/service_name
799
+ $ pulumi import aiven:index/cassandra:Cassandra example_cassandra PROJECT/SERVICE_NAME
780
800
  ```
781
801
 
782
802
  :param str resource_name: The name of the resource.
783
803
  :param pulumi.ResourceOptions opts: Options for the resource.
784
- :param pulumi.Input[str] additional_disk_space: Additional disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
785
- :param pulumi.Input[pulumi.InputType['CassandraCassandraUserConfigArgs']] cassandra_user_config: Cassandra user configurable settings
804
+ :param pulumi.Input[str] additional_disk_space: Add [disk storage](https://aiven.io/docs/platform/howto/add-storage-space) in increments of 30 GiB to scale your service. The maximum value depends on the service type and cloud provider. Removing additional storage causes the service nodes to go through a rolling restart and there might be a short downtime for services with no HA capabilities.
805
+ :param pulumi.Input[Union['CassandraCassandraArgs', 'CassandraCassandraArgsDict']] cassandra: Values provided by the Cassandra server.
806
+ :param pulumi.Input[Union['CassandraCassandraUserConfigArgs', 'CassandraCassandraUserConfigArgsDict']] cassandra_user_config: Cassandra user configurable settings. **Warning:** There's no way to reset advanced configuration options to default. Options that you add cannot be removed later
786
807
  :param pulumi.Input[str] cloud_name: Defines where the cloud provider and region where the service is hosted in. This can be changed freely after service is created. Changing the value will trigger a potentially lengthy migration process for the service. Format is cloud provider name (`aws`, `azure`, `do` `google`, `upcloud`, etc.), dash, and the cloud provider specific region name. These are documented on each Cloud provider's own support articles, like [here for Google](https://cloud.google.com/compute/docs/regions-zones/) and [here for AWS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html).
787
808
  :param pulumi.Input[str] disk_space: Service disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
788
809
  :param pulumi.Input[str] maintenance_window_dow: Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
789
810
  :param pulumi.Input[str] maintenance_window_time: Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
790
- :param pulumi.Input[str] plan: Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seem from the [Aiven pricing page](https://aiven.io/pricing).
791
- :param pulumi.Input[str] project: Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
811
+ :param pulumi.Input[str] plan: Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seen from the [Aiven pricing page](https://aiven.io/pricing).
812
+ :param pulumi.Input[str] project: The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
792
813
  :param pulumi.Input[str] project_vpc_id: Specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. When set, the value should be given as a reference to set up dependencies correctly and the VPC must be in the same cloud and region as the service itself. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.
793
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraServiceIntegrationArgs']]]] service_integrations: Service integrations to specify when creating a service. Not applied after initial service creation
814
+ :param pulumi.Input[Sequence[pulumi.Input[Union['CassandraServiceIntegrationArgs', 'CassandraServiceIntegrationArgsDict']]]] service_integrations: Service integrations to specify when creating a service. Not applied after initial service creation
794
815
  :param pulumi.Input[str] service_name: Specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.
795
- :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Use static public IP addresses.
796
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraTagArgs']]]] tags: Tags are key-value pairs that allow you to categorize services.
797
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraTechEmailArgs']]]] tech_emails: Defines the email addresses that will receive alerts about upcoming maintenance updates or warnings about service instability.
816
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Static IPs that are going to be associated with this service. Please assign a value using the 'toset' function. Once a static ip resource is in the 'assigned' state it cannot be unbound from the node again
817
+ :param pulumi.Input[Sequence[pulumi.Input[Union['CassandraTagArgs', 'CassandraTagArgsDict']]]] tags: Tags are key-value pairs that allow you to categorize services.
818
+ :param pulumi.Input[Sequence[pulumi.Input[Union['CassandraTechEmailArgs', 'CassandraTechEmailArgsDict']]]] tech_emails: The email addresses for [service contacts](https://aiven.io/docs/platform/howto/technical-emails), who will receive important alerts and updates about this service. You can also set email contacts at the project level.
798
819
  :param pulumi.Input[bool] termination_protection: Prevents the service from being deleted. It is recommended to set this to `true` for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.
799
820
  """
800
821
  ...
@@ -804,35 +825,33 @@ class Cassandra(pulumi.CustomResource):
804
825
  args: CassandraArgs,
805
826
  opts: Optional[pulumi.ResourceOptions] = None):
806
827
  """
807
- The Cassandra resource allows the creation and management of Aiven Cassandra services.
828
+ Creates and manages an [Aiven for Apache Cassandra®](https://aiven.io/docs/products/cassandra) service.
808
829
 
809
830
  ## Example Usage
810
831
 
811
- <!--Start PulumiCodeChooser -->
812
832
  ```python
813
833
  import pulumi
814
834
  import pulumi_aiven as aiven
815
835
 
816
- bar = aiven.Cassandra("bar",
817
- project=data["aiven_project"]["foo"]["project"],
836
+ example_cassandra = aiven.Cassandra("example_cassandra",
837
+ project=example_project["project"],
818
838
  cloud_name="google-europe-west1",
819
839
  plan="startup-4",
820
- service_name="test-service-name",
840
+ service_name="example-cassandra-service",
821
841
  maintenance_window_dow="monday",
822
842
  maintenance_window_time="10:00:00",
823
- cassandra_user_config=aiven.CassandraCassandraUserConfigArgs(
824
- migrate_sstableloader=True,
825
- public_access=aiven.CassandraCassandraUserConfigPublicAccessArgs(
826
- prometheus=True,
827
- ),
828
- ))
843
+ cassandra_user_config={
844
+ "migrate_sstableloader": True,
845
+ "public_access": {
846
+ "prometheus": True,
847
+ },
848
+ })
829
849
  ```
830
- <!--End PulumiCodeChooser -->
831
850
 
832
851
  ## Import
833
852
 
834
853
  ```sh
835
- $ pulumi import aiven:index/cassandra:Cassandra bar project/service_name
854
+ $ pulumi import aiven:index/cassandra:Cassandra example_cassandra PROJECT/SERVICE_NAME
836
855
  ```
837
856
 
838
857
  :param str resource_name: The name of the resource.
@@ -851,7 +870,8 @@ class Cassandra(pulumi.CustomResource):
851
870
  resource_name: str,
852
871
  opts: Optional[pulumi.ResourceOptions] = None,
853
872
  additional_disk_space: Optional[pulumi.Input[str]] = None,
854
- cassandra_user_config: Optional[pulumi.Input[pulumi.InputType['CassandraCassandraUserConfigArgs']]] = None,
873
+ cassandra: Optional[pulumi.Input[Union['CassandraCassandraArgs', 'CassandraCassandraArgsDict']]] = None,
874
+ cassandra_user_config: Optional[pulumi.Input[Union['CassandraCassandraUserConfigArgs', 'CassandraCassandraUserConfigArgsDict']]] = None,
855
875
  cloud_name: Optional[pulumi.Input[str]] = None,
856
876
  disk_space: Optional[pulumi.Input[str]] = None,
857
877
  maintenance_window_dow: Optional[pulumi.Input[str]] = None,
@@ -859,11 +879,11 @@ class Cassandra(pulumi.CustomResource):
859
879
  plan: Optional[pulumi.Input[str]] = None,
860
880
  project: Optional[pulumi.Input[str]] = None,
861
881
  project_vpc_id: Optional[pulumi.Input[str]] = None,
862
- service_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraServiceIntegrationArgs']]]]] = None,
882
+ service_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['CassandraServiceIntegrationArgs', 'CassandraServiceIntegrationArgsDict']]]]] = None,
863
883
  service_name: Optional[pulumi.Input[str]] = None,
864
884
  static_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
865
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraTagArgs']]]]] = None,
866
- tech_emails: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraTechEmailArgs']]]]] = None,
885
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['CassandraTagArgs', 'CassandraTagArgsDict']]]]] = None,
886
+ tech_emails: Optional[pulumi.Input[Sequence[pulumi.Input[Union['CassandraTechEmailArgs', 'CassandraTechEmailArgsDict']]]]] = None,
867
887
  termination_protection: Optional[pulumi.Input[bool]] = None,
868
888
  __props__=None):
869
889
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -875,6 +895,7 @@ class Cassandra(pulumi.CustomResource):
875
895
  __props__ = CassandraArgs.__new__(CassandraArgs)
876
896
 
877
897
  __props__.__dict__["additional_disk_space"] = additional_disk_space
898
+ __props__.__dict__["cassandra"] = None if cassandra is None else pulumi.Output.secret(cassandra)
878
899
  __props__.__dict__["cassandra_user_config"] = cassandra_user_config
879
900
  __props__.__dict__["cloud_name"] = cloud_name
880
901
  __props__.__dict__["disk_space"] = disk_space
@@ -895,7 +916,6 @@ class Cassandra(pulumi.CustomResource):
895
916
  __props__.__dict__["tags"] = tags
896
917
  __props__.__dict__["tech_emails"] = tech_emails
897
918
  __props__.__dict__["termination_protection"] = termination_protection
898
- __props__.__dict__["cassandras"] = None
899
919
  __props__.__dict__["components"] = None
900
920
  __props__.__dict__["disk_space_cap"] = None
901
921
  __props__.__dict__["disk_space_default"] = None
@@ -908,7 +928,7 @@ class Cassandra(pulumi.CustomResource):
908
928
  __props__.__dict__["service_uri"] = None
909
929
  __props__.__dict__["service_username"] = None
910
930
  __props__.__dict__["state"] = None
911
- secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["servicePassword", "serviceUri"])
931
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["cassandra", "servicePassword", "serviceUri"])
912
932
  opts = pulumi.ResourceOptions.merge(opts, secret_opts)
913
933
  super(Cassandra, __self__).__init__(
914
934
  'aiven:index/cassandra:Cassandra',
@@ -921,10 +941,10 @@ class Cassandra(pulumi.CustomResource):
921
941
  id: pulumi.Input[str],
922
942
  opts: Optional[pulumi.ResourceOptions] = None,
923
943
  additional_disk_space: Optional[pulumi.Input[str]] = None,
924
- cassandra_user_config: Optional[pulumi.Input[pulumi.InputType['CassandraCassandraUserConfigArgs']]] = None,
925
- cassandras: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraCassandraArgs']]]]] = None,
944
+ cassandra: Optional[pulumi.Input[Union['CassandraCassandraArgs', 'CassandraCassandraArgsDict']]] = None,
945
+ cassandra_user_config: Optional[pulumi.Input[Union['CassandraCassandraUserConfigArgs', 'CassandraCassandraUserConfigArgsDict']]] = None,
926
946
  cloud_name: Optional[pulumi.Input[str]] = None,
927
- components: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraComponentArgs']]]]] = None,
947
+ components: Optional[pulumi.Input[Sequence[pulumi.Input[Union['CassandraComponentArgs', 'CassandraComponentArgsDict']]]]] = None,
928
948
  disk_space: Optional[pulumi.Input[str]] = None,
929
949
  disk_space_cap: Optional[pulumi.Input[str]] = None,
930
950
  disk_space_default: Optional[pulumi.Input[str]] = None,
@@ -936,7 +956,7 @@ class Cassandra(pulumi.CustomResource):
936
956
  project: Optional[pulumi.Input[str]] = None,
937
957
  project_vpc_id: Optional[pulumi.Input[str]] = None,
938
958
  service_host: Optional[pulumi.Input[str]] = None,
939
- service_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraServiceIntegrationArgs']]]]] = None,
959
+ service_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['CassandraServiceIntegrationArgs', 'CassandraServiceIntegrationArgsDict']]]]] = None,
940
960
  service_name: Optional[pulumi.Input[str]] = None,
941
961
  service_password: Optional[pulumi.Input[str]] = None,
942
962
  service_port: Optional[pulumi.Input[int]] = None,
@@ -945,8 +965,8 @@ class Cassandra(pulumi.CustomResource):
945
965
  service_username: Optional[pulumi.Input[str]] = None,
946
966
  state: Optional[pulumi.Input[str]] = None,
947
967
  static_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
948
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraTagArgs']]]]] = None,
949
- tech_emails: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraTechEmailArgs']]]]] = None,
968
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['CassandraTagArgs', 'CassandraTagArgsDict']]]]] = None,
969
+ tech_emails: Optional[pulumi.Input[Sequence[pulumi.Input[Union['CassandraTechEmailArgs', 'CassandraTechEmailArgsDict']]]]] = None,
950
970
  termination_protection: Optional[pulumi.Input[bool]] = None) -> 'Cassandra':
951
971
  """
952
972
  Get an existing Cassandra resource's state with the given name, id, and optional extra
@@ -955,11 +975,11 @@ class Cassandra(pulumi.CustomResource):
955
975
  :param str resource_name: The unique name of the resulting resource.
956
976
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
957
977
  :param pulumi.ResourceOptions opts: Options for the resource.
958
- :param pulumi.Input[str] additional_disk_space: Additional disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
959
- :param pulumi.Input[pulumi.InputType['CassandraCassandraUserConfigArgs']] cassandra_user_config: Cassandra user configurable settings
960
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraCassandraArgs']]]] cassandras: cassandra configuration values
978
+ :param pulumi.Input[str] additional_disk_space: Add [disk storage](https://aiven.io/docs/platform/howto/add-storage-space) in increments of 30 GiB to scale your service. The maximum value depends on the service type and cloud provider. Removing additional storage causes the service nodes to go through a rolling restart and there might be a short downtime for services with no HA capabilities.
979
+ :param pulumi.Input[Union['CassandraCassandraArgs', 'CassandraCassandraArgsDict']] cassandra: Values provided by the Cassandra server.
980
+ :param pulumi.Input[Union['CassandraCassandraUserConfigArgs', 'CassandraCassandraUserConfigArgsDict']] cassandra_user_config: Cassandra user configurable settings. **Warning:** There's no way to reset advanced configuration options to default. Options that you add cannot be removed later
961
981
  :param pulumi.Input[str] cloud_name: Defines where the cloud provider and region where the service is hosted in. This can be changed freely after service is created. Changing the value will trigger a potentially lengthy migration process for the service. Format is cloud provider name (`aws`, `azure`, `do` `google`, `upcloud`, etc.), dash, and the cloud provider specific region name. These are documented on each Cloud provider's own support articles, like [here for Google](https://cloud.google.com/compute/docs/regions-zones/) and [here for AWS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html).
962
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraComponentArgs']]]] components: Service component information objects
982
+ :param pulumi.Input[Sequence[pulumi.Input[Union['CassandraComponentArgs', 'CassandraComponentArgsDict']]]] components: Service component information objects
963
983
  :param pulumi.Input[str] disk_space: Service disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
964
984
  :param pulumi.Input[str] disk_space_cap: The maximum disk space of the service, possible values depend on the service type, the cloud provider and the project.
965
985
  :param pulumi.Input[str] disk_space_default: The default disk space of the service, possible values depend on the service type, the cloud provider and the project. Its also the minimum value for `disk_space`
@@ -967,11 +987,11 @@ class Cassandra(pulumi.CustomResource):
967
987
  :param pulumi.Input[str] disk_space_used: Disk space that service is currently using
968
988
  :param pulumi.Input[str] maintenance_window_dow: Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
969
989
  :param pulumi.Input[str] maintenance_window_time: Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
970
- :param pulumi.Input[str] plan: Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seem from the [Aiven pricing page](https://aiven.io/pricing).
971
- :param pulumi.Input[str] project: Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
990
+ :param pulumi.Input[str] plan: Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seen from the [Aiven pricing page](https://aiven.io/pricing).
991
+ :param pulumi.Input[str] project: The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
972
992
  :param pulumi.Input[str] project_vpc_id: Specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. When set, the value should be given as a reference to set up dependencies correctly and the VPC must be in the same cloud and region as the service itself. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.
973
993
  :param pulumi.Input[str] service_host: The hostname of the service.
974
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraServiceIntegrationArgs']]]] service_integrations: Service integrations to specify when creating a service. Not applied after initial service creation
994
+ :param pulumi.Input[Sequence[pulumi.Input[Union['CassandraServiceIntegrationArgs', 'CassandraServiceIntegrationArgsDict']]]] service_integrations: Service integrations to specify when creating a service. Not applied after initial service creation
975
995
  :param pulumi.Input[str] service_name: Specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.
976
996
  :param pulumi.Input[str] service_password: Password used for connecting to the service, if applicable
977
997
  :param pulumi.Input[int] service_port: The port of the service
@@ -979,9 +999,9 @@ class Cassandra(pulumi.CustomResource):
979
999
  :param pulumi.Input[str] service_uri: URI for connecting to the service. Service specific info is under "kafka", "pg", etc.
980
1000
  :param pulumi.Input[str] service_username: Username used for connecting to the service, if applicable
981
1001
  :param pulumi.Input[str] state: Service state. One of `POWEROFF`, `REBALANCING`, `REBUILDING` or `RUNNING`
982
- :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Use static public IP addresses.
983
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraTagArgs']]]] tags: Tags are key-value pairs that allow you to categorize services.
984
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraTechEmailArgs']]]] tech_emails: Defines the email addresses that will receive alerts about upcoming maintenance updates or warnings about service instability.
1002
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Static IPs that are going to be associated with this service. Please assign a value using the 'toset' function. Once a static ip resource is in the 'assigned' state it cannot be unbound from the node again
1003
+ :param pulumi.Input[Sequence[pulumi.Input[Union['CassandraTagArgs', 'CassandraTagArgsDict']]]] tags: Tags are key-value pairs that allow you to categorize services.
1004
+ :param pulumi.Input[Sequence[pulumi.Input[Union['CassandraTechEmailArgs', 'CassandraTechEmailArgsDict']]]] tech_emails: The email addresses for [service contacts](https://aiven.io/docs/platform/howto/technical-emails), who will receive important alerts and updates about this service. You can also set email contacts at the project level.
985
1005
  :param pulumi.Input[bool] termination_protection: Prevents the service from being deleted. It is recommended to set this to `true` for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.
986
1006
  """
987
1007
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
@@ -989,8 +1009,8 @@ class Cassandra(pulumi.CustomResource):
989
1009
  __props__ = _CassandraState.__new__(_CassandraState)
990
1010
 
991
1011
  __props__.__dict__["additional_disk_space"] = additional_disk_space
1012
+ __props__.__dict__["cassandra"] = cassandra
992
1013
  __props__.__dict__["cassandra_user_config"] = cassandra_user_config
993
- __props__.__dict__["cassandras"] = cassandras
994
1014
  __props__.__dict__["cloud_name"] = cloud_name
995
1015
  __props__.__dict__["components"] = components
996
1016
  __props__.__dict__["disk_space"] = disk_space
@@ -1020,27 +1040,27 @@ class Cassandra(pulumi.CustomResource):
1020
1040
 
1021
1041
  @property
1022
1042
  @pulumi.getter(name="additionalDiskSpace")
1023
- def additional_disk_space(self) -> pulumi.Output[Optional[str]]:
1043
+ def additional_disk_space(self) -> pulumi.Output[str]:
1024
1044
  """
1025
- Additional disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
1045
+ Add [disk storage](https://aiven.io/docs/platform/howto/add-storage-space) in increments of 30 GiB to scale your service. The maximum value depends on the service type and cloud provider. Removing additional storage causes the service nodes to go through a rolling restart and there might be a short downtime for services with no HA capabilities.
1026
1046
  """
1027
1047
  return pulumi.get(self, "additional_disk_space")
1028
1048
 
1029
1049
  @property
1030
- @pulumi.getter(name="cassandraUserConfig")
1031
- def cassandra_user_config(self) -> pulumi.Output[Optional['outputs.CassandraCassandraUserConfig']]:
1050
+ @pulumi.getter
1051
+ def cassandra(self) -> pulumi.Output['outputs.CassandraCassandra']:
1032
1052
  """
1033
- Cassandra user configurable settings
1053
+ Values provided by the Cassandra server.
1034
1054
  """
1035
- return pulumi.get(self, "cassandra_user_config")
1055
+ return pulumi.get(self, "cassandra")
1036
1056
 
1037
1057
  @property
1038
- @pulumi.getter
1039
- def cassandras(self) -> pulumi.Output[Sequence['outputs.CassandraCassandra']]:
1058
+ @pulumi.getter(name="cassandraUserConfig")
1059
+ def cassandra_user_config(self) -> pulumi.Output[Optional['outputs.CassandraCassandraUserConfig']]:
1040
1060
  """
1041
- cassandra configuration values
1061
+ Cassandra user configurable settings. **Warning:** There's no way to reset advanced configuration options to default. Options that you add cannot be removed later
1042
1062
  """
1043
- return pulumi.get(self, "cassandras")
1063
+ return pulumi.get(self, "cassandra_user_config")
1044
1064
 
1045
1065
  @property
1046
1066
  @pulumi.getter(name="cloudName")
@@ -1060,13 +1080,11 @@ class Cassandra(pulumi.CustomResource):
1060
1080
 
1061
1081
  @property
1062
1082
  @pulumi.getter(name="diskSpace")
1083
+ @_utilities.deprecated("""This will be removed in v5.0.0. Please use `additional_disk_space` to specify the space to be added to the default `disk_space` defined by the plan.""")
1063
1084
  def disk_space(self) -> pulumi.Output[Optional[str]]:
1064
1085
  """
1065
1086
  Service disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
1066
1087
  """
1067
- warnings.warn("""This will be removed in v5.0.0. Please use `additional_disk_space` to specify the space to be added to the default `disk_space` defined by the plan.""", DeprecationWarning)
1068
- pulumi.log.warn("""disk_space is deprecated: This will be removed in v5.0.0. Please use `additional_disk_space` to specify the space to be added to the default `disk_space` defined by the plan.""")
1069
-
1070
1088
  return pulumi.get(self, "disk_space")
1071
1089
 
1072
1090
  @property
@@ -1095,6 +1113,7 @@ class Cassandra(pulumi.CustomResource):
1095
1113
 
1096
1114
  @property
1097
1115
  @pulumi.getter(name="diskSpaceUsed")
1116
+ @_utilities.deprecated("""This will be removed in v5.0.0. Please use `additional_disk_space` to specify the space to be added to the default `disk_space` defined by the plan.""")
1098
1117
  def disk_space_used(self) -> pulumi.Output[str]:
1099
1118
  """
1100
1119
  Disk space that service is currently using
@@ -1121,7 +1140,7 @@ class Cassandra(pulumi.CustomResource):
1121
1140
  @pulumi.getter
1122
1141
  def plan(self) -> pulumi.Output[str]:
1123
1142
  """
1124
- Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seem from the [Aiven pricing page](https://aiven.io/pricing).
1143
+ Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seen from the [Aiven pricing page](https://aiven.io/pricing).
1125
1144
  """
1126
1145
  return pulumi.get(self, "plan")
1127
1146
 
@@ -1129,13 +1148,13 @@ class Cassandra(pulumi.CustomResource):
1129
1148
  @pulumi.getter
1130
1149
  def project(self) -> pulumi.Output[str]:
1131
1150
  """
1132
- Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
1151
+ The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
1133
1152
  """
1134
1153
  return pulumi.get(self, "project")
1135
1154
 
1136
1155
  @property
1137
1156
  @pulumi.getter(name="projectVpcId")
1138
- def project_vpc_id(self) -> pulumi.Output[Optional[str]]:
1157
+ def project_vpc_id(self) -> pulumi.Output[str]:
1139
1158
  """
1140
1159
  Specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. When set, the value should be given as a reference to set up dependencies correctly and the VPC must be in the same cloud and region as the service itself. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.
1141
1160
  """
@@ -1151,7 +1170,7 @@ class Cassandra(pulumi.CustomResource):
1151
1170
 
1152
1171
  @property
1153
1172
  @pulumi.getter(name="serviceIntegrations")
1154
- def service_integrations(self) -> pulumi.Output[Optional[Sequence['outputs.CassandraServiceIntegration']]]:
1173
+ def service_integrations(self) -> pulumi.Output[Sequence['outputs.CassandraServiceIntegration']]:
1155
1174
  """
1156
1175
  Service integrations to specify when creating a service. Not applied after initial service creation
1157
1176
  """
@@ -1217,7 +1236,7 @@ class Cassandra(pulumi.CustomResource):
1217
1236
  @pulumi.getter(name="staticIps")
1218
1237
  def static_ips(self) -> pulumi.Output[Optional[Sequence[str]]]:
1219
1238
  """
1220
- Use static public IP addresses.
1239
+ Static IPs that are going to be associated with this service. Please assign a value using the 'toset' function. Once a static ip resource is in the 'assigned' state it cannot be unbound from the node again
1221
1240
  """
1222
1241
  return pulumi.get(self, "static_ips")
1223
1242
 
@@ -1233,7 +1252,7 @@ class Cassandra(pulumi.CustomResource):
1233
1252
  @pulumi.getter(name="techEmails")
1234
1253
  def tech_emails(self) -> pulumi.Output[Optional[Sequence['outputs.CassandraTechEmail']]]:
1235
1254
  """
1236
- Defines the email addresses that will receive alerts about upcoming maintenance updates or warnings about service instability.
1255
+ The email addresses for [service contacts](https://aiven.io/docs/platform/howto/technical-emails), who will receive important alerts and updates about this service. You can also set email contacts at the project level.
1237
1256
  """
1238
1257
  return pulumi.get(self, "tech_emails")
1239
1258