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/pg.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 *
@@ -34,21 +39,21 @@ class PgArgs:
34
39
  termination_protection: Optional[pulumi.Input[bool]] = None):
35
40
  """
36
41
  The set of arguments for constructing a Pg resource.
37
- :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).
38
- :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.
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.
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.
44
+ :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.
40
45
  :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).
41
46
  :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.
42
47
  :param pulumi.Input[str] maintenance_window_dow: Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
43
48
  :param pulumi.Input[str] maintenance_window_time: Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
44
- :param pulumi.Input['PgPgArgs'] pg: postgresql.conf configuration values
45
- :param pulumi.Input['PgPgUserConfigArgs'] pg_user_config: Pg user configurable settings
49
+ :param pulumi.Input['PgPgArgs'] pg: Values provided by the PostgreSQL server.
50
+ :param pulumi.Input['PgPgUserConfigArgs'] pg_user_config: Pg user configurable settings. **Warning:** There's no way to reset advanced configuration options to default. Options that you add cannot be removed later
46
51
  :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.
47
52
  :param pulumi.Input[Sequence[pulumi.Input['PgServiceIntegrationArgs']]] service_integrations: Service integrations to specify when creating a service. Not applied after initial service creation
48
53
  :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.
49
- :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
50
55
  :param pulumi.Input[Sequence[pulumi.Input['PgTagArgs']]] tags: Tags are key-value pairs that allow you to categorize services.
51
- :param pulumi.Input[Sequence[pulumi.Input['PgTechEmailArgs']]] 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['PgTechEmailArgs']]] 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.
52
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.
53
58
  """
54
59
  pulumi.set(__self__, "plan", plan)
@@ -89,7 +94,7 @@ class PgArgs:
89
94
  @pulumi.getter
90
95
  def plan(self) -> pulumi.Input[str]:
91
96
  """
92
- 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).
97
+ 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).
93
98
  """
94
99
  return pulumi.get(self, "plan")
95
100
 
@@ -101,7 +106,7 @@ class PgArgs:
101
106
  @pulumi.getter
102
107
  def project(self) -> pulumi.Input[str]:
103
108
  """
104
- 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.
109
+ 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.
105
110
  """
106
111
  return pulumi.get(self, "project")
107
112
 
@@ -113,7 +118,7 @@ class PgArgs:
113
118
  @pulumi.getter(name="additionalDiskSpace")
114
119
  def additional_disk_space(self) -> Optional[pulumi.Input[str]]:
115
120
  """
116
- Additional disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
121
+ 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.
117
122
  """
118
123
  return pulumi.get(self, "additional_disk_space")
119
124
 
@@ -135,13 +140,11 @@ class PgArgs:
135
140
 
136
141
  @property
137
142
  @pulumi.getter(name="diskSpace")
143
+ @_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.""")
138
144
  def disk_space(self) -> Optional[pulumi.Input[str]]:
139
145
  """
140
146
  Service disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
141
147
  """
142
- 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)
143
- 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.""")
144
-
145
148
  return pulumi.get(self, "disk_space")
146
149
 
147
150
  @disk_space.setter
@@ -176,7 +179,7 @@ class PgArgs:
176
179
  @pulumi.getter
177
180
  def pg(self) -> Optional[pulumi.Input['PgPgArgs']]:
178
181
  """
179
- postgresql.conf configuration values
182
+ Values provided by the PostgreSQL server.
180
183
  """
181
184
  return pulumi.get(self, "pg")
182
185
 
@@ -188,7 +191,7 @@ class PgArgs:
188
191
  @pulumi.getter(name="pgUserConfig")
189
192
  def pg_user_config(self) -> Optional[pulumi.Input['PgPgUserConfigArgs']]:
190
193
  """
191
- Pg user configurable settings
194
+ Pg user configurable settings. **Warning:** There's no way to reset advanced configuration options to default. Options that you add cannot be removed later
192
195
  """
193
196
  return pulumi.get(self, "pg_user_config")
194
197
 
@@ -236,7 +239,7 @@ class PgArgs:
236
239
  @pulumi.getter(name="staticIps")
237
240
  def static_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
238
241
  """
239
- Use static public IP addresses.
242
+ 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
240
243
  """
241
244
  return pulumi.get(self, "static_ips")
242
245
 
@@ -260,7 +263,7 @@ class PgArgs:
260
263
  @pulumi.getter(name="techEmails")
261
264
  def tech_emails(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PgTechEmailArgs']]]]:
262
265
  """
263
- Defines the email addresses that will receive alerts about upcoming maintenance updates or warnings about service instability.
266
+ 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.
264
267
  """
265
268
  return pulumi.get(self, "tech_emails")
266
269
 
@@ -314,7 +317,7 @@ class _PgState:
314
317
  termination_protection: Optional[pulumi.Input[bool]] = None):
315
318
  """
316
319
  Input properties used for looking up and filtering Pg resources.
317
- :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.
320
+ :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.
318
321
  :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).
319
322
  :param pulumi.Input[Sequence[pulumi.Input['PgComponentArgs']]] components: Service component information objects
320
323
  :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.
@@ -324,10 +327,10 @@ class _PgState:
324
327
  :param pulumi.Input[str] disk_space_used: Disk space that service is currently using
325
328
  :param pulumi.Input[str] maintenance_window_dow: Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
326
329
  :param pulumi.Input[str] maintenance_window_time: Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
327
- :param pulumi.Input['PgPgArgs'] pg: postgresql.conf configuration values
328
- :param pulumi.Input['PgPgUserConfigArgs'] pg_user_config: Pg user configurable settings
329
- :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).
330
- :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.
330
+ :param pulumi.Input['PgPgArgs'] pg: Values provided by the PostgreSQL server.
331
+ :param pulumi.Input['PgPgUserConfigArgs'] pg_user_config: Pg user configurable settings. **Warning:** There's no way to reset advanced configuration options to default. Options that you add cannot be removed later
332
+ :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).
333
+ :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.
331
334
  :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.
332
335
  :param pulumi.Input[str] service_host: The hostname of the service.
333
336
  :param pulumi.Input[Sequence[pulumi.Input['PgServiceIntegrationArgs']]] service_integrations: Service integrations to specify when creating a service. Not applied after initial service creation
@@ -338,9 +341,9 @@ class _PgState:
338
341
  :param pulumi.Input[str] service_uri: URI for connecting to the service. Service specific info is under "kafka", "pg", etc.
339
342
  :param pulumi.Input[str] service_username: Username used for connecting to the service, if applicable
340
343
  :param pulumi.Input[str] state: Service state. One of `POWEROFF`, `REBALANCING`, `REBUILDING` or `RUNNING`
341
- :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Use static public IP addresses.
344
+ :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
342
345
  :param pulumi.Input[Sequence[pulumi.Input['PgTagArgs']]] tags: Tags are key-value pairs that allow you to categorize services.
343
- :param pulumi.Input[Sequence[pulumi.Input['PgTechEmailArgs']]] tech_emails: Defines the email addresses that will receive alerts about upcoming maintenance updates or warnings about service instability.
346
+ :param pulumi.Input[Sequence[pulumi.Input['PgTechEmailArgs']]] 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.
344
347
  :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.
345
348
  """
346
349
  if additional_disk_space is not None:
@@ -360,6 +363,9 @@ class _PgState:
360
363
  pulumi.set(__self__, "disk_space_default", disk_space_default)
361
364
  if disk_space_step is not None:
362
365
  pulumi.set(__self__, "disk_space_step", disk_space_step)
366
+ if disk_space_used is not None:
367
+ 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)
368
+ 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.""")
363
369
  if disk_space_used is not None:
364
370
  pulumi.set(__self__, "disk_space_used", disk_space_used)
365
371
  if maintenance_window_dow is not None:
@@ -407,7 +413,7 @@ class _PgState:
407
413
  @pulumi.getter(name="additionalDiskSpace")
408
414
  def additional_disk_space(self) -> Optional[pulumi.Input[str]]:
409
415
  """
410
- Additional disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
416
+ 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.
411
417
  """
412
418
  return pulumi.get(self, "additional_disk_space")
413
419
 
@@ -441,13 +447,11 @@ class _PgState:
441
447
 
442
448
  @property
443
449
  @pulumi.getter(name="diskSpace")
450
+ @_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.""")
444
451
  def disk_space(self) -> Optional[pulumi.Input[str]]:
445
452
  """
446
453
  Service disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
447
454
  """
448
- 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)
449
- 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.""")
450
-
451
455
  return pulumi.get(self, "disk_space")
452
456
 
453
457
  @disk_space.setter
@@ -492,6 +496,7 @@ class _PgState:
492
496
 
493
497
  @property
494
498
  @pulumi.getter(name="diskSpaceUsed")
499
+ @_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.""")
495
500
  def disk_space_used(self) -> Optional[pulumi.Input[str]]:
496
501
  """
497
502
  Disk space that service is currently using
@@ -530,7 +535,7 @@ class _PgState:
530
535
  @pulumi.getter
531
536
  def pg(self) -> Optional[pulumi.Input['PgPgArgs']]:
532
537
  """
533
- postgresql.conf configuration values
538
+ Values provided by the PostgreSQL server.
534
539
  """
535
540
  return pulumi.get(self, "pg")
536
541
 
@@ -542,7 +547,7 @@ class _PgState:
542
547
  @pulumi.getter(name="pgUserConfig")
543
548
  def pg_user_config(self) -> Optional[pulumi.Input['PgPgUserConfigArgs']]:
544
549
  """
545
- Pg user configurable settings
550
+ Pg user configurable settings. **Warning:** There's no way to reset advanced configuration options to default. Options that you add cannot be removed later
546
551
  """
547
552
  return pulumi.get(self, "pg_user_config")
548
553
 
@@ -554,7 +559,7 @@ class _PgState:
554
559
  @pulumi.getter
555
560
  def plan(self) -> Optional[pulumi.Input[str]]:
556
561
  """
557
- 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).
562
+ 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).
558
563
  """
559
564
  return pulumi.get(self, "plan")
560
565
 
@@ -566,7 +571,7 @@ class _PgState:
566
571
  @pulumi.getter
567
572
  def project(self) -> Optional[pulumi.Input[str]]:
568
573
  """
569
- 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.
574
+ 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.
570
575
  """
571
576
  return pulumi.get(self, "project")
572
577
 
@@ -698,7 +703,7 @@ class _PgState:
698
703
  @pulumi.getter(name="staticIps")
699
704
  def static_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
700
705
  """
701
- Use static public IP addresses.
706
+ 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
702
707
  """
703
708
  return pulumi.get(self, "static_ips")
704
709
 
@@ -722,7 +727,7 @@ class _PgState:
722
727
  @pulumi.getter(name="techEmails")
723
728
  def tech_emails(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PgTechEmailArgs']]]]:
724
729
  """
725
- Defines the email addresses that will receive alerts about upcoming maintenance updates or warnings about service instability.
730
+ 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.
726
731
  """
727
732
  return pulumi.get(self, "tech_emails")
728
733
 
@@ -753,44 +758,44 @@ class Pg(pulumi.CustomResource):
753
758
  disk_space: Optional[pulumi.Input[str]] = None,
754
759
  maintenance_window_dow: Optional[pulumi.Input[str]] = None,
755
760
  maintenance_window_time: Optional[pulumi.Input[str]] = None,
756
- pg: Optional[pulumi.Input[pulumi.InputType['PgPgArgs']]] = None,
757
- pg_user_config: Optional[pulumi.Input[pulumi.InputType['PgPgUserConfigArgs']]] = None,
761
+ pg: Optional[pulumi.Input[Union['PgPgArgs', 'PgPgArgsDict']]] = None,
762
+ pg_user_config: Optional[pulumi.Input[Union['PgPgUserConfigArgs', 'PgPgUserConfigArgsDict']]] = None,
758
763
  plan: Optional[pulumi.Input[str]] = None,
759
764
  project: Optional[pulumi.Input[str]] = None,
760
765
  project_vpc_id: Optional[pulumi.Input[str]] = None,
761
- service_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgServiceIntegrationArgs']]]]] = None,
766
+ service_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['PgServiceIntegrationArgs', 'PgServiceIntegrationArgsDict']]]]] = None,
762
767
  service_name: Optional[pulumi.Input[str]] = None,
763
768
  static_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
764
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgTagArgs']]]]] = None,
765
- tech_emails: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgTechEmailArgs']]]]] = None,
769
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['PgTagArgs', 'PgTagArgsDict']]]]] = None,
770
+ tech_emails: Optional[pulumi.Input[Sequence[pulumi.Input[Union['PgTechEmailArgs', 'PgTechEmailArgsDict']]]]] = None,
766
771
  termination_protection: Optional[pulumi.Input[bool]] = None,
767
772
  __props__=None):
768
773
  """
769
- The PG resource allows the creation and management of Aiven PostgreSQL services.
774
+ Creates and manages an Aiven for PostgreSQL® service.
770
775
 
771
776
  ## Import
772
777
 
773
778
  ```sh
774
- $ pulumi import aiven:index/pg:Pg pg project/service_name
779
+ $ pulumi import aiven:index/pg:Pg example_postgres PROJECT/SERVICE_NAME
775
780
  ```
776
781
 
777
782
  :param str resource_name: The name of the resource.
778
783
  :param pulumi.ResourceOptions opts: Options for the resource.
779
- :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.
784
+ :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.
780
785
  :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).
781
786
  :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.
782
787
  :param pulumi.Input[str] maintenance_window_dow: Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
783
788
  :param pulumi.Input[str] maintenance_window_time: Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
784
- :param pulumi.Input[pulumi.InputType['PgPgArgs']] pg: postgresql.conf configuration values
785
- :param pulumi.Input[pulumi.InputType['PgPgUserConfigArgs']] pg_user_config: Pg user configurable settings
786
- :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).
787
- :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.
789
+ :param pulumi.Input[Union['PgPgArgs', 'PgPgArgsDict']] pg: Values provided by the PostgreSQL server.
790
+ :param pulumi.Input[Union['PgPgUserConfigArgs', 'PgPgUserConfigArgsDict']] pg_user_config: Pg user configurable settings. **Warning:** There's no way to reset advanced configuration options to default. Options that you add cannot be removed later
791
+ :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).
792
+ :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.
788
793
  :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.
789
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgServiceIntegrationArgs']]]] service_integrations: Service integrations to specify when creating a service. Not applied after initial service creation
794
+ :param pulumi.Input[Sequence[pulumi.Input[Union['PgServiceIntegrationArgs', 'PgServiceIntegrationArgsDict']]]] service_integrations: Service integrations to specify when creating a service. Not applied after initial service creation
790
795
  :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.
791
- :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Use static public IP addresses.
792
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgTagArgs']]]] tags: Tags are key-value pairs that allow you to categorize services.
793
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgTechEmailArgs']]]] tech_emails: Defines the email addresses that will receive alerts about upcoming maintenance updates or warnings about service instability.
796
+ :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
797
+ :param pulumi.Input[Sequence[pulumi.Input[Union['PgTagArgs', 'PgTagArgsDict']]]] tags: Tags are key-value pairs that allow you to categorize services.
798
+ :param pulumi.Input[Sequence[pulumi.Input[Union['PgTechEmailArgs', 'PgTechEmailArgsDict']]]] 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.
794
799
  :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.
795
800
  """
796
801
  ...
@@ -800,12 +805,12 @@ class Pg(pulumi.CustomResource):
800
805
  args: PgArgs,
801
806
  opts: Optional[pulumi.ResourceOptions] = None):
802
807
  """
803
- The PG resource allows the creation and management of Aiven PostgreSQL services.
808
+ Creates and manages an Aiven for PostgreSQL® service.
804
809
 
805
810
  ## Import
806
811
 
807
812
  ```sh
808
- $ pulumi import aiven:index/pg:Pg pg project/service_name
813
+ $ pulumi import aiven:index/pg:Pg example_postgres PROJECT/SERVICE_NAME
809
814
  ```
810
815
 
811
816
  :param str resource_name: The name of the resource.
@@ -828,16 +833,16 @@ class Pg(pulumi.CustomResource):
828
833
  disk_space: Optional[pulumi.Input[str]] = None,
829
834
  maintenance_window_dow: Optional[pulumi.Input[str]] = None,
830
835
  maintenance_window_time: Optional[pulumi.Input[str]] = None,
831
- pg: Optional[pulumi.Input[pulumi.InputType['PgPgArgs']]] = None,
832
- pg_user_config: Optional[pulumi.Input[pulumi.InputType['PgPgUserConfigArgs']]] = None,
836
+ pg: Optional[pulumi.Input[Union['PgPgArgs', 'PgPgArgsDict']]] = None,
837
+ pg_user_config: Optional[pulumi.Input[Union['PgPgUserConfigArgs', 'PgPgUserConfigArgsDict']]] = None,
833
838
  plan: Optional[pulumi.Input[str]] = None,
834
839
  project: Optional[pulumi.Input[str]] = None,
835
840
  project_vpc_id: Optional[pulumi.Input[str]] = None,
836
- service_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgServiceIntegrationArgs']]]]] = None,
841
+ service_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['PgServiceIntegrationArgs', 'PgServiceIntegrationArgsDict']]]]] = None,
837
842
  service_name: Optional[pulumi.Input[str]] = None,
838
843
  static_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
839
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgTagArgs']]]]] = None,
840
- tech_emails: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgTechEmailArgs']]]]] = None,
844
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['PgTagArgs', 'PgTagArgsDict']]]]] = None,
845
+ tech_emails: Optional[pulumi.Input[Sequence[pulumi.Input[Union['PgTechEmailArgs', 'PgTechEmailArgsDict']]]]] = None,
841
846
  termination_protection: Optional[pulumi.Input[bool]] = None,
842
847
  __props__=None):
843
848
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -853,7 +858,7 @@ class Pg(pulumi.CustomResource):
853
858
  __props__.__dict__["disk_space"] = disk_space
854
859
  __props__.__dict__["maintenance_window_dow"] = maintenance_window_dow
855
860
  __props__.__dict__["maintenance_window_time"] = maintenance_window_time
856
- __props__.__dict__["pg"] = pg
861
+ __props__.__dict__["pg"] = None if pg is None else pulumi.Output.secret(pg)
857
862
  __props__.__dict__["pg_user_config"] = pg_user_config
858
863
  if plan is None and not opts.urn:
859
864
  raise TypeError("Missing required property 'plan'")
@@ -880,7 +885,7 @@ class Pg(pulumi.CustomResource):
880
885
  __props__.__dict__["service_uri"] = None
881
886
  __props__.__dict__["service_username"] = None
882
887
  __props__.__dict__["state"] = None
883
- secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["servicePassword", "serviceUri"])
888
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["pg", "servicePassword", "serviceUri"])
884
889
  opts = pulumi.ResourceOptions.merge(opts, secret_opts)
885
890
  super(Pg, __self__).__init__(
886
891
  'aiven:index/pg:Pg',
@@ -894,7 +899,7 @@ class Pg(pulumi.CustomResource):
894
899
  opts: Optional[pulumi.ResourceOptions] = None,
895
900
  additional_disk_space: Optional[pulumi.Input[str]] = None,
896
901
  cloud_name: Optional[pulumi.Input[str]] = None,
897
- components: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgComponentArgs']]]]] = None,
902
+ components: Optional[pulumi.Input[Sequence[pulumi.Input[Union['PgComponentArgs', 'PgComponentArgsDict']]]]] = None,
898
903
  disk_space: Optional[pulumi.Input[str]] = None,
899
904
  disk_space_cap: Optional[pulumi.Input[str]] = None,
900
905
  disk_space_default: Optional[pulumi.Input[str]] = None,
@@ -902,13 +907,13 @@ class Pg(pulumi.CustomResource):
902
907
  disk_space_used: Optional[pulumi.Input[str]] = None,
903
908
  maintenance_window_dow: Optional[pulumi.Input[str]] = None,
904
909
  maintenance_window_time: Optional[pulumi.Input[str]] = None,
905
- pg: Optional[pulumi.Input[pulumi.InputType['PgPgArgs']]] = None,
906
- pg_user_config: Optional[pulumi.Input[pulumi.InputType['PgPgUserConfigArgs']]] = None,
910
+ pg: Optional[pulumi.Input[Union['PgPgArgs', 'PgPgArgsDict']]] = None,
911
+ pg_user_config: Optional[pulumi.Input[Union['PgPgUserConfigArgs', 'PgPgUserConfigArgsDict']]] = None,
907
912
  plan: Optional[pulumi.Input[str]] = None,
908
913
  project: Optional[pulumi.Input[str]] = None,
909
914
  project_vpc_id: Optional[pulumi.Input[str]] = None,
910
915
  service_host: Optional[pulumi.Input[str]] = None,
911
- service_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgServiceIntegrationArgs']]]]] = None,
916
+ service_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['PgServiceIntegrationArgs', 'PgServiceIntegrationArgsDict']]]]] = None,
912
917
  service_name: Optional[pulumi.Input[str]] = None,
913
918
  service_password: Optional[pulumi.Input[str]] = None,
914
919
  service_port: Optional[pulumi.Input[int]] = None,
@@ -917,8 +922,8 @@ class Pg(pulumi.CustomResource):
917
922
  service_username: Optional[pulumi.Input[str]] = None,
918
923
  state: Optional[pulumi.Input[str]] = None,
919
924
  static_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
920
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgTagArgs']]]]] = None,
921
- tech_emails: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgTechEmailArgs']]]]] = None,
925
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['PgTagArgs', 'PgTagArgsDict']]]]] = None,
926
+ tech_emails: Optional[pulumi.Input[Sequence[pulumi.Input[Union['PgTechEmailArgs', 'PgTechEmailArgsDict']]]]] = None,
922
927
  termination_protection: Optional[pulumi.Input[bool]] = None) -> 'Pg':
923
928
  """
924
929
  Get an existing Pg resource's state with the given name, id, and optional extra
@@ -927,9 +932,9 @@ class Pg(pulumi.CustomResource):
927
932
  :param str resource_name: The unique name of the resulting resource.
928
933
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
929
934
  :param pulumi.ResourceOptions opts: Options for the resource.
930
- :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.
935
+ :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.
931
936
  :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).
932
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgComponentArgs']]]] components: Service component information objects
937
+ :param pulumi.Input[Sequence[pulumi.Input[Union['PgComponentArgs', 'PgComponentArgsDict']]]] components: Service component information objects
933
938
  :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.
934
939
  :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.
935
940
  :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`
@@ -937,13 +942,13 @@ class Pg(pulumi.CustomResource):
937
942
  :param pulumi.Input[str] disk_space_used: Disk space that service is currently using
938
943
  :param pulumi.Input[str] maintenance_window_dow: Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
939
944
  :param pulumi.Input[str] maintenance_window_time: Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
940
- :param pulumi.Input[pulumi.InputType['PgPgArgs']] pg: postgresql.conf configuration values
941
- :param pulumi.Input[pulumi.InputType['PgPgUserConfigArgs']] pg_user_config: Pg user configurable settings
942
- :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).
943
- :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.
945
+ :param pulumi.Input[Union['PgPgArgs', 'PgPgArgsDict']] pg: Values provided by the PostgreSQL server.
946
+ :param pulumi.Input[Union['PgPgUserConfigArgs', 'PgPgUserConfigArgsDict']] pg_user_config: Pg user configurable settings. **Warning:** There's no way to reset advanced configuration options to default. Options that you add cannot be removed later
947
+ :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).
948
+ :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.
944
949
  :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.
945
950
  :param pulumi.Input[str] service_host: The hostname of the service.
946
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgServiceIntegrationArgs']]]] service_integrations: Service integrations to specify when creating a service. Not applied after initial service creation
951
+ :param pulumi.Input[Sequence[pulumi.Input[Union['PgServiceIntegrationArgs', 'PgServiceIntegrationArgsDict']]]] service_integrations: Service integrations to specify when creating a service. Not applied after initial service creation
947
952
  :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.
948
953
  :param pulumi.Input[str] service_password: Password used for connecting to the service, if applicable
949
954
  :param pulumi.Input[int] service_port: The port of the service
@@ -951,9 +956,9 @@ class Pg(pulumi.CustomResource):
951
956
  :param pulumi.Input[str] service_uri: URI for connecting to the service. Service specific info is under "kafka", "pg", etc.
952
957
  :param pulumi.Input[str] service_username: Username used for connecting to the service, if applicable
953
958
  :param pulumi.Input[str] state: Service state. One of `POWEROFF`, `REBALANCING`, `REBUILDING` or `RUNNING`
954
- :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Use static public IP addresses.
955
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgTagArgs']]]] tags: Tags are key-value pairs that allow you to categorize services.
956
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgTechEmailArgs']]]] tech_emails: Defines the email addresses that will receive alerts about upcoming maintenance updates or warnings about service instability.
959
+ :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
960
+ :param pulumi.Input[Sequence[pulumi.Input[Union['PgTagArgs', 'PgTagArgsDict']]]] tags: Tags are key-value pairs that allow you to categorize services.
961
+ :param pulumi.Input[Sequence[pulumi.Input[Union['PgTechEmailArgs', 'PgTechEmailArgsDict']]]] 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.
957
962
  :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.
958
963
  """
959
964
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
@@ -992,9 +997,9 @@ class Pg(pulumi.CustomResource):
992
997
 
993
998
  @property
994
999
  @pulumi.getter(name="additionalDiskSpace")
995
- def additional_disk_space(self) -> pulumi.Output[Optional[str]]:
1000
+ def additional_disk_space(self) -> pulumi.Output[str]:
996
1001
  """
997
- Additional disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
1002
+ 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.
998
1003
  """
999
1004
  return pulumi.get(self, "additional_disk_space")
1000
1005
 
@@ -1016,13 +1021,11 @@ class Pg(pulumi.CustomResource):
1016
1021
 
1017
1022
  @property
1018
1023
  @pulumi.getter(name="diskSpace")
1024
+ @_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.""")
1019
1025
  def disk_space(self) -> pulumi.Output[Optional[str]]:
1020
1026
  """
1021
1027
  Service disk space. Possible values depend on the service type, the cloud provider and the project. Therefore, reducing will result in the service rebalancing.
1022
1028
  """
1023
- 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)
1024
- 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.""")
1025
-
1026
1029
  return pulumi.get(self, "disk_space")
1027
1030
 
1028
1031
  @property
@@ -1051,6 +1054,7 @@ class Pg(pulumi.CustomResource):
1051
1054
 
1052
1055
  @property
1053
1056
  @pulumi.getter(name="diskSpaceUsed")
1057
+ @_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.""")
1054
1058
  def disk_space_used(self) -> pulumi.Output[str]:
1055
1059
  """
1056
1060
  Disk space that service is currently using
@@ -1077,7 +1081,7 @@ class Pg(pulumi.CustomResource):
1077
1081
  @pulumi.getter
1078
1082
  def pg(self) -> pulumi.Output['outputs.PgPg']:
1079
1083
  """
1080
- postgresql.conf configuration values
1084
+ Values provided by the PostgreSQL server.
1081
1085
  """
1082
1086
  return pulumi.get(self, "pg")
1083
1087
 
@@ -1085,7 +1089,7 @@ class Pg(pulumi.CustomResource):
1085
1089
  @pulumi.getter(name="pgUserConfig")
1086
1090
  def pg_user_config(self) -> pulumi.Output[Optional['outputs.PgPgUserConfig']]:
1087
1091
  """
1088
- Pg user configurable settings
1092
+ Pg user configurable settings. **Warning:** There's no way to reset advanced configuration options to default. Options that you add cannot be removed later
1089
1093
  """
1090
1094
  return pulumi.get(self, "pg_user_config")
1091
1095
 
@@ -1093,7 +1097,7 @@ class Pg(pulumi.CustomResource):
1093
1097
  @pulumi.getter
1094
1098
  def plan(self) -> pulumi.Output[str]:
1095
1099
  """
1096
- 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).
1100
+ 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).
1097
1101
  """
1098
1102
  return pulumi.get(self, "plan")
1099
1103
 
@@ -1101,13 +1105,13 @@ class Pg(pulumi.CustomResource):
1101
1105
  @pulumi.getter
1102
1106
  def project(self) -> pulumi.Output[str]:
1103
1107
  """
1104
- 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.
1108
+ 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.
1105
1109
  """
1106
1110
  return pulumi.get(self, "project")
1107
1111
 
1108
1112
  @property
1109
1113
  @pulumi.getter(name="projectVpcId")
1110
- def project_vpc_id(self) -> pulumi.Output[Optional[str]]:
1114
+ def project_vpc_id(self) -> pulumi.Output[str]:
1111
1115
  """
1112
1116
  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.
1113
1117
  """
@@ -1123,7 +1127,7 @@ class Pg(pulumi.CustomResource):
1123
1127
 
1124
1128
  @property
1125
1129
  @pulumi.getter(name="serviceIntegrations")
1126
- def service_integrations(self) -> pulumi.Output[Optional[Sequence['outputs.PgServiceIntegration']]]:
1130
+ def service_integrations(self) -> pulumi.Output[Sequence['outputs.PgServiceIntegration']]:
1127
1131
  """
1128
1132
  Service integrations to specify when creating a service. Not applied after initial service creation
1129
1133
  """
@@ -1189,7 +1193,7 @@ class Pg(pulumi.CustomResource):
1189
1193
  @pulumi.getter(name="staticIps")
1190
1194
  def static_ips(self) -> pulumi.Output[Optional[Sequence[str]]]:
1191
1195
  """
1192
- Use static public IP addresses.
1196
+ 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
1193
1197
  """
1194
1198
  return pulumi.get(self, "static_ips")
1195
1199
 
@@ -1205,7 +1209,7 @@ class Pg(pulumi.CustomResource):
1205
1209
  @pulumi.getter(name="techEmails")
1206
1210
  def tech_emails(self) -> pulumi.Output[Optional[Sequence['outputs.PgTechEmail']]]:
1207
1211
  """
1208
- Defines the email addresses that will receive alerts about upcoming maintenance updates or warnings about service instability.
1212
+ 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.
1209
1213
  """
1210
1214
  return pulumi.get(self, "tech_emails")
1211
1215