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
@@ -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__ = ['BillingGroupArgs', 'BillingGroup']
@@ -47,39 +47,76 @@ class BillingGroupArgs:
47
47
  :param pulumi.Input[str] vat_id: VAT id
48
48
  :param pulumi.Input[str] zip_code: Zip Code
49
49
  """
50
+ BillingGroupArgs._configure(
51
+ lambda key, value: pulumi.set(__self__, key, value),
52
+ account_id=account_id,
53
+ address_lines=address_lines,
54
+ billing_currency=billing_currency,
55
+ billing_emails=billing_emails,
56
+ billing_extra_text=billing_extra_text,
57
+ card_id=card_id,
58
+ city=city,
59
+ company=company,
60
+ copy_from_billing_group=copy_from_billing_group,
61
+ country_code=country_code,
62
+ name=name,
63
+ parent_id=parent_id,
64
+ state=state,
65
+ vat_id=vat_id,
66
+ zip_code=zip_code,
67
+ )
68
+ @staticmethod
69
+ def _configure(
70
+ _setter: Callable[[Any, Any], None],
71
+ account_id: Optional[pulumi.Input[str]] = None,
72
+ address_lines: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
73
+ billing_currency: Optional[pulumi.Input[str]] = None,
74
+ billing_emails: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
75
+ billing_extra_text: Optional[pulumi.Input[str]] = None,
76
+ card_id: Optional[pulumi.Input[str]] = None,
77
+ city: Optional[pulumi.Input[str]] = None,
78
+ company: Optional[pulumi.Input[str]] = None,
79
+ copy_from_billing_group: Optional[pulumi.Input[str]] = None,
80
+ country_code: Optional[pulumi.Input[str]] = None,
81
+ name: Optional[pulumi.Input[str]] = None,
82
+ parent_id: Optional[pulumi.Input[str]] = None,
83
+ state: Optional[pulumi.Input[str]] = None,
84
+ vat_id: Optional[pulumi.Input[str]] = None,
85
+ zip_code: Optional[pulumi.Input[str]] = None,
86
+ opts: Optional[pulumi.ResourceOptions]=None):
50
87
  if account_id is not None:
51
88
  warnings.warn("""Use parent_id instead. This field will be removed in the next major release.""", DeprecationWarning)
52
89
  pulumi.log.warn("""account_id is deprecated: Use parent_id instead. This field will be removed in the next major release.""")
53
90
  if account_id is not None:
54
- pulumi.set(__self__, "account_id", account_id)
91
+ _setter("account_id", account_id)
55
92
  if address_lines is not None:
56
- pulumi.set(__self__, "address_lines", address_lines)
93
+ _setter("address_lines", address_lines)
57
94
  if billing_currency is not None:
58
- pulumi.set(__self__, "billing_currency", billing_currency)
95
+ _setter("billing_currency", billing_currency)
59
96
  if billing_emails is not None:
60
- pulumi.set(__self__, "billing_emails", billing_emails)
97
+ _setter("billing_emails", billing_emails)
61
98
  if billing_extra_text is not None:
62
- pulumi.set(__self__, "billing_extra_text", billing_extra_text)
99
+ _setter("billing_extra_text", billing_extra_text)
63
100
  if card_id is not None:
64
- pulumi.set(__self__, "card_id", card_id)
101
+ _setter("card_id", card_id)
65
102
  if city is not None:
66
- pulumi.set(__self__, "city", city)
103
+ _setter("city", city)
67
104
  if company is not None:
68
- pulumi.set(__self__, "company", company)
105
+ _setter("company", company)
69
106
  if copy_from_billing_group is not None:
70
- pulumi.set(__self__, "copy_from_billing_group", copy_from_billing_group)
107
+ _setter("copy_from_billing_group", copy_from_billing_group)
71
108
  if country_code is not None:
72
- pulumi.set(__self__, "country_code", country_code)
109
+ _setter("country_code", country_code)
73
110
  if name is not None:
74
- pulumi.set(__self__, "name", name)
111
+ _setter("name", name)
75
112
  if parent_id is not None:
76
- pulumi.set(__self__, "parent_id", parent_id)
113
+ _setter("parent_id", parent_id)
77
114
  if state is not None:
78
- pulumi.set(__self__, "state", state)
115
+ _setter("state", state)
79
116
  if vat_id is not None:
80
- pulumi.set(__self__, "vat_id", vat_id)
117
+ _setter("vat_id", vat_id)
81
118
  if zip_code is not None:
82
- pulumi.set(__self__, "zip_code", zip_code)
119
+ _setter("zip_code", zip_code)
83
120
 
84
121
  @property
85
122
  @pulumi.getter(name="accountId")
@@ -301,39 +338,76 @@ class _BillingGroupState:
301
338
  :param pulumi.Input[str] vat_id: VAT id
302
339
  :param pulumi.Input[str] zip_code: Zip Code
303
340
  """
341
+ _BillingGroupState._configure(
342
+ lambda key, value: pulumi.set(__self__, key, value),
343
+ account_id=account_id,
344
+ address_lines=address_lines,
345
+ billing_currency=billing_currency,
346
+ billing_emails=billing_emails,
347
+ billing_extra_text=billing_extra_text,
348
+ card_id=card_id,
349
+ city=city,
350
+ company=company,
351
+ copy_from_billing_group=copy_from_billing_group,
352
+ country_code=country_code,
353
+ name=name,
354
+ parent_id=parent_id,
355
+ state=state,
356
+ vat_id=vat_id,
357
+ zip_code=zip_code,
358
+ )
359
+ @staticmethod
360
+ def _configure(
361
+ _setter: Callable[[Any, Any], None],
362
+ account_id: Optional[pulumi.Input[str]] = None,
363
+ address_lines: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
364
+ billing_currency: Optional[pulumi.Input[str]] = None,
365
+ billing_emails: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
366
+ billing_extra_text: Optional[pulumi.Input[str]] = None,
367
+ card_id: Optional[pulumi.Input[str]] = None,
368
+ city: Optional[pulumi.Input[str]] = None,
369
+ company: Optional[pulumi.Input[str]] = None,
370
+ copy_from_billing_group: Optional[pulumi.Input[str]] = None,
371
+ country_code: Optional[pulumi.Input[str]] = None,
372
+ name: Optional[pulumi.Input[str]] = None,
373
+ parent_id: Optional[pulumi.Input[str]] = None,
374
+ state: Optional[pulumi.Input[str]] = None,
375
+ vat_id: Optional[pulumi.Input[str]] = None,
376
+ zip_code: Optional[pulumi.Input[str]] = None,
377
+ opts: Optional[pulumi.ResourceOptions]=None):
304
378
  if account_id is not None:
305
379
  warnings.warn("""Use parent_id instead. This field will be removed in the next major release.""", DeprecationWarning)
306
380
  pulumi.log.warn("""account_id is deprecated: Use parent_id instead. This field will be removed in the next major release.""")
307
381
  if account_id is not None:
308
- pulumi.set(__self__, "account_id", account_id)
382
+ _setter("account_id", account_id)
309
383
  if address_lines is not None:
310
- pulumi.set(__self__, "address_lines", address_lines)
384
+ _setter("address_lines", address_lines)
311
385
  if billing_currency is not None:
312
- pulumi.set(__self__, "billing_currency", billing_currency)
386
+ _setter("billing_currency", billing_currency)
313
387
  if billing_emails is not None:
314
- pulumi.set(__self__, "billing_emails", billing_emails)
388
+ _setter("billing_emails", billing_emails)
315
389
  if billing_extra_text is not None:
316
- pulumi.set(__self__, "billing_extra_text", billing_extra_text)
390
+ _setter("billing_extra_text", billing_extra_text)
317
391
  if card_id is not None:
318
- pulumi.set(__self__, "card_id", card_id)
392
+ _setter("card_id", card_id)
319
393
  if city is not None:
320
- pulumi.set(__self__, "city", city)
394
+ _setter("city", city)
321
395
  if company is not None:
322
- pulumi.set(__self__, "company", company)
396
+ _setter("company", company)
323
397
  if copy_from_billing_group is not None:
324
- pulumi.set(__self__, "copy_from_billing_group", copy_from_billing_group)
398
+ _setter("copy_from_billing_group", copy_from_billing_group)
325
399
  if country_code is not None:
326
- pulumi.set(__self__, "country_code", country_code)
400
+ _setter("country_code", country_code)
327
401
  if name is not None:
328
- pulumi.set(__self__, "name", name)
402
+ _setter("name", name)
329
403
  if parent_id is not None:
330
- pulumi.set(__self__, "parent_id", parent_id)
404
+ _setter("parent_id", parent_id)
331
405
  if state is not None:
332
- pulumi.set(__self__, "state", state)
406
+ _setter("state", state)
333
407
  if vat_id is not None:
334
- pulumi.set(__self__, "vat_id", vat_id)
408
+ _setter("vat_id", vat_id)
335
409
  if zip_code is not None:
336
- pulumi.set(__self__, "zip_code", zip_code)
410
+ _setter("zip_code", zip_code)
337
411
 
338
412
  @property
339
413
  @pulumi.getter(name="accountId")
@@ -620,6 +694,10 @@ class BillingGroup(pulumi.CustomResource):
620
694
  if resource_args is not None:
621
695
  __self__._internal_init(resource_name, opts, **resource_args.__dict__)
622
696
  else:
697
+ kwargs = kwargs or {}
698
+ def _setter(key, value):
699
+ kwargs[key] = value
700
+ BillingGroupArgs._configure(_setter, **kwargs)
623
701
  __self__._internal_init(resource_name, *args, **kwargs)
624
702
 
625
703
  def _internal_init(__self__,
@@ -649,9 +727,6 @@ class BillingGroup(pulumi.CustomResource):
649
727
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
650
728
  __props__ = BillingGroupArgs.__new__(BillingGroupArgs)
651
729
 
652
- if account_id is not None and not opts.urn:
653
- warnings.warn("""Use parent_id instead. This field will be removed in the next major release.""", DeprecationWarning)
654
- pulumi.log.warn("""account_id is deprecated: Use parent_id instead. This field will be removed in the next major release.""")
655
730
  __props__.__dict__["account_id"] = account_id
656
731
  __props__.__dict__["address_lines"] = address_lines
657
732
  __props__.__dict__["billing_currency"] = billing_currency
pulumi_aiven/cassandra.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 *
@@ -43,38 +43,73 @@ class CassandraArgs:
43
43
  :param pulumi.Input[str] maintenance_window_time: Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
44
44
  :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.
45
45
  :param pulumi.Input[Sequence[pulumi.Input['CassandraServiceIntegrationArgs']]] service_integrations: Service integrations to specify when creating a service. Not applied after initial service creation
46
- :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
46
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Use static public IP addresses.
47
47
  :param pulumi.Input[Sequence[pulumi.Input['CassandraTagArgs']]] tags: Tags are key-value pairs that allow you to categorize services.
48
48
  :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.
49
49
  """
50
- pulumi.set(__self__, "plan", plan)
51
- pulumi.set(__self__, "project", project)
52
- pulumi.set(__self__, "service_name", service_name)
50
+ CassandraArgs._configure(
51
+ lambda key, value: pulumi.set(__self__, key, value),
52
+ plan=plan,
53
+ project=project,
54
+ service_name=service_name,
55
+ additional_disk_space=additional_disk_space,
56
+ cassandra_user_config=cassandra_user_config,
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
+ project_vpc_id=project_vpc_id,
62
+ service_integrations=service_integrations,
63
+ static_ips=static_ips,
64
+ tags=tags,
65
+ termination_protection=termination_protection,
66
+ )
67
+ @staticmethod
68
+ def _configure(
69
+ _setter: Callable[[Any, Any], None],
70
+ plan: pulumi.Input[str],
71
+ project: pulumi.Input[str],
72
+ service_name: pulumi.Input[str],
73
+ additional_disk_space: Optional[pulumi.Input[str]] = None,
74
+ cassandra_user_config: Optional[pulumi.Input['CassandraCassandraUserConfigArgs']] = None,
75
+ cloud_name: Optional[pulumi.Input[str]] = None,
76
+ disk_space: Optional[pulumi.Input[str]] = None,
77
+ maintenance_window_dow: Optional[pulumi.Input[str]] = None,
78
+ maintenance_window_time: Optional[pulumi.Input[str]] = None,
79
+ project_vpc_id: Optional[pulumi.Input[str]] = None,
80
+ service_integrations: Optional[pulumi.Input[Sequence[pulumi.Input['CassandraServiceIntegrationArgs']]]] = None,
81
+ static_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
82
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input['CassandraTagArgs']]]] = None,
83
+ termination_protection: Optional[pulumi.Input[bool]] = None,
84
+ opts: Optional[pulumi.ResourceOptions]=None):
85
+ _setter("plan", plan)
86
+ _setter("project", project)
87
+ _setter("service_name", service_name)
53
88
  if additional_disk_space is not None:
54
- pulumi.set(__self__, "additional_disk_space", additional_disk_space)
89
+ _setter("additional_disk_space", additional_disk_space)
55
90
  if cassandra_user_config is not None:
56
- pulumi.set(__self__, "cassandra_user_config", cassandra_user_config)
91
+ _setter("cassandra_user_config", cassandra_user_config)
57
92
  if cloud_name is not None:
58
- pulumi.set(__self__, "cloud_name", cloud_name)
93
+ _setter("cloud_name", cloud_name)
59
94
  if disk_space is not None:
60
95
  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)
61
96
  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.""")
62
97
  if disk_space is not None:
63
- pulumi.set(__self__, "disk_space", disk_space)
98
+ _setter("disk_space", disk_space)
64
99
  if maintenance_window_dow is not None:
65
- pulumi.set(__self__, "maintenance_window_dow", maintenance_window_dow)
100
+ _setter("maintenance_window_dow", maintenance_window_dow)
66
101
  if maintenance_window_time is not None:
67
- pulumi.set(__self__, "maintenance_window_time", maintenance_window_time)
102
+ _setter("maintenance_window_time", maintenance_window_time)
68
103
  if project_vpc_id is not None:
69
- pulumi.set(__self__, "project_vpc_id", project_vpc_id)
104
+ _setter("project_vpc_id", project_vpc_id)
70
105
  if service_integrations is not None:
71
- pulumi.set(__self__, "service_integrations", service_integrations)
106
+ _setter("service_integrations", service_integrations)
72
107
  if static_ips is not None:
73
- pulumi.set(__self__, "static_ips", static_ips)
108
+ _setter("static_ips", static_ips)
74
109
  if tags is not None:
75
- pulumi.set(__self__, "tags", tags)
110
+ _setter("tags", tags)
76
111
  if termination_protection is not None:
77
- pulumi.set(__self__, "termination_protection", termination_protection)
112
+ _setter("termination_protection", termination_protection)
78
113
 
79
114
  @property
80
115
  @pulumi.getter
@@ -215,7 +250,7 @@ class CassandraArgs:
215
250
  @pulumi.getter(name="staticIps")
216
251
  def static_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
217
252
  """
218
- 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
253
+ Use static public IP addresses.
219
254
  """
220
255
  return pulumi.get(self, "static_ips")
221
256
 
@@ -282,7 +317,7 @@ class _CassandraState:
282
317
  Input properties used for looking up and filtering Cassandra resources.
283
318
  :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.
284
319
  :param pulumi.Input['CassandraCassandraUserConfigArgs'] cassandra_user_config: Cassandra user configurable settings
285
- :param pulumi.Input[Sequence[pulumi.Input['CassandraCassandraArgs']]] cassandras: Cassandra server provided values
320
+ :param pulumi.Input[Sequence[pulumi.Input['CassandraCassandraArgs']]] cassandras: cassandra configuration values.
286
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).
287
322
  :param pulumi.Input[Sequence[pulumi.Input['CassandraComponentArgs']]] components: Service component information objects
288
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.
@@ -304,67 +339,128 @@ class _CassandraState:
304
339
  :param pulumi.Input[str] service_uri: URI for connecting to the service. Service specific info is under "kafka", "pg", etc.
305
340
  :param pulumi.Input[str] service_username: Username used for connecting to the service, if applicable
306
341
  :param pulumi.Input[str] state: Service state. One of `POWEROFF`, `REBALANCING`, `REBUILDING` or `RUNNING`
307
- :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
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Use static public IP addresses.
308
343
  :param pulumi.Input[Sequence[pulumi.Input['CassandraTagArgs']]] tags: Tags are key-value pairs that allow you to categorize services.
309
344
  :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.
310
345
  """
346
+ _CassandraState._configure(
347
+ lambda key, value: pulumi.set(__self__, key, value),
348
+ additional_disk_space=additional_disk_space,
349
+ cassandra_user_config=cassandra_user_config,
350
+ cassandras=cassandras,
351
+ cloud_name=cloud_name,
352
+ components=components,
353
+ disk_space=disk_space,
354
+ disk_space_cap=disk_space_cap,
355
+ disk_space_default=disk_space_default,
356
+ disk_space_step=disk_space_step,
357
+ disk_space_used=disk_space_used,
358
+ maintenance_window_dow=maintenance_window_dow,
359
+ maintenance_window_time=maintenance_window_time,
360
+ plan=plan,
361
+ project=project,
362
+ project_vpc_id=project_vpc_id,
363
+ service_host=service_host,
364
+ service_integrations=service_integrations,
365
+ service_name=service_name,
366
+ service_password=service_password,
367
+ service_port=service_port,
368
+ service_type=service_type,
369
+ service_uri=service_uri,
370
+ service_username=service_username,
371
+ state=state,
372
+ static_ips=static_ips,
373
+ tags=tags,
374
+ termination_protection=termination_protection,
375
+ )
376
+ @staticmethod
377
+ def _configure(
378
+ _setter: Callable[[Any, Any], None],
379
+ additional_disk_space: Optional[pulumi.Input[str]] = None,
380
+ cassandra_user_config: Optional[pulumi.Input['CassandraCassandraUserConfigArgs']] = None,
381
+ cassandras: Optional[pulumi.Input[Sequence[pulumi.Input['CassandraCassandraArgs']]]] = None,
382
+ cloud_name: Optional[pulumi.Input[str]] = None,
383
+ components: Optional[pulumi.Input[Sequence[pulumi.Input['CassandraComponentArgs']]]] = None,
384
+ disk_space: Optional[pulumi.Input[str]] = None,
385
+ disk_space_cap: Optional[pulumi.Input[str]] = None,
386
+ disk_space_default: Optional[pulumi.Input[str]] = None,
387
+ disk_space_step: Optional[pulumi.Input[str]] = None,
388
+ disk_space_used: Optional[pulumi.Input[str]] = None,
389
+ maintenance_window_dow: Optional[pulumi.Input[str]] = None,
390
+ maintenance_window_time: Optional[pulumi.Input[str]] = None,
391
+ plan: Optional[pulumi.Input[str]] = None,
392
+ project: Optional[pulumi.Input[str]] = None,
393
+ project_vpc_id: Optional[pulumi.Input[str]] = None,
394
+ service_host: Optional[pulumi.Input[str]] = None,
395
+ service_integrations: Optional[pulumi.Input[Sequence[pulumi.Input['CassandraServiceIntegrationArgs']]]] = None,
396
+ service_name: Optional[pulumi.Input[str]] = None,
397
+ service_password: Optional[pulumi.Input[str]] = None,
398
+ service_port: Optional[pulumi.Input[int]] = None,
399
+ service_type: Optional[pulumi.Input[str]] = None,
400
+ service_uri: Optional[pulumi.Input[str]] = None,
401
+ service_username: Optional[pulumi.Input[str]] = None,
402
+ state: Optional[pulumi.Input[str]] = None,
403
+ static_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
404
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input['CassandraTagArgs']]]] = None,
405
+ termination_protection: Optional[pulumi.Input[bool]] = None,
406
+ opts: Optional[pulumi.ResourceOptions]=None):
311
407
  if additional_disk_space is not None:
312
- pulumi.set(__self__, "additional_disk_space", additional_disk_space)
408
+ _setter("additional_disk_space", additional_disk_space)
313
409
  if cassandra_user_config is not None:
314
- pulumi.set(__self__, "cassandra_user_config", cassandra_user_config)
410
+ _setter("cassandra_user_config", cassandra_user_config)
315
411
  if cassandras is not None:
316
- pulumi.set(__self__, "cassandras", cassandras)
412
+ _setter("cassandras", cassandras)
317
413
  if cloud_name is not None:
318
- pulumi.set(__self__, "cloud_name", cloud_name)
414
+ _setter("cloud_name", cloud_name)
319
415
  if components is not None:
320
- pulumi.set(__self__, "components", components)
416
+ _setter("components", components)
321
417
  if disk_space is not None:
322
418
  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)
323
419
  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.""")
324
420
  if disk_space is not None:
325
- pulumi.set(__self__, "disk_space", disk_space)
421
+ _setter("disk_space", disk_space)
326
422
  if disk_space_cap is not None:
327
- pulumi.set(__self__, "disk_space_cap", disk_space_cap)
423
+ _setter("disk_space_cap", disk_space_cap)
328
424
  if disk_space_default is not None:
329
- pulumi.set(__self__, "disk_space_default", disk_space_default)
425
+ _setter("disk_space_default", disk_space_default)
330
426
  if disk_space_step is not None:
331
- pulumi.set(__self__, "disk_space_step", disk_space_step)
427
+ _setter("disk_space_step", disk_space_step)
332
428
  if disk_space_used is not None:
333
- pulumi.set(__self__, "disk_space_used", disk_space_used)
429
+ _setter("disk_space_used", disk_space_used)
334
430
  if maintenance_window_dow is not None:
335
- pulumi.set(__self__, "maintenance_window_dow", maintenance_window_dow)
431
+ _setter("maintenance_window_dow", maintenance_window_dow)
336
432
  if maintenance_window_time is not None:
337
- pulumi.set(__self__, "maintenance_window_time", maintenance_window_time)
433
+ _setter("maintenance_window_time", maintenance_window_time)
338
434
  if plan is not None:
339
- pulumi.set(__self__, "plan", plan)
435
+ _setter("plan", plan)
340
436
  if project is not None:
341
- pulumi.set(__self__, "project", project)
437
+ _setter("project", project)
342
438
  if project_vpc_id is not None:
343
- pulumi.set(__self__, "project_vpc_id", project_vpc_id)
439
+ _setter("project_vpc_id", project_vpc_id)
344
440
  if service_host is not None:
345
- pulumi.set(__self__, "service_host", service_host)
441
+ _setter("service_host", service_host)
346
442
  if service_integrations is not None:
347
- pulumi.set(__self__, "service_integrations", service_integrations)
443
+ _setter("service_integrations", service_integrations)
348
444
  if service_name is not None:
349
- pulumi.set(__self__, "service_name", service_name)
445
+ _setter("service_name", service_name)
350
446
  if service_password is not None:
351
- pulumi.set(__self__, "service_password", service_password)
447
+ _setter("service_password", service_password)
352
448
  if service_port is not None:
353
- pulumi.set(__self__, "service_port", service_port)
449
+ _setter("service_port", service_port)
354
450
  if service_type is not None:
355
- pulumi.set(__self__, "service_type", service_type)
451
+ _setter("service_type", service_type)
356
452
  if service_uri is not None:
357
- pulumi.set(__self__, "service_uri", service_uri)
453
+ _setter("service_uri", service_uri)
358
454
  if service_username is not None:
359
- pulumi.set(__self__, "service_username", service_username)
455
+ _setter("service_username", service_username)
360
456
  if state is not None:
361
- pulumi.set(__self__, "state", state)
457
+ _setter("state", state)
362
458
  if static_ips is not None:
363
- pulumi.set(__self__, "static_ips", static_ips)
459
+ _setter("static_ips", static_ips)
364
460
  if tags is not None:
365
- pulumi.set(__self__, "tags", tags)
461
+ _setter("tags", tags)
366
462
  if termination_protection is not None:
367
- pulumi.set(__self__, "termination_protection", termination_protection)
463
+ _setter("termination_protection", termination_protection)
368
464
 
369
465
  @property
370
466
  @pulumi.getter(name="additionalDiskSpace")
@@ -394,7 +490,7 @@ class _CassandraState:
394
490
  @pulumi.getter
395
491
  def cassandras(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['CassandraCassandraArgs']]]]:
396
492
  """
397
- Cassandra server provided values
493
+ cassandra configuration values.
398
494
  """
399
495
  return pulumi.get(self, "cassandras")
400
496
 
@@ -661,7 +757,7 @@ class _CassandraState:
661
757
  @pulumi.getter(name="staticIps")
662
758
  def static_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
663
759
  """
664
- 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
760
+ Use static public IP addresses.
665
761
  """
666
762
  return pulumi.get(self, "static_ips")
667
763
 
@@ -757,7 +853,7 @@ class Cassandra(pulumi.CustomResource):
757
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.
758
854
  :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraServiceIntegrationArgs']]]] service_integrations: Service integrations to specify when creating a service. Not applied after initial service creation
759
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.
760
- :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.
761
857
  :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraTagArgs']]]] tags: Tags are key-value pairs that allow you to categorize services.
762
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.
763
859
  """
@@ -807,6 +903,10 @@ class Cassandra(pulumi.CustomResource):
807
903
  if resource_args is not None:
808
904
  __self__._internal_init(resource_name, opts, **resource_args.__dict__)
809
905
  else:
906
+ kwargs = kwargs or {}
907
+ def _setter(key, value):
908
+ kwargs[key] = value
909
+ CassandraArgs._configure(_setter, **kwargs)
810
910
  __self__._internal_init(resource_name, *args, **kwargs)
811
911
 
812
912
  def _internal_init(__self__,
@@ -836,11 +936,13 @@ class Cassandra(pulumi.CustomResource):
836
936
  __props__ = CassandraArgs.__new__(CassandraArgs)
837
937
 
838
938
  __props__.__dict__["additional_disk_space"] = additional_disk_space
939
+ if cassandra_user_config is not None and not isinstance(cassandra_user_config, CassandraCassandraUserConfigArgs):
940
+ cassandra_user_config = cassandra_user_config or {}
941
+ def _setter(key, value):
942
+ cassandra_user_config[key] = value
943
+ CassandraCassandraUserConfigArgs._configure(_setter, **cassandra_user_config)
839
944
  __props__.__dict__["cassandra_user_config"] = cassandra_user_config
840
945
  __props__.__dict__["cloud_name"] = cloud_name
841
- if disk_space is not None and not opts.urn:
842
- 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)
843
- 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.""")
844
946
  __props__.__dict__["disk_space"] = disk_space
845
947
  __props__.__dict__["maintenance_window_dow"] = maintenance_window_dow
846
948
  __props__.__dict__["maintenance_window_time"] = maintenance_window_time
@@ -919,7 +1021,7 @@ class Cassandra(pulumi.CustomResource):
919
1021
  :param pulumi.ResourceOptions opts: Options for the resource.
920
1022
  :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.
921
1023
  :param pulumi.Input[pulumi.InputType['CassandraCassandraUserConfigArgs']] cassandra_user_config: Cassandra user configurable settings
922
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraCassandraArgs']]]] cassandras: Cassandra server provided values
1024
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraCassandraArgs']]]] cassandras: cassandra configuration values.
923
1025
  :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).
924
1026
  :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraComponentArgs']]]] components: Service component information objects
925
1027
  :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.
@@ -941,7 +1043,7 @@ class Cassandra(pulumi.CustomResource):
941
1043
  :param pulumi.Input[str] service_uri: URI for connecting to the service. Service specific info is under "kafka", "pg", etc.
942
1044
  :param pulumi.Input[str] service_username: Username used for connecting to the service, if applicable
943
1045
  :param pulumi.Input[str] state: Service state. One of `POWEROFF`, `REBALANCING`, `REBUILDING` or `RUNNING`
944
- :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
1046
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] static_ips: Use static public IP addresses.
945
1047
  :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CassandraTagArgs']]]] tags: Tags are key-value pairs that allow you to categorize services.
946
1048
  :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.
947
1049
  """
@@ -998,7 +1100,7 @@ class Cassandra(pulumi.CustomResource):
998
1100
  @pulumi.getter
999
1101
  def cassandras(self) -> pulumi.Output[Sequence['outputs.CassandraCassandra']]:
1000
1102
  """
1001
- Cassandra server provided values
1103
+ cassandra configuration values.
1002
1104
  """
1003
1105
  return pulumi.get(self, "cassandras")
1004
1106
 
@@ -1177,7 +1279,7 @@ class Cassandra(pulumi.CustomResource):
1177
1279
  @pulumi.getter(name="staticIps")
1178
1280
  def static_ips(self) -> pulumi.Output[Optional[Sequence[str]]]:
1179
1281
  """
1180
- 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
1282
+ Use static public IP addresses.
1181
1283
  """
1182
1284
  return pulumi.get(self, "static_ips")
1183
1285