pulumi-aiven 6.7.0a1695928977__py3-none-any.whl → 6.8.0a1696359310__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 (141) hide show
  1. pulumi_aiven/_inputs.py +5916 -1115
  2. pulumi_aiven/account.py +49 -14
  3. pulumi_aiven/account_authentication.py +117 -32
  4. pulumi_aiven/account_team.py +40 -8
  5. pulumi_aiven/account_team_member.py +46 -10
  6. pulumi_aiven/account_team_project.py +43 -9
  7. pulumi_aiven/aws_privatelink.py +43 -9
  8. pulumi_aiven/aws_vpc_peering_connection.py +52 -12
  9. pulumi_aiven/azure_privatelink.py +49 -11
  10. pulumi_aiven/azure_privatelink_connection_approval.py +43 -9
  11. pulumi_aiven/azure_vpc_peering_connection.py +64 -16
  12. pulumi_aiven/billing_group.py +109 -34
  13. pulumi_aiven/cassandra.py +158 -56
  14. pulumi_aiven/cassandra_user.py +52 -12
  15. pulumi_aiven/clickhouse.py +158 -56
  16. pulumi_aiven/clickhouse_database.py +43 -9
  17. pulumi_aiven/clickhouse_grant.py +62 -20
  18. pulumi_aiven/clickhouse_role.py +37 -7
  19. pulumi_aiven/clickhouse_user.py +46 -10
  20. pulumi_aiven/config/vars.py +1 -1
  21. pulumi_aiven/connection_pool.py +64 -16
  22. pulumi_aiven/flink.py +162 -53
  23. pulumi_aiven/flink_application.py +52 -12
  24. pulumi_aiven/flink_application_deployment.py +67 -17
  25. pulumi_aiven/flink_application_version.py +79 -27
  26. pulumi_aiven/gcp_privatelink.py +40 -8
  27. pulumi_aiven/gcp_privatelink_connection_approval.py +46 -10
  28. pulumi_aiven/gcp_vpc_peering_connection.py +46 -10
  29. pulumi_aiven/get_account.py +1 -1
  30. pulumi_aiven/get_account_authentication.py +1 -1
  31. pulumi_aiven/get_account_team.py +1 -1
  32. pulumi_aiven/get_account_team_member.py +1 -1
  33. pulumi_aiven/get_account_team_project.py +1 -1
  34. pulumi_aiven/get_aws_privatelink.py +1 -1
  35. pulumi_aiven/get_aws_vpc_peering_connection.py +1 -1
  36. pulumi_aiven/get_azure_privatelink.py +1 -1
  37. pulumi_aiven/get_azure_vpc_peering_connection.py +1 -1
  38. pulumi_aiven/get_billing_group.py +1 -1
  39. pulumi_aiven/get_cassanda.py +1 -1
  40. pulumi_aiven/get_cassandra.py +1 -1
  41. pulumi_aiven/get_cassandra_user.py +1 -1
  42. pulumi_aiven/get_clickhouse.py +1 -1
  43. pulumi_aiven/get_clickhouse_database.py +1 -1
  44. pulumi_aiven/get_clickhouse_user.py +1 -1
  45. pulumi_aiven/get_connection_pool.py +1 -1
  46. pulumi_aiven/get_flink.py +1 -1
  47. pulumi_aiven/get_flink_application.py +1 -1
  48. pulumi_aiven/get_flink_application_version.py +1 -1
  49. pulumi_aiven/get_gcp_privatelink.py +1 -1
  50. pulumi_aiven/get_gcp_vpc_peering_connection.py +1 -1
  51. pulumi_aiven/get_grafana.py +1 -1
  52. pulumi_aiven/get_influx_db.py +1 -1
  53. pulumi_aiven/get_influxdb_database.py +1 -1
  54. pulumi_aiven/get_influxdb_user.py +1 -1
  55. pulumi_aiven/get_kafka.py +1 -1
  56. pulumi_aiven/get_kafka_acl.py +1 -1
  57. pulumi_aiven/get_kafka_connect.py +1 -1
  58. pulumi_aiven/get_kafka_connector.py +1 -1
  59. pulumi_aiven/get_kafka_mirror_maker.py +1 -1
  60. pulumi_aiven/get_kafka_schema.py +1 -1
  61. pulumi_aiven/get_kafka_schema_configuration.py +1 -1
  62. pulumi_aiven/get_kafka_schema_registry_acl.py +1 -1
  63. pulumi_aiven/get_kafka_topic.py +1 -1
  64. pulumi_aiven/get_kafka_user.py +1 -1
  65. pulumi_aiven/get_m3_aggregator.py +1 -1
  66. pulumi_aiven/get_m3_db.py +1 -1
  67. pulumi_aiven/get_m3db_user.py +1 -1
  68. pulumi_aiven/get_mirror_maker_replication_flow.py +1 -1
  69. pulumi_aiven/get_my_sql.py +1 -1
  70. pulumi_aiven/get_mysql_database.py +1 -1
  71. pulumi_aiven/get_mysql_user.py +1 -1
  72. pulumi_aiven/get_open_search.py +1 -1
  73. pulumi_aiven/get_open_search_acl_config.py +1 -1
  74. pulumi_aiven/get_open_search_acl_rule.py +1 -1
  75. pulumi_aiven/get_opensearch_security_plugin_config.py +1 -1
  76. pulumi_aiven/get_opensearch_user.py +1 -1
  77. pulumi_aiven/get_organization.py +1 -1
  78. pulumi_aiven/get_organization_user.py +1 -1
  79. pulumi_aiven/get_organization_user_group.py +1 -1
  80. pulumi_aiven/get_organizational_unit.py +1 -1
  81. pulumi_aiven/get_pg.py +1 -1
  82. pulumi_aiven/get_pg_database.py +1 -1
  83. pulumi_aiven/get_pg_user.py +1 -1
  84. pulumi_aiven/get_project.py +1 -1
  85. pulumi_aiven/get_project_user.py +1 -1
  86. pulumi_aiven/get_project_vpc.py +1 -1
  87. pulumi_aiven/get_redis.py +1 -1
  88. pulumi_aiven/get_redis_user.py +1 -1
  89. pulumi_aiven/get_service_component.py +1 -1
  90. pulumi_aiven/get_service_integration.py +1 -1
  91. pulumi_aiven/get_service_integration_endpoint.py +1 -1
  92. pulumi_aiven/get_transit_gateway_vpc_attachment.py +1 -1
  93. pulumi_aiven/grafana.py +147 -45
  94. pulumi_aiven/influx_db.py +158 -56
  95. pulumi_aiven/influxdb_database.py +43 -9
  96. pulumi_aiven/influxdb_user.py +52 -12
  97. pulumi_aiven/kafka.py +170 -63
  98. pulumi_aiven/kafka_acl.py +52 -12
  99. pulumi_aiven/kafka_connect.py +147 -45
  100. pulumi_aiven/kafka_connector.py +64 -16
  101. pulumi_aiven/kafka_mirror_maker.py +147 -45
  102. pulumi_aiven/kafka_schema.py +58 -14
  103. pulumi_aiven/kafka_schema_configuration.py +37 -7
  104. pulumi_aiven/kafka_schema_registry_acl.py +52 -12
  105. pulumi_aiven/kafka_topic.py +72 -17
  106. pulumi_aiven/kafka_user.py +52 -12
  107. pulumi_aiven/m3_aggregator.py +147 -45
  108. pulumi_aiven/m3_db.py +147 -45
  109. pulumi_aiven/m3db_user.py +46 -10
  110. pulumi_aiven/mirror_maker_replication_flow.py +91 -25
  111. pulumi_aiven/my_sql.py +147 -45
  112. pulumi_aiven/mysql_database.py +43 -9
  113. pulumi_aiven/mysql_user.py +58 -14
  114. pulumi_aiven/open_search.py +158 -56
  115. pulumi_aiven/open_search_acl_config.py +43 -9
  116. pulumi_aiven/open_search_acl_rule.py +49 -11
  117. pulumi_aiven/opensearch_security_plugin_config.py +46 -10
  118. pulumi_aiven/opensearch_user.py +46 -10
  119. pulumi_aiven/organization.py +45 -8
  120. pulumi_aiven/organization_user.py +40 -8
  121. pulumi_aiven/organization_user_group.py +43 -9
  122. pulumi_aiven/organizational_unit.py +40 -8
  123. pulumi_aiven/outputs.py +10584 -2482
  124. pulumi_aiven/pg.py +169 -60
  125. pulumi_aiven/pg_database.py +55 -13
  126. pulumi_aiven/pg_user.py +58 -14
  127. pulumi_aiven/project.py +91 -34
  128. pulumi_aiven/project_user.py +40 -8
  129. pulumi_aiven/project_vpc.py +40 -8
  130. pulumi_aiven/provider.py +15 -2
  131. pulumi_aiven/redis.py +147 -45
  132. pulumi_aiven/redis_user.py +70 -18
  133. pulumi_aiven/service_integration.py +157 -32
  134. pulumi_aiven/service_integration_endpoint.py +161 -30
  135. pulumi_aiven/static_ip.py +43 -9
  136. pulumi_aiven/transit_gateway_vpc_attachment.py +58 -17
  137. {pulumi_aiven-6.7.0a1695928977.dist-info → pulumi_aiven-6.8.0a1696359310.dist-info}/METADATA +1 -1
  138. pulumi_aiven-6.8.0a1696359310.dist-info/RECORD +145 -0
  139. pulumi_aiven-6.7.0a1695928977.dist-info/RECORD +0 -145
  140. {pulumi_aiven-6.7.0a1695928977.dist-info → pulumi_aiven-6.8.0a1696359310.dist-info}/WHEEL +0 -0
  141. {pulumi_aiven-6.7.0a1695928977.dist-info → pulumi_aiven-6.8.0a1696359310.dist-info}/top_level.txt +0 -0
pulumi_aiven/pg.py CHANGED
@@ -6,7 +6,7 @@ import copy
6
6
  import warnings
7
7
  import pulumi
8
8
  import pulumi.runtime
9
- from typing import Any, Mapping, Optional, Sequence, Union, overload
9
+ from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload
10
10
  from . import _utilities
11
11
  from . import outputs
12
12
  from ._inputs import *
@@ -40,46 +40,83 @@ class PgArgs:
40
40
  :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.
41
41
  :param pulumi.Input[str] maintenance_window_dow: Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
42
42
  :param pulumi.Input[str] maintenance_window_time: Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
43
- :param pulumi.Input['PgPgArgs'] pg: PostgreSQL specific server provided values
43
+ :param pulumi.Input['PgPgArgs'] pg: postgresql.conf configuration values.
44
44
  :param pulumi.Input['PgPgUserConfigArgs'] pg_user_config: Pg user configurable settings
45
45
  :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
46
  :param pulumi.Input[Sequence[pulumi.Input['PgServiceIntegrationArgs']]] service_integrations: Service integrations to specify when creating a service. Not applied after initial service creation
47
47
  :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.
48
- :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
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Use static public IP addresses.
49
49
  :param pulumi.Input[Sequence[pulumi.Input['PgTagArgs']]] tags: Tags are key-value pairs that allow you to categorize services.
50
50
  :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
51
  """
52
- pulumi.set(__self__, "plan", plan)
53
- pulumi.set(__self__, "project", project)
52
+ PgArgs._configure(
53
+ lambda key, value: pulumi.set(__self__, key, value),
54
+ plan=plan,
55
+ project=project,
56
+ additional_disk_space=additional_disk_space,
57
+ cloud_name=cloud_name,
58
+ disk_space=disk_space,
59
+ maintenance_window_dow=maintenance_window_dow,
60
+ maintenance_window_time=maintenance_window_time,
61
+ pg=pg,
62
+ pg_user_config=pg_user_config,
63
+ project_vpc_id=project_vpc_id,
64
+ service_integrations=service_integrations,
65
+ service_name=service_name,
66
+ static_ips=static_ips,
67
+ tags=tags,
68
+ termination_protection=termination_protection,
69
+ )
70
+ @staticmethod
71
+ def _configure(
72
+ _setter: Callable[[Any, Any], None],
73
+ plan: pulumi.Input[str],
74
+ project: pulumi.Input[str],
75
+ additional_disk_space: Optional[pulumi.Input[str]] = None,
76
+ cloud_name: Optional[pulumi.Input[str]] = None,
77
+ disk_space: Optional[pulumi.Input[str]] = None,
78
+ maintenance_window_dow: Optional[pulumi.Input[str]] = None,
79
+ maintenance_window_time: Optional[pulumi.Input[str]] = None,
80
+ pg: Optional[pulumi.Input['PgPgArgs']] = None,
81
+ pg_user_config: Optional[pulumi.Input['PgPgUserConfigArgs']] = None,
82
+ project_vpc_id: Optional[pulumi.Input[str]] = None,
83
+ service_integrations: Optional[pulumi.Input[Sequence[pulumi.Input['PgServiceIntegrationArgs']]]] = None,
84
+ service_name: Optional[pulumi.Input[str]] = None,
85
+ static_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
86
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input['PgTagArgs']]]] = None,
87
+ termination_protection: Optional[pulumi.Input[bool]] = None,
88
+ opts: Optional[pulumi.ResourceOptions]=None):
89
+ _setter("plan", plan)
90
+ _setter("project", project)
54
91
  if additional_disk_space is not None:
55
- pulumi.set(__self__, "additional_disk_space", additional_disk_space)
92
+ _setter("additional_disk_space", additional_disk_space)
56
93
  if cloud_name is not None:
57
- pulumi.set(__self__, "cloud_name", cloud_name)
94
+ _setter("cloud_name", cloud_name)
58
95
  if disk_space is not None:
59
96
  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)
60
97
  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.""")
61
98
  if disk_space is not None:
62
- pulumi.set(__self__, "disk_space", disk_space)
99
+ _setter("disk_space", disk_space)
63
100
  if maintenance_window_dow is not None:
64
- pulumi.set(__self__, "maintenance_window_dow", maintenance_window_dow)
101
+ _setter("maintenance_window_dow", maintenance_window_dow)
65
102
  if maintenance_window_time is not None:
66
- pulumi.set(__self__, "maintenance_window_time", maintenance_window_time)
103
+ _setter("maintenance_window_time", maintenance_window_time)
67
104
  if pg is not None:
68
- pulumi.set(__self__, "pg", pg)
105
+ _setter("pg", pg)
69
106
  if pg_user_config is not None:
70
- pulumi.set(__self__, "pg_user_config", pg_user_config)
107
+ _setter("pg_user_config", pg_user_config)
71
108
  if project_vpc_id is not None:
72
- pulumi.set(__self__, "project_vpc_id", project_vpc_id)
109
+ _setter("project_vpc_id", project_vpc_id)
73
110
  if service_integrations is not None:
74
- pulumi.set(__self__, "service_integrations", service_integrations)
111
+ _setter("service_integrations", service_integrations)
75
112
  if service_name is not None:
76
- pulumi.set(__self__, "service_name", service_name)
113
+ _setter("service_name", service_name)
77
114
  if static_ips is not None:
78
- pulumi.set(__self__, "static_ips", static_ips)
115
+ _setter("static_ips", static_ips)
79
116
  if tags is not None:
80
- pulumi.set(__self__, "tags", tags)
117
+ _setter("tags", tags)
81
118
  if termination_protection is not None:
82
- pulumi.set(__self__, "termination_protection", termination_protection)
119
+ _setter("termination_protection", termination_protection)
83
120
 
84
121
  @property
85
122
  @pulumi.getter
@@ -172,7 +209,7 @@ class PgArgs:
172
209
  @pulumi.getter
173
210
  def pg(self) -> Optional[pulumi.Input['PgPgArgs']]:
174
211
  """
175
- PostgreSQL specific server provided values
212
+ postgresql.conf configuration values.
176
213
  """
177
214
  return pulumi.get(self, "pg")
178
215
 
@@ -232,7 +269,7 @@ class PgArgs:
232
269
  @pulumi.getter(name="staticIps")
233
270
  def static_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
234
271
  """
235
- 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
272
+ Use static public IP addresses.
236
273
  """
237
274
  return pulumi.get(self, "static_ips")
238
275
 
@@ -307,7 +344,7 @@ class _PgState:
307
344
  :param pulumi.Input[str] disk_space_used: Disk space that service is currently using
308
345
  :param pulumi.Input[str] maintenance_window_dow: Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
309
346
  :param pulumi.Input[str] maintenance_window_time: Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
310
- :param pulumi.Input['PgPgArgs'] pg: PostgreSQL specific server provided values
347
+ :param pulumi.Input['PgPgArgs'] pg: postgresql.conf configuration values.
311
348
  :param pulumi.Input['PgPgUserConfigArgs'] pg_user_config: Pg user configurable settings
312
349
  :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
350
  :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.
@@ -321,67 +358,128 @@ class _PgState:
321
358
  :param pulumi.Input[str] service_uri: URI for connecting to the service. Service specific info is under "kafka", "pg", etc.
322
359
  :param pulumi.Input[str] service_username: Username used for connecting to the service, if applicable
323
360
  :param pulumi.Input[str] state: Service state. One of `POWEROFF`, `REBALANCING`, `REBUILDING` or `RUNNING`
324
- :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
361
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Use static public IP addresses.
325
362
  :param pulumi.Input[Sequence[pulumi.Input['PgTagArgs']]] tags: Tags are key-value pairs that allow you to categorize services.
326
363
  :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.
327
364
  """
365
+ _PgState._configure(
366
+ lambda key, value: pulumi.set(__self__, key, value),
367
+ additional_disk_space=additional_disk_space,
368
+ cloud_name=cloud_name,
369
+ components=components,
370
+ disk_space=disk_space,
371
+ disk_space_cap=disk_space_cap,
372
+ disk_space_default=disk_space_default,
373
+ disk_space_step=disk_space_step,
374
+ disk_space_used=disk_space_used,
375
+ maintenance_window_dow=maintenance_window_dow,
376
+ maintenance_window_time=maintenance_window_time,
377
+ pg=pg,
378
+ pg_user_config=pg_user_config,
379
+ plan=plan,
380
+ project=project,
381
+ project_vpc_id=project_vpc_id,
382
+ service_host=service_host,
383
+ service_integrations=service_integrations,
384
+ service_name=service_name,
385
+ service_password=service_password,
386
+ service_port=service_port,
387
+ service_type=service_type,
388
+ service_uri=service_uri,
389
+ service_username=service_username,
390
+ state=state,
391
+ static_ips=static_ips,
392
+ tags=tags,
393
+ termination_protection=termination_protection,
394
+ )
395
+ @staticmethod
396
+ def _configure(
397
+ _setter: Callable[[Any, Any], None],
398
+ additional_disk_space: Optional[pulumi.Input[str]] = None,
399
+ cloud_name: Optional[pulumi.Input[str]] = None,
400
+ components: Optional[pulumi.Input[Sequence[pulumi.Input['PgComponentArgs']]]] = None,
401
+ disk_space: Optional[pulumi.Input[str]] = None,
402
+ disk_space_cap: Optional[pulumi.Input[str]] = None,
403
+ disk_space_default: Optional[pulumi.Input[str]] = None,
404
+ disk_space_step: Optional[pulumi.Input[str]] = None,
405
+ disk_space_used: Optional[pulumi.Input[str]] = None,
406
+ maintenance_window_dow: Optional[pulumi.Input[str]] = None,
407
+ maintenance_window_time: Optional[pulumi.Input[str]] = None,
408
+ pg: Optional[pulumi.Input['PgPgArgs']] = None,
409
+ pg_user_config: Optional[pulumi.Input['PgPgUserConfigArgs']] = None,
410
+ plan: Optional[pulumi.Input[str]] = None,
411
+ project: Optional[pulumi.Input[str]] = None,
412
+ project_vpc_id: Optional[pulumi.Input[str]] = None,
413
+ service_host: Optional[pulumi.Input[str]] = None,
414
+ service_integrations: Optional[pulumi.Input[Sequence[pulumi.Input['PgServiceIntegrationArgs']]]] = None,
415
+ service_name: Optional[pulumi.Input[str]] = None,
416
+ service_password: Optional[pulumi.Input[str]] = None,
417
+ service_port: Optional[pulumi.Input[int]] = None,
418
+ service_type: Optional[pulumi.Input[str]] = None,
419
+ service_uri: Optional[pulumi.Input[str]] = None,
420
+ service_username: Optional[pulumi.Input[str]] = None,
421
+ state: Optional[pulumi.Input[str]] = None,
422
+ static_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
423
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input['PgTagArgs']]]] = None,
424
+ termination_protection: Optional[pulumi.Input[bool]] = None,
425
+ opts: Optional[pulumi.ResourceOptions]=None):
328
426
  if additional_disk_space is not None:
329
- pulumi.set(__self__, "additional_disk_space", additional_disk_space)
427
+ _setter("additional_disk_space", additional_disk_space)
330
428
  if cloud_name is not None:
331
- pulumi.set(__self__, "cloud_name", cloud_name)
429
+ _setter("cloud_name", cloud_name)
332
430
  if components is not None:
333
- pulumi.set(__self__, "components", components)
431
+ _setter("components", components)
334
432
  if disk_space is not None:
335
433
  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)
336
434
  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.""")
337
435
  if disk_space is not None:
338
- pulumi.set(__self__, "disk_space", disk_space)
436
+ _setter("disk_space", disk_space)
339
437
  if disk_space_cap is not None:
340
- pulumi.set(__self__, "disk_space_cap", disk_space_cap)
438
+ _setter("disk_space_cap", disk_space_cap)
341
439
  if disk_space_default is not None:
342
- pulumi.set(__self__, "disk_space_default", disk_space_default)
440
+ _setter("disk_space_default", disk_space_default)
343
441
  if disk_space_step is not None:
344
- pulumi.set(__self__, "disk_space_step", disk_space_step)
442
+ _setter("disk_space_step", disk_space_step)
345
443
  if disk_space_used is not None:
346
- pulumi.set(__self__, "disk_space_used", disk_space_used)
444
+ _setter("disk_space_used", disk_space_used)
347
445
  if maintenance_window_dow is not None:
348
- pulumi.set(__self__, "maintenance_window_dow", maintenance_window_dow)
446
+ _setter("maintenance_window_dow", maintenance_window_dow)
349
447
  if maintenance_window_time is not None:
350
- pulumi.set(__self__, "maintenance_window_time", maintenance_window_time)
448
+ _setter("maintenance_window_time", maintenance_window_time)
351
449
  if pg is not None:
352
- pulumi.set(__self__, "pg", pg)
450
+ _setter("pg", pg)
353
451
  if pg_user_config is not None:
354
- pulumi.set(__self__, "pg_user_config", pg_user_config)
452
+ _setter("pg_user_config", pg_user_config)
355
453
  if plan is not None:
356
- pulumi.set(__self__, "plan", plan)
454
+ _setter("plan", plan)
357
455
  if project is not None:
358
- pulumi.set(__self__, "project", project)
456
+ _setter("project", project)
359
457
  if project_vpc_id is not None:
360
- pulumi.set(__self__, "project_vpc_id", project_vpc_id)
458
+ _setter("project_vpc_id", project_vpc_id)
361
459
  if service_host is not None:
362
- pulumi.set(__self__, "service_host", service_host)
460
+ _setter("service_host", service_host)
363
461
  if service_integrations is not None:
364
- pulumi.set(__self__, "service_integrations", service_integrations)
462
+ _setter("service_integrations", service_integrations)
365
463
  if service_name is not None:
366
- pulumi.set(__self__, "service_name", service_name)
464
+ _setter("service_name", service_name)
367
465
  if service_password is not None:
368
- pulumi.set(__self__, "service_password", service_password)
466
+ _setter("service_password", service_password)
369
467
  if service_port is not None:
370
- pulumi.set(__self__, "service_port", service_port)
468
+ _setter("service_port", service_port)
371
469
  if service_type is not None:
372
- pulumi.set(__self__, "service_type", service_type)
470
+ _setter("service_type", service_type)
373
471
  if service_uri is not None:
374
- pulumi.set(__self__, "service_uri", service_uri)
472
+ _setter("service_uri", service_uri)
375
473
  if service_username is not None:
376
- pulumi.set(__self__, "service_username", service_username)
474
+ _setter("service_username", service_username)
377
475
  if state is not None:
378
- pulumi.set(__self__, "state", state)
476
+ _setter("state", state)
379
477
  if static_ips is not None:
380
- pulumi.set(__self__, "static_ips", static_ips)
478
+ _setter("static_ips", static_ips)
381
479
  if tags is not None:
382
- pulumi.set(__self__, "tags", tags)
480
+ _setter("tags", tags)
383
481
  if termination_protection is not None:
384
- pulumi.set(__self__, "termination_protection", termination_protection)
482
+ _setter("termination_protection", termination_protection)
385
483
 
386
484
  @property
387
485
  @pulumi.getter(name="additionalDiskSpace")
@@ -510,7 +608,7 @@ class _PgState:
510
608
  @pulumi.getter
511
609
  def pg(self) -> Optional[pulumi.Input['PgPgArgs']]:
512
610
  """
513
- PostgreSQL specific server provided values
611
+ postgresql.conf configuration values.
514
612
  """
515
613
  return pulumi.get(self, "pg")
516
614
 
@@ -678,7 +776,7 @@ class _PgState:
678
776
  @pulumi.getter(name="staticIps")
679
777
  def static_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
680
778
  """
681
- 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
779
+ Use static public IP addresses.
682
780
  """
683
781
  return pulumi.get(self, "static_ips")
684
782
 
@@ -748,14 +846,14 @@ class Pg(pulumi.CustomResource):
748
846
  :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.
749
847
  :param pulumi.Input[str] maintenance_window_dow: Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
750
848
  :param pulumi.Input[str] maintenance_window_time: Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
751
- :param pulumi.Input[pulumi.InputType['PgPgArgs']] pg: PostgreSQL specific server provided values
849
+ :param pulumi.Input[pulumi.InputType['PgPgArgs']] pg: postgresql.conf configuration values.
752
850
  :param pulumi.Input[pulumi.InputType['PgPgUserConfigArgs']] pg_user_config: Pg user configurable settings
753
851
  :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).
754
852
  :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.
755
853
  :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.
756
854
  :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
757
855
  :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.
758
- :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
856
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Use static public IP addresses.
759
857
  :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgTagArgs']]]] tags: Tags are key-value pairs that allow you to categorize services.
760
858
  :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.
761
859
  """
@@ -784,6 +882,10 @@ class Pg(pulumi.CustomResource):
784
882
  if resource_args is not None:
785
883
  __self__._internal_init(resource_name, opts, **resource_args.__dict__)
786
884
  else:
885
+ kwargs = kwargs or {}
886
+ def _setter(key, value):
887
+ kwargs[key] = value
888
+ PgArgs._configure(_setter, **kwargs)
787
889
  __self__._internal_init(resource_name, *args, **kwargs)
788
890
 
789
891
  def _internal_init(__self__,
@@ -815,13 +917,20 @@ class Pg(pulumi.CustomResource):
815
917
 
816
918
  __props__.__dict__["additional_disk_space"] = additional_disk_space
817
919
  __props__.__dict__["cloud_name"] = cloud_name
818
- if disk_space is not None and not opts.urn:
819
- 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)
820
- 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.""")
821
920
  __props__.__dict__["disk_space"] = disk_space
822
921
  __props__.__dict__["maintenance_window_dow"] = maintenance_window_dow
823
922
  __props__.__dict__["maintenance_window_time"] = maintenance_window_time
923
+ if pg is not None and not isinstance(pg, PgPgArgs):
924
+ pg = pg or {}
925
+ def _setter(key, value):
926
+ pg[key] = value
927
+ PgPgArgs._configure(_setter, **pg)
824
928
  __props__.__dict__["pg"] = pg
929
+ if pg_user_config is not None and not isinstance(pg_user_config, PgPgUserConfigArgs):
930
+ pg_user_config = pg_user_config or {}
931
+ def _setter(key, value):
932
+ pg_user_config[key] = value
933
+ PgPgUserConfigArgs._configure(_setter, **pg_user_config)
825
934
  __props__.__dict__["pg_user_config"] = pg_user_config
826
935
  if plan is None and not opts.urn:
827
936
  raise TypeError("Missing required property 'plan'")
@@ -903,7 +1012,7 @@ class Pg(pulumi.CustomResource):
903
1012
  :param pulumi.Input[str] disk_space_used: Disk space that service is currently using
904
1013
  :param pulumi.Input[str] maintenance_window_dow: Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
905
1014
  :param pulumi.Input[str] maintenance_window_time: Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
906
- :param pulumi.Input[pulumi.InputType['PgPgArgs']] pg: PostgreSQL specific server provided values
1015
+ :param pulumi.Input[pulumi.InputType['PgPgArgs']] pg: postgresql.conf configuration values.
907
1016
  :param pulumi.Input[pulumi.InputType['PgPgUserConfigArgs']] pg_user_config: Pg user configurable settings
908
1017
  :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).
909
1018
  :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.
@@ -917,7 +1026,7 @@ class Pg(pulumi.CustomResource):
917
1026
  :param pulumi.Input[str] service_uri: URI for connecting to the service. Service specific info is under "kafka", "pg", etc.
918
1027
  :param pulumi.Input[str] service_username: Username used for connecting to the service, if applicable
919
1028
  :param pulumi.Input[str] state: Service state. One of `POWEROFF`, `REBALANCING`, `REBUILDING` or `RUNNING`
920
- :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
1029
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Use static public IP addresses.
921
1030
  :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PgTagArgs']]]] tags: Tags are key-value pairs that allow you to categorize services.
922
1031
  :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.
923
1032
  """
@@ -1041,7 +1150,7 @@ class Pg(pulumi.CustomResource):
1041
1150
  @pulumi.getter
1042
1151
  def pg(self) -> pulumi.Output['outputs.PgPg']:
1043
1152
  """
1044
- PostgreSQL specific server provided values
1153
+ postgresql.conf configuration values.
1045
1154
  """
1046
1155
  return pulumi.get(self, "pg")
1047
1156
 
@@ -1153,7 +1262,7 @@ class Pg(pulumi.CustomResource):
1153
1262
  @pulumi.getter(name="staticIps")
1154
1263
  def static_ips(self) -> pulumi.Output[Optional[Sequence[str]]]:
1155
1264
  """
1156
- 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
1265
+ Use static public IP addresses.
1157
1266
  """
1158
1267
  return pulumi.get(self, "static_ips")
1159
1268
 
@@ -6,7 +6,7 @@ import copy
6
6
  import warnings
7
7
  import pulumi
8
8
  import pulumi.runtime
9
- from typing import Any, Mapping, Optional, Sequence, Union, overload
9
+ from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload
10
10
  from . import _utilities
11
11
 
12
12
  __all__ = ['PgDatabaseArgs', 'PgDatabase']
@@ -30,15 +30,34 @@ class PgDatabaseArgs:
30
30
  :param pulumi.Input[bool] termination_protection: It is a Terraform client-side deletion protections, which prevents the database from being deleted by Terraform. It is
31
31
  recommended to enable this for any production databases containing critical data. The default value is `false`.
32
32
  """
33
- pulumi.set(__self__, "database_name", database_name)
34
- pulumi.set(__self__, "project", project)
35
- pulumi.set(__self__, "service_name", service_name)
33
+ PgDatabaseArgs._configure(
34
+ lambda key, value: pulumi.set(__self__, key, value),
35
+ database_name=database_name,
36
+ project=project,
37
+ service_name=service_name,
38
+ lc_collate=lc_collate,
39
+ lc_ctype=lc_ctype,
40
+ termination_protection=termination_protection,
41
+ )
42
+ @staticmethod
43
+ def _configure(
44
+ _setter: Callable[[Any, Any], None],
45
+ database_name: pulumi.Input[str],
46
+ project: pulumi.Input[str],
47
+ service_name: pulumi.Input[str],
48
+ lc_collate: Optional[pulumi.Input[str]] = None,
49
+ lc_ctype: Optional[pulumi.Input[str]] = None,
50
+ termination_protection: Optional[pulumi.Input[bool]] = None,
51
+ opts: Optional[pulumi.ResourceOptions]=None):
52
+ _setter("database_name", database_name)
53
+ _setter("project", project)
54
+ _setter("service_name", service_name)
36
55
  if lc_collate is not None:
37
- pulumi.set(__self__, "lc_collate", lc_collate)
56
+ _setter("lc_collate", lc_collate)
38
57
  if lc_ctype is not None:
39
- pulumi.set(__self__, "lc_ctype", lc_ctype)
58
+ _setter("lc_ctype", lc_ctype)
40
59
  if termination_protection is not None:
41
- pulumi.set(__self__, "termination_protection", termination_protection)
60
+ _setter("termination_protection", termination_protection)
42
61
 
43
62
  @property
44
63
  @pulumi.getter(name="databaseName")
@@ -133,18 +152,37 @@ class _PgDatabaseState:
133
152
  :param pulumi.Input[bool] termination_protection: It is a Terraform client-side deletion protections, which prevents the database from being deleted by Terraform. It is
134
153
  recommended to enable this for any production databases containing critical data. The default value is `false`.
135
154
  """
155
+ _PgDatabaseState._configure(
156
+ lambda key, value: pulumi.set(__self__, key, value),
157
+ database_name=database_name,
158
+ lc_collate=lc_collate,
159
+ lc_ctype=lc_ctype,
160
+ project=project,
161
+ service_name=service_name,
162
+ termination_protection=termination_protection,
163
+ )
164
+ @staticmethod
165
+ def _configure(
166
+ _setter: Callable[[Any, Any], None],
167
+ database_name: Optional[pulumi.Input[str]] = None,
168
+ lc_collate: Optional[pulumi.Input[str]] = None,
169
+ lc_ctype: Optional[pulumi.Input[str]] = None,
170
+ project: Optional[pulumi.Input[str]] = None,
171
+ service_name: Optional[pulumi.Input[str]] = None,
172
+ termination_protection: Optional[pulumi.Input[bool]] = None,
173
+ opts: Optional[pulumi.ResourceOptions]=None):
136
174
  if database_name is not None:
137
- pulumi.set(__self__, "database_name", database_name)
175
+ _setter("database_name", database_name)
138
176
  if lc_collate is not None:
139
- pulumi.set(__self__, "lc_collate", lc_collate)
177
+ _setter("lc_collate", lc_collate)
140
178
  if lc_ctype is not None:
141
- pulumi.set(__self__, "lc_ctype", lc_ctype)
179
+ _setter("lc_ctype", lc_ctype)
142
180
  if project is not None:
143
- pulumi.set(__self__, "project", project)
181
+ _setter("project", project)
144
182
  if service_name is not None:
145
- pulumi.set(__self__, "service_name", service_name)
183
+ _setter("service_name", service_name)
146
184
  if termination_protection is not None:
147
- pulumi.set(__self__, "termination_protection", termination_protection)
185
+ _setter("termination_protection", termination_protection)
148
186
 
149
187
  @property
150
188
  @pulumi.getter(name="databaseName")
@@ -300,6 +338,10 @@ class PgDatabase(pulumi.CustomResource):
300
338
  if resource_args is not None:
301
339
  __self__._internal_init(resource_name, opts, **resource_args.__dict__)
302
340
  else:
341
+ kwargs = kwargs or {}
342
+ def _setter(key, value):
343
+ kwargs[key] = value
344
+ PgDatabaseArgs._configure(_setter, **kwargs)
303
345
  __self__._internal_init(resource_name, *args, **kwargs)
304
346
 
305
347
  def _internal_init(__self__,
pulumi_aiven/pg_user.py CHANGED
@@ -6,7 +6,7 @@ import copy
6
6
  import warnings
7
7
  import pulumi
8
8
  import pulumi.runtime
9
- from typing import Any, Mapping, Optional, Sequence, Union, overload
9
+ from typing import Any, Callable, Mapping, Optional, Sequence, Union, overload
10
10
  from . import _utilities
11
11
 
12
12
  __all__ = ['PgUserArgs', 'PgUser']
@@ -27,13 +27,30 @@ class PgUserArgs:
27
27
  :param pulumi.Input[str] password: The password of the PG User ( not applicable for all services ).
28
28
  :param pulumi.Input[bool] pg_allow_replication: Defines whether replication is allowed. This property cannot be changed, doing so forces recreation of the resource.
29
29
  """
30
- pulumi.set(__self__, "project", project)
31
- pulumi.set(__self__, "service_name", service_name)
32
- pulumi.set(__self__, "username", username)
30
+ PgUserArgs._configure(
31
+ lambda key, value: pulumi.set(__self__, key, value),
32
+ project=project,
33
+ service_name=service_name,
34
+ username=username,
35
+ password=password,
36
+ pg_allow_replication=pg_allow_replication,
37
+ )
38
+ @staticmethod
39
+ def _configure(
40
+ _setter: Callable[[Any, Any], None],
41
+ project: pulumi.Input[str],
42
+ service_name: pulumi.Input[str],
43
+ username: pulumi.Input[str],
44
+ password: Optional[pulumi.Input[str]] = None,
45
+ pg_allow_replication: Optional[pulumi.Input[bool]] = None,
46
+ opts: Optional[pulumi.ResourceOptions]=None):
47
+ _setter("project", project)
48
+ _setter("service_name", service_name)
49
+ _setter("username", username)
33
50
  if password is not None:
34
- pulumi.set(__self__, "password", password)
51
+ _setter("password", password)
35
52
  if pg_allow_replication is not None:
36
- pulumi.set(__self__, "pg_allow_replication", pg_allow_replication)
53
+ _setter("pg_allow_replication", pg_allow_replication)
37
54
 
38
55
  @property
39
56
  @pulumi.getter
@@ -118,22 +135,45 @@ class _PgUserState:
118
135
  :param pulumi.Input[str] type: Type of the user account. Tells whether the user is the primary account or a regular account.
119
136
  :param pulumi.Input[str] username: The actual name of the PG User. 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.
120
137
  """
138
+ _PgUserState._configure(
139
+ lambda key, value: pulumi.set(__self__, key, value),
140
+ access_cert=access_cert,
141
+ access_key=access_key,
142
+ password=password,
143
+ pg_allow_replication=pg_allow_replication,
144
+ project=project,
145
+ service_name=service_name,
146
+ type=type,
147
+ username=username,
148
+ )
149
+ @staticmethod
150
+ def _configure(
151
+ _setter: Callable[[Any, Any], None],
152
+ access_cert: Optional[pulumi.Input[str]] = None,
153
+ access_key: Optional[pulumi.Input[str]] = None,
154
+ password: Optional[pulumi.Input[str]] = None,
155
+ pg_allow_replication: Optional[pulumi.Input[bool]] = None,
156
+ project: Optional[pulumi.Input[str]] = None,
157
+ service_name: Optional[pulumi.Input[str]] = None,
158
+ type: Optional[pulumi.Input[str]] = None,
159
+ username: Optional[pulumi.Input[str]] = None,
160
+ opts: Optional[pulumi.ResourceOptions]=None):
121
161
  if access_cert is not None:
122
- pulumi.set(__self__, "access_cert", access_cert)
162
+ _setter("access_cert", access_cert)
123
163
  if access_key is not None:
124
- pulumi.set(__self__, "access_key", access_key)
164
+ _setter("access_key", access_key)
125
165
  if password is not None:
126
- pulumi.set(__self__, "password", password)
166
+ _setter("password", password)
127
167
  if pg_allow_replication is not None:
128
- pulumi.set(__self__, "pg_allow_replication", pg_allow_replication)
168
+ _setter("pg_allow_replication", pg_allow_replication)
129
169
  if project is not None:
130
- pulumi.set(__self__, "project", project)
170
+ _setter("project", project)
131
171
  if service_name is not None:
132
- pulumi.set(__self__, "service_name", service_name)
172
+ _setter("service_name", service_name)
133
173
  if type is not None:
134
- pulumi.set(__self__, "type", type)
174
+ _setter("type", type)
135
175
  if username is not None:
136
- pulumi.set(__self__, "username", username)
176
+ _setter("username", username)
137
177
 
138
178
  @property
139
179
  @pulumi.getter(name="accessCert")
@@ -311,6 +351,10 @@ class PgUser(pulumi.CustomResource):
311
351
  if resource_args is not None:
312
352
  __self__._internal_init(resource_name, opts, **resource_args.__dict__)
313
353
  else:
354
+ kwargs = kwargs or {}
355
+ def _setter(key, value):
356
+ kwargs[key] = value
357
+ PgUserArgs._configure(_setter, **kwargs)
314
358
  __self__._internal_init(resource_name, *args, **kwargs)
315
359
 
316
360
  def _internal_init(__self__,