pulumi-digitalocean 4.27.0__py3-none-any.whl → 4.39.0a1736833057__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-digitalocean might be problematic. Click here for more details.

Files changed (107) hide show
  1. pulumi_digitalocean/__init__.py +75 -0
  2. pulumi_digitalocean/_enums.py +131 -52
  3. pulumi_digitalocean/_inputs.py +5767 -399
  4. pulumi_digitalocean/_utilities.py +41 -5
  5. pulumi_digitalocean/app.py +199 -67
  6. pulumi_digitalocean/cdn.py +20 -23
  7. pulumi_digitalocean/certificate.py +45 -42
  8. pulumi_digitalocean/config/__init__.pyi +5 -0
  9. pulumi_digitalocean/config/vars.py +5 -0
  10. pulumi_digitalocean/container_registry.py +11 -6
  11. pulumi_digitalocean/container_registry_docker_credentials.py +53 -12
  12. pulumi_digitalocean/custom_image.py +13 -8
  13. pulumi_digitalocean/database_cluster.py +298 -120
  14. pulumi_digitalocean/database_connection_pool.py +15 -10
  15. pulumi_digitalocean/database_db.py +19 -12
  16. pulumi_digitalocean/database_firewall.py +78 -75
  17. pulumi_digitalocean/database_kafka_config.py +1040 -0
  18. pulumi_digitalocean/database_kafka_topic.py +66 -61
  19. pulumi_digitalocean/database_mongodb_config.py +452 -0
  20. pulumi_digitalocean/database_mysql_config.py +15 -12
  21. pulumi_digitalocean/database_opensearch_config.py +2069 -0
  22. pulumi_digitalocean/database_postgresql_config.py +2614 -0
  23. pulumi_digitalocean/database_redis_config.py +29 -12
  24. pulumi_digitalocean/database_replica.py +29 -24
  25. pulumi_digitalocean/database_user.py +90 -75
  26. pulumi_digitalocean/dns_record.py +13 -8
  27. pulumi_digitalocean/domain.py +7 -6
  28. pulumi_digitalocean/droplet.py +89 -31
  29. pulumi_digitalocean/droplet_autoscale.py +474 -0
  30. pulumi_digitalocean/droplet_snapshot.py +23 -14
  31. pulumi_digitalocean/firewall.py +118 -106
  32. pulumi_digitalocean/floating_ip.py +19 -16
  33. pulumi_digitalocean/floating_ip_assignment.py +19 -16
  34. pulumi_digitalocean/get_account.py +18 -9
  35. pulumi_digitalocean/get_app.py +57 -10
  36. pulumi_digitalocean/get_certificate.py +19 -9
  37. pulumi_digitalocean/get_container_registry.py +19 -9
  38. pulumi_digitalocean/get_database_ca.py +14 -9
  39. pulumi_digitalocean/get_database_cluster.py +119 -11
  40. pulumi_digitalocean/get_database_connection_pool.py +25 -9
  41. pulumi_digitalocean/get_database_replica.py +29 -9
  42. pulumi_digitalocean/get_database_user.py +21 -9
  43. pulumi_digitalocean/get_domain.py +16 -9
  44. pulumi_digitalocean/get_domains.py +34 -27
  45. pulumi_digitalocean/get_droplet.py +66 -23
  46. pulumi_digitalocean/get_droplet_autoscale.py +197 -0
  47. pulumi_digitalocean/get_droplet_snapshot.py +36 -23
  48. pulumi_digitalocean/get_droplets.py +80 -54
  49. pulumi_digitalocean/get_firewall.py +29 -13
  50. pulumi_digitalocean/get_floating_ip.py +16 -9
  51. pulumi_digitalocean/get_image.py +42 -27
  52. pulumi_digitalocean/get_images.py +56 -53
  53. pulumi_digitalocean/get_kubernetes_cluster.py +53 -6
  54. pulumi_digitalocean/get_kubernetes_versions.py +43 -41
  55. pulumi_digitalocean/get_load_balancer.py +81 -17
  56. pulumi_digitalocean/get_project.py +23 -9
  57. pulumi_digitalocean/get_projects.py +56 -53
  58. pulumi_digitalocean/get_record.py +23 -9
  59. pulumi_digitalocean/get_records.py +62 -13
  60. pulumi_digitalocean/get_region.py +17 -9
  61. pulumi_digitalocean/get_regions.py +56 -53
  62. pulumi_digitalocean/get_reserved_ip.py +16 -9
  63. pulumi_digitalocean/get_reserved_ipv6.py +118 -0
  64. pulumi_digitalocean/get_sizes.py +24 -13
  65. pulumi_digitalocean/get_spaces_bucket.py +18 -9
  66. pulumi_digitalocean/get_spaces_bucket_object.py +41 -14
  67. pulumi_digitalocean/get_spaces_bucket_objects.py +26 -5
  68. pulumi_digitalocean/get_spaces_buckets.py +48 -45
  69. pulumi_digitalocean/get_ssh_key.py +27 -19
  70. pulumi_digitalocean/get_ssh_keys.py +40 -37
  71. pulumi_digitalocean/get_tag.py +31 -19
  72. pulumi_digitalocean/get_tags.py +32 -25
  73. pulumi_digitalocean/get_volume.py +35 -23
  74. pulumi_digitalocean/get_volume_snapshot.py +35 -21
  75. pulumi_digitalocean/get_vpc.py +33 -23
  76. pulumi_digitalocean/get_vpc_peering.py +244 -0
  77. pulumi_digitalocean/kubernetes_cluster.py +86 -35
  78. pulumi_digitalocean/kubernetes_node_pool.py +46 -43
  79. pulumi_digitalocean/load_balancer.py +320 -157
  80. pulumi_digitalocean/monitor_alert.py +17 -12
  81. pulumi_digitalocean/outputs.py +3419 -344
  82. pulumi_digitalocean/project.py +19 -16
  83. pulumi_digitalocean/project_resources.py +11 -8
  84. pulumi_digitalocean/provider.py +5 -0
  85. pulumi_digitalocean/pulumi-plugin.json +2 -1
  86. pulumi_digitalocean/reserved_ip.py +19 -16
  87. pulumi_digitalocean/reserved_ip_assignment.py +19 -16
  88. pulumi_digitalocean/reserved_ipv6.py +232 -0
  89. pulumi_digitalocean/reserved_ipv6_assignment.py +171 -0
  90. pulumi_digitalocean/spaces_bucket.py +70 -79
  91. pulumi_digitalocean/spaces_bucket_cors_configuration.py +30 -25
  92. pulumi_digitalocean/spaces_bucket_object.py +11 -12
  93. pulumi_digitalocean/spaces_bucket_policy.py +21 -16
  94. pulumi_digitalocean/ssh_key.py +19 -10
  95. pulumi_digitalocean/tag.py +13 -10
  96. pulumi_digitalocean/uptime_alert.py +10 -5
  97. pulumi_digitalocean/uptime_check.py +5 -0
  98. pulumi_digitalocean/volume.py +47 -50
  99. pulumi_digitalocean/volume_attachment.py +25 -20
  100. pulumi_digitalocean/volume_snapshot.py +17 -10
  101. pulumi_digitalocean/vpc.py +27 -22
  102. pulumi_digitalocean/vpc_peering.py +378 -0
  103. {pulumi_digitalocean-4.27.0.dist-info → pulumi_digitalocean-4.39.0a1736833057.dist-info}/METADATA +7 -6
  104. pulumi_digitalocean-4.39.0a1736833057.dist-info/RECORD +108 -0
  105. {pulumi_digitalocean-4.27.0.dist-info → pulumi_digitalocean-4.39.0a1736833057.dist-info}/WHEEL +1 -1
  106. pulumi_digitalocean-4.27.0.dist-info/RECORD +0 -97
  107. {pulumi_digitalocean-4.27.0.dist-info → pulumi_digitalocean-4.39.0a1736833057.dist-info}/top_level.txt +0 -0
@@ -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 ._enums import *
@@ -33,18 +38,17 @@ class DatabaseClusterArgs:
33
38
  version: Optional[pulumi.Input[str]] = None):
34
39
  """
35
40
  The set of arguments for constructing a DatabaseCluster resource.
36
- :param pulumi.Input[str] engine: Database engine used by the cluster (ex. `pg` for PostreSQL, `mysql` for MySQL, `redis` for Redis, `mongodb` for MongoDB, or `kafka` for Kafka).
41
+ :param pulumi.Input[str] engine: Database engine used by the cluster (ex. `pg` for PostgreSQL, `mysql` for MySQL, `redis` for Redis, `mongodb` for MongoDB, or `kafka` for Kafka).
37
42
  :param pulumi.Input[int] node_count: Number of nodes that will be included in the cluster. For `kafka` clusters, this must be 3.
38
43
  :param pulumi.Input[Union[str, 'Region']] region: DigitalOcean region where the cluster will reside.
39
44
  :param pulumi.Input[Union[str, 'DatabaseSlug']] size: Database Droplet size associated with the cluster (ex. `db-s-1vcpu-1gb`). See here for a [list of valid size slugs](https://docs.digitalocean.com/reference/api/api-reference/#tag/Databases).
40
- :param pulumi.Input['DatabaseClusterBackupRestoreArgs'] backup_restore: Create a new database cluster based on a backup of an existing cluster.
41
45
  :param pulumi.Input[str] eviction_policy: A string specifying the eviction policy for a Redis cluster. Valid values are: `noeviction`, `allkeys_lru`, `allkeys_random`, `volatile_lru`, `volatile_random`, or `volatile_ttl`.
42
46
  :param pulumi.Input[Sequence[pulumi.Input['DatabaseClusterMaintenanceWindowArgs']]] maintenance_windows: Defines when the automatic maintenance should be performed for the database cluster.
43
47
  :param pulumi.Input[str] name: The name of the database cluster.
44
48
  :param pulumi.Input[str] private_network_uuid: The ID of the VPC where the database cluster will be located.
45
49
  :param pulumi.Input[str] project_id: The ID of the project that the database cluster is assigned to. If excluded when creating a new database cluster, it will be assigned to your default project.
46
50
  :param pulumi.Input[str] sql_mode: A comma separated string specifying the SQL modes for a MySQL cluster.
47
- :param pulumi.Input[str] storage_size_mib: Defines the disk size, in MiB, allocated to the cluster. This can be adjusted on MySQL and PostreSQL clusters based on predefined ranges for each slug/droplet size.
51
+ :param pulumi.Input[str] storage_size_mib: Defines the disk size, in MiB, allocated to the cluster. This can be adjusted on MySQL and PostgreSQL clusters based on predefined ranges for each slug/droplet size.
48
52
  :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tag names to be applied to the database cluster.
49
53
  :param pulumi.Input[str] version: Engine version used by the cluster (ex. `14` for PostgreSQL 14).
50
54
  When this value is changed, a call to the [Upgrade major Version for a Database](https://docs.digitalocean.com/reference/api/api-reference/#operation/databases_update_major_version) API operation is made with the new version.
@@ -78,7 +82,7 @@ class DatabaseClusterArgs:
78
82
  @pulumi.getter
79
83
  def engine(self) -> pulumi.Input[str]:
80
84
  """
81
- Database engine used by the cluster (ex. `pg` for PostreSQL, `mysql` for MySQL, `redis` for Redis, `mongodb` for MongoDB, or `kafka` for Kafka).
85
+ Database engine used by the cluster (ex. `pg` for PostgreSQL, `mysql` for MySQL, `redis` for Redis, `mongodb` for MongoDB, or `kafka` for Kafka).
82
86
  """
83
87
  return pulumi.get(self, "engine")
84
88
 
@@ -125,9 +129,6 @@ class DatabaseClusterArgs:
125
129
  @property
126
130
  @pulumi.getter(name="backupRestore")
127
131
  def backup_restore(self) -> Optional[pulumi.Input['DatabaseClusterBackupRestoreArgs']]:
128
- """
129
- Create a new database cluster based on a backup of an existing cluster.
130
- """
131
132
  return pulumi.get(self, "backup_restore")
132
133
 
133
134
  @backup_restore.setter
@@ -210,7 +211,7 @@ class DatabaseClusterArgs:
210
211
  @pulumi.getter(name="storageSizeMib")
211
212
  def storage_size_mib(self) -> Optional[pulumi.Input[str]]:
212
213
  """
213
- Defines the disk size, in MiB, allocated to the cluster. This can be adjusted on MySQL and PostreSQL clusters based on predefined ranges for each slug/droplet size.
214
+ Defines the disk size, in MiB, allocated to the cluster. This can be adjusted on MySQL and PostgreSQL clusters based on predefined ranges for each slug/droplet size.
214
215
  """
215
216
  return pulumi.get(self, "storage_size_mib")
216
217
 
@@ -267,15 +268,20 @@ class _DatabaseClusterState:
267
268
  sql_mode: Optional[pulumi.Input[str]] = None,
268
269
  storage_size_mib: Optional[pulumi.Input[str]] = None,
269
270
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
271
+ ui_database: Optional[pulumi.Input[str]] = None,
272
+ ui_host: Optional[pulumi.Input[str]] = None,
273
+ ui_password: Optional[pulumi.Input[str]] = None,
274
+ ui_port: Optional[pulumi.Input[int]] = None,
275
+ ui_uri: Optional[pulumi.Input[str]] = None,
276
+ ui_user: Optional[pulumi.Input[str]] = None,
270
277
  uri: Optional[pulumi.Input[str]] = None,
271
278
  user: Optional[pulumi.Input[str]] = None,
272
279
  version: Optional[pulumi.Input[str]] = None):
273
280
  """
274
281
  Input properties used for looking up and filtering DatabaseCluster resources.
275
- :param pulumi.Input['DatabaseClusterBackupRestoreArgs'] backup_restore: Create a new database cluster based on a backup of an existing cluster.
276
282
  :param pulumi.Input[str] cluster_urn: The uniform resource name of the database cluster.
277
283
  :param pulumi.Input[str] database: Name of the cluster's default database.
278
- :param pulumi.Input[str] engine: Database engine used by the cluster (ex. `pg` for PostreSQL, `mysql` for MySQL, `redis` for Redis, `mongodb` for MongoDB, or `kafka` for Kafka).
284
+ :param pulumi.Input[str] engine: Database engine used by the cluster (ex. `pg` for PostgreSQL, `mysql` for MySQL, `redis` for Redis, `mongodb` for MongoDB, or `kafka` for Kafka).
279
285
  :param pulumi.Input[str] eviction_policy: A string specifying the eviction policy for a Redis cluster. Valid values are: `noeviction`, `allkeys_lru`, `allkeys_random`, `volatile_lru`, `volatile_random`, or `volatile_ttl`.
280
286
  :param pulumi.Input[str] host: Database cluster's hostname.
281
287
  :param pulumi.Input[Sequence[pulumi.Input['DatabaseClusterMaintenanceWindowArgs']]] maintenance_windows: Defines when the automatic maintenance should be performed for the database cluster.
@@ -290,8 +296,14 @@ class _DatabaseClusterState:
290
296
  :param pulumi.Input[Union[str, 'Region']] region: DigitalOcean region where the cluster will reside.
291
297
  :param pulumi.Input[Union[str, 'DatabaseSlug']] size: Database Droplet size associated with the cluster (ex. `db-s-1vcpu-1gb`). See here for a [list of valid size slugs](https://docs.digitalocean.com/reference/api/api-reference/#tag/Databases).
292
298
  :param pulumi.Input[str] sql_mode: A comma separated string specifying the SQL modes for a MySQL cluster.
293
- :param pulumi.Input[str] storage_size_mib: Defines the disk size, in MiB, allocated to the cluster. This can be adjusted on MySQL and PostreSQL clusters based on predefined ranges for each slug/droplet size.
299
+ :param pulumi.Input[str] storage_size_mib: Defines the disk size, in MiB, allocated to the cluster. This can be adjusted on MySQL and PostgreSQL clusters based on predefined ranges for each slug/droplet size.
294
300
  :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tag names to be applied to the database cluster.
301
+ :param pulumi.Input[str] ui_database: Name of the OpenSearch dashboard db.
302
+ :param pulumi.Input[str] ui_host: Hostname for the OpenSearch dashboard.
303
+ :param pulumi.Input[str] ui_password: Password for the OpenSearch dashboard's default user.
304
+ :param pulumi.Input[int] ui_port: Network port that the OpenSearch dashboard is listening on.
305
+ :param pulumi.Input[str] ui_uri: The full URI for connecting to the OpenSearch dashboard.
306
+ :param pulumi.Input[str] ui_user: Username for OpenSearch dashboard's default user.
295
307
  :param pulumi.Input[str] uri: The full URI for connecting to the database cluster.
296
308
  :param pulumi.Input[str] user: Username for the cluster's default user.
297
309
  :param pulumi.Input[str] version: Engine version used by the cluster (ex. `14` for PostgreSQL 14).
@@ -337,6 +349,18 @@ class _DatabaseClusterState:
337
349
  pulumi.set(__self__, "storage_size_mib", storage_size_mib)
338
350
  if tags is not None:
339
351
  pulumi.set(__self__, "tags", tags)
352
+ if ui_database is not None:
353
+ pulumi.set(__self__, "ui_database", ui_database)
354
+ if ui_host is not None:
355
+ pulumi.set(__self__, "ui_host", ui_host)
356
+ if ui_password is not None:
357
+ pulumi.set(__self__, "ui_password", ui_password)
358
+ if ui_port is not None:
359
+ pulumi.set(__self__, "ui_port", ui_port)
360
+ if ui_uri is not None:
361
+ pulumi.set(__self__, "ui_uri", ui_uri)
362
+ if ui_user is not None:
363
+ pulumi.set(__self__, "ui_user", ui_user)
340
364
  if uri is not None:
341
365
  pulumi.set(__self__, "uri", uri)
342
366
  if user is not None:
@@ -347,9 +371,6 @@ class _DatabaseClusterState:
347
371
  @property
348
372
  @pulumi.getter(name="backupRestore")
349
373
  def backup_restore(self) -> Optional[pulumi.Input['DatabaseClusterBackupRestoreArgs']]:
350
- """
351
- Create a new database cluster based on a backup of an existing cluster.
352
- """
353
374
  return pulumi.get(self, "backup_restore")
354
375
 
355
376
  @backup_restore.setter
@@ -384,7 +405,7 @@ class _DatabaseClusterState:
384
405
  @pulumi.getter
385
406
  def engine(self) -> Optional[pulumi.Input[str]]:
386
407
  """
387
- Database engine used by the cluster (ex. `pg` for PostreSQL, `mysql` for MySQL, `redis` for Redis, `mongodb` for MongoDB, or `kafka` for Kafka).
408
+ Database engine used by the cluster (ex. `pg` for PostgreSQL, `mysql` for MySQL, `redis` for Redis, `mongodb` for MongoDB, or `kafka` for Kafka).
388
409
  """
389
410
  return pulumi.get(self, "engine")
390
411
 
@@ -564,7 +585,7 @@ class _DatabaseClusterState:
564
585
  @pulumi.getter(name="storageSizeMib")
565
586
  def storage_size_mib(self) -> Optional[pulumi.Input[str]]:
566
587
  """
567
- Defines the disk size, in MiB, allocated to the cluster. This can be adjusted on MySQL and PostreSQL clusters based on predefined ranges for each slug/droplet size.
588
+ Defines the disk size, in MiB, allocated to the cluster. This can be adjusted on MySQL and PostgreSQL clusters based on predefined ranges for each slug/droplet size.
568
589
  """
569
590
  return pulumi.get(self, "storage_size_mib")
570
591
 
@@ -584,6 +605,78 @@ class _DatabaseClusterState:
584
605
  def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
585
606
  pulumi.set(self, "tags", value)
586
607
 
608
+ @property
609
+ @pulumi.getter(name="uiDatabase")
610
+ def ui_database(self) -> Optional[pulumi.Input[str]]:
611
+ """
612
+ Name of the OpenSearch dashboard db.
613
+ """
614
+ return pulumi.get(self, "ui_database")
615
+
616
+ @ui_database.setter
617
+ def ui_database(self, value: Optional[pulumi.Input[str]]):
618
+ pulumi.set(self, "ui_database", value)
619
+
620
+ @property
621
+ @pulumi.getter(name="uiHost")
622
+ def ui_host(self) -> Optional[pulumi.Input[str]]:
623
+ """
624
+ Hostname for the OpenSearch dashboard.
625
+ """
626
+ return pulumi.get(self, "ui_host")
627
+
628
+ @ui_host.setter
629
+ def ui_host(self, value: Optional[pulumi.Input[str]]):
630
+ pulumi.set(self, "ui_host", value)
631
+
632
+ @property
633
+ @pulumi.getter(name="uiPassword")
634
+ def ui_password(self) -> Optional[pulumi.Input[str]]:
635
+ """
636
+ Password for the OpenSearch dashboard's default user.
637
+ """
638
+ return pulumi.get(self, "ui_password")
639
+
640
+ @ui_password.setter
641
+ def ui_password(self, value: Optional[pulumi.Input[str]]):
642
+ pulumi.set(self, "ui_password", value)
643
+
644
+ @property
645
+ @pulumi.getter(name="uiPort")
646
+ def ui_port(self) -> Optional[pulumi.Input[int]]:
647
+ """
648
+ Network port that the OpenSearch dashboard is listening on.
649
+ """
650
+ return pulumi.get(self, "ui_port")
651
+
652
+ @ui_port.setter
653
+ def ui_port(self, value: Optional[pulumi.Input[int]]):
654
+ pulumi.set(self, "ui_port", value)
655
+
656
+ @property
657
+ @pulumi.getter(name="uiUri")
658
+ def ui_uri(self) -> Optional[pulumi.Input[str]]:
659
+ """
660
+ The full URI for connecting to the OpenSearch dashboard.
661
+ """
662
+ return pulumi.get(self, "ui_uri")
663
+
664
+ @ui_uri.setter
665
+ def ui_uri(self, value: Optional[pulumi.Input[str]]):
666
+ pulumi.set(self, "ui_uri", value)
667
+
668
+ @property
669
+ @pulumi.getter(name="uiUser")
670
+ def ui_user(self) -> Optional[pulumi.Input[str]]:
671
+ """
672
+ Username for OpenSearch dashboard's default user.
673
+ """
674
+ return pulumi.get(self, "ui_user")
675
+
676
+ @ui_user.setter
677
+ def ui_user(self, value: Optional[pulumi.Input[str]]):
678
+ pulumi.set(self, "ui_user", value)
679
+
587
680
  @property
588
681
  @pulumi.getter
589
682
  def uri(self) -> Optional[pulumi.Input[str]]:
@@ -627,10 +720,10 @@ class DatabaseCluster(pulumi.CustomResource):
627
720
  def __init__(__self__,
628
721
  resource_name: str,
629
722
  opts: Optional[pulumi.ResourceOptions] = None,
630
- backup_restore: Optional[pulumi.Input[pulumi.InputType['DatabaseClusterBackupRestoreArgs']]] = None,
723
+ backup_restore: Optional[pulumi.Input[Union['DatabaseClusterBackupRestoreArgs', 'DatabaseClusterBackupRestoreArgsDict']]] = None,
631
724
  engine: Optional[pulumi.Input[str]] = None,
632
725
  eviction_policy: Optional[pulumi.Input[str]] = None,
633
- maintenance_windows: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DatabaseClusterMaintenanceWindowArgs']]]]] = None,
726
+ maintenance_windows: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DatabaseClusterMaintenanceWindowArgs', 'DatabaseClusterMaintenanceWindowArgsDict']]]]] = None,
634
727
  name: Optional[pulumi.Input[str]] = None,
635
728
  node_count: Optional[pulumi.Input[int]] = None,
636
729
  private_network_uuid: Optional[pulumi.Input[str]] = None,
@@ -648,107 +741,116 @@ class DatabaseCluster(pulumi.CustomResource):
648
741
  ## Example Usage
649
742
 
650
743
  ### Create a new PostgreSQL database cluster
651
- <!--Start PulumiCodeChooser -->
652
744
  ```python
653
745
  import pulumi
654
746
  import pulumi_digitalocean as digitalocean
655
747
 
656
748
  postgres_example = digitalocean.DatabaseCluster("postgres-example",
749
+ name="example-postgres-cluster",
657
750
  engine="pg",
658
- node_count=1,
659
- region="nyc1",
660
- size="db-s-1vcpu-1gb",
661
- version="15")
751
+ version="15",
752
+ size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,
753
+ region=digitalocean.Region.NYC1,
754
+ node_count=1)
662
755
  ```
663
- <!--End PulumiCodeChooser -->
664
756
 
665
757
  ### Create a new MySQL database cluster
666
- <!--Start PulumiCodeChooser -->
667
758
  ```python
668
759
  import pulumi
669
760
  import pulumi_digitalocean as digitalocean
670
761
 
671
762
  mysql_example = digitalocean.DatabaseCluster("mysql-example",
763
+ name="example-mysql-cluster",
672
764
  engine="mysql",
673
- node_count=1,
674
- region="nyc1",
675
- size="db-s-1vcpu-1gb",
676
- version="8")
765
+ version="8",
766
+ size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,
767
+ region=digitalocean.Region.NYC1,
768
+ node_count=1)
677
769
  ```
678
- <!--End PulumiCodeChooser -->
679
770
 
680
771
  ### Create a new Redis database cluster
681
- <!--Start PulumiCodeChooser -->
682
772
  ```python
683
773
  import pulumi
684
774
  import pulumi_digitalocean as digitalocean
685
775
 
686
776
  redis_example = digitalocean.DatabaseCluster("redis-example",
777
+ name="example-redis-cluster",
687
778
  engine="redis",
688
- node_count=1,
689
- region="nyc1",
690
- size="db-s-1vcpu-1gb",
691
- version="7")
779
+ version="7",
780
+ size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,
781
+ region=digitalocean.Region.NYC1,
782
+ node_count=1)
692
783
  ```
693
- <!--End PulumiCodeChooser -->
694
784
 
695
785
  ### Create a new Kafka database cluster
696
- <!--Start PulumiCodeChooser -->
697
786
  ```python
698
787
  import pulumi
699
788
  import pulumi_digitalocean as digitalocean
700
789
 
701
790
  kafka_example = digitalocean.DatabaseCluster("kafka-example",
791
+ name="example-kafka-cluster",
702
792
  engine="kafka",
703
- node_count=3,
704
- region="nyc1",
793
+ version="3.5",
705
794
  size="db-s-2vcpu-2gb",
706
- version="3.5")
795
+ region=digitalocean.Region.NYC1,
796
+ node_count=3)
707
797
  ```
708
- <!--End PulumiCodeChooser -->
709
798
 
710
799
  ### Create a new MongoDB database cluster
711
- <!--Start PulumiCodeChooser -->
712
800
  ```python
713
801
  import pulumi
714
802
  import pulumi_digitalocean as digitalocean
715
803
 
716
804
  mongodb_example = digitalocean.DatabaseCluster("mongodb-example",
805
+ name="example-mongo-cluster",
717
806
  engine="mongodb",
718
- node_count=1,
719
- region="nyc3",
720
- size="db-s-1vcpu-1gb",
721
- version="6")
807
+ version="6",
808
+ size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,
809
+ region=digitalocean.Region.NYC3,
810
+ node_count=1)
811
+ ```
812
+
813
+ ### Create a new OpenSearch database cluster
814
+ ```python
815
+ import pulumi
816
+ import pulumi_digitalocean as digitalocean
817
+
818
+ opensearch_example = digitalocean.DatabaseCluster("opensearch-example",
819
+ name="example-opensearch-cluster",
820
+ engine="opensearch",
821
+ version="2",
822
+ size=digitalocean.DatabaseSlug.D_B_1_VPCU2_GB,
823
+ region=digitalocean.Region.NYC3,
824
+ node_count=1)
722
825
  ```
723
- <!--End PulumiCodeChooser -->
724
826
 
725
827
  ## Create a new database cluster based on a backup of an existing cluster.
726
828
 
727
- <!--Start PulumiCodeChooser -->
728
829
  ```python
729
830
  import pulumi
730
831
  import pulumi_digitalocean as digitalocean
731
832
 
732
833
  doby = digitalocean.DatabaseCluster("doby",
834
+ name="dobydb",
733
835
  engine="pg",
734
- version="11",
735
- size="db-s-1vcpu-2gb",
736
- region="nyc1",
836
+ version="15",
837
+ size=digitalocean.DatabaseSlug.D_B_1_VPCU2_GB,
838
+ region=digitalocean.Region.NYC1,
737
839
  node_count=1,
738
840
  tags=["production"])
739
- doby_backup = digitalocean.DatabaseCluster("dobyBackup",
841
+ doby_backup = digitalocean.DatabaseCluster("doby_backup",
842
+ name="dobydupe",
740
843
  engine="pg",
741
- version="11",
742
- size="db-s-1vcpu-2gb",
743
- region="nyc1",
844
+ version="15",
845
+ size=digitalocean.DatabaseSlug.D_B_1_VPCU2_GB,
846
+ region=digitalocean.Region.NYC1,
744
847
  node_count=1,
745
848
  tags=["production"],
746
- backup_restore=digitalocean.DatabaseClusterBackupRestoreArgs(
747
- database_name="dobydb",
748
- ),
749
- opts=pulumi.ResourceOptions(depends_on=[doby]))
849
+ backup_restore={
850
+ "database_name": "dobydb",
851
+ },
852
+ opts = pulumi.ResourceOptions(depends_on=[doby]))
750
853
  ```
751
- <!--End PulumiCodeChooser -->
752
854
 
753
855
  ## Import
754
856
 
@@ -760,10 +862,9 @@ class DatabaseCluster(pulumi.CustomResource):
760
862
 
761
863
  :param str resource_name: The name of the resource.
762
864
  :param pulumi.ResourceOptions opts: Options for the resource.
763
- :param pulumi.Input[pulumi.InputType['DatabaseClusterBackupRestoreArgs']] backup_restore: Create a new database cluster based on a backup of an existing cluster.
764
- :param pulumi.Input[str] engine: Database engine used by the cluster (ex. `pg` for PostreSQL, `mysql` for MySQL, `redis` for Redis, `mongodb` for MongoDB, or `kafka` for Kafka).
865
+ :param pulumi.Input[str] engine: Database engine used by the cluster (ex. `pg` for PostgreSQL, `mysql` for MySQL, `redis` for Redis, `mongodb` for MongoDB, or `kafka` for Kafka).
765
866
  :param pulumi.Input[str] eviction_policy: A string specifying the eviction policy for a Redis cluster. Valid values are: `noeviction`, `allkeys_lru`, `allkeys_random`, `volatile_lru`, `volatile_random`, or `volatile_ttl`.
766
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DatabaseClusterMaintenanceWindowArgs']]]] maintenance_windows: Defines when the automatic maintenance should be performed for the database cluster.
867
+ :param pulumi.Input[Sequence[pulumi.Input[Union['DatabaseClusterMaintenanceWindowArgs', 'DatabaseClusterMaintenanceWindowArgsDict']]]] maintenance_windows: Defines when the automatic maintenance should be performed for the database cluster.
767
868
  :param pulumi.Input[str] name: The name of the database cluster.
768
869
  :param pulumi.Input[int] node_count: Number of nodes that will be included in the cluster. For `kafka` clusters, this must be 3.
769
870
  :param pulumi.Input[str] private_network_uuid: The ID of the VPC where the database cluster will be located.
@@ -771,7 +872,7 @@ class DatabaseCluster(pulumi.CustomResource):
771
872
  :param pulumi.Input[Union[str, 'Region']] region: DigitalOcean region where the cluster will reside.
772
873
  :param pulumi.Input[Union[str, 'DatabaseSlug']] size: Database Droplet size associated with the cluster (ex. `db-s-1vcpu-1gb`). See here for a [list of valid size slugs](https://docs.digitalocean.com/reference/api/api-reference/#tag/Databases).
773
874
  :param pulumi.Input[str] sql_mode: A comma separated string specifying the SQL modes for a MySQL cluster.
774
- :param pulumi.Input[str] storage_size_mib: Defines the disk size, in MiB, allocated to the cluster. This can be adjusted on MySQL and PostreSQL clusters based on predefined ranges for each slug/droplet size.
875
+ :param pulumi.Input[str] storage_size_mib: Defines the disk size, in MiB, allocated to the cluster. This can be adjusted on MySQL and PostgreSQL clusters based on predefined ranges for each slug/droplet size.
775
876
  :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tag names to be applied to the database cluster.
776
877
  :param pulumi.Input[str] version: Engine version used by the cluster (ex. `14` for PostgreSQL 14).
777
878
  When this value is changed, a call to the [Upgrade major Version for a Database](https://docs.digitalocean.com/reference/api/api-reference/#operation/databases_update_major_version) API operation is made with the new version.
@@ -788,107 +889,116 @@ class DatabaseCluster(pulumi.CustomResource):
788
889
  ## Example Usage
789
890
 
790
891
  ### Create a new PostgreSQL database cluster
791
- <!--Start PulumiCodeChooser -->
792
892
  ```python
793
893
  import pulumi
794
894
  import pulumi_digitalocean as digitalocean
795
895
 
796
896
  postgres_example = digitalocean.DatabaseCluster("postgres-example",
897
+ name="example-postgres-cluster",
797
898
  engine="pg",
798
- node_count=1,
799
- region="nyc1",
800
- size="db-s-1vcpu-1gb",
801
- version="15")
899
+ version="15",
900
+ size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,
901
+ region=digitalocean.Region.NYC1,
902
+ node_count=1)
802
903
  ```
803
- <!--End PulumiCodeChooser -->
804
904
 
805
905
  ### Create a new MySQL database cluster
806
- <!--Start PulumiCodeChooser -->
807
906
  ```python
808
907
  import pulumi
809
908
  import pulumi_digitalocean as digitalocean
810
909
 
811
910
  mysql_example = digitalocean.DatabaseCluster("mysql-example",
911
+ name="example-mysql-cluster",
812
912
  engine="mysql",
813
- node_count=1,
814
- region="nyc1",
815
- size="db-s-1vcpu-1gb",
816
- version="8")
913
+ version="8",
914
+ size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,
915
+ region=digitalocean.Region.NYC1,
916
+ node_count=1)
817
917
  ```
818
- <!--End PulumiCodeChooser -->
819
918
 
820
919
  ### Create a new Redis database cluster
821
- <!--Start PulumiCodeChooser -->
822
920
  ```python
823
921
  import pulumi
824
922
  import pulumi_digitalocean as digitalocean
825
923
 
826
924
  redis_example = digitalocean.DatabaseCluster("redis-example",
925
+ name="example-redis-cluster",
827
926
  engine="redis",
828
- node_count=1,
829
- region="nyc1",
830
- size="db-s-1vcpu-1gb",
831
- version="7")
927
+ version="7",
928
+ size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,
929
+ region=digitalocean.Region.NYC1,
930
+ node_count=1)
832
931
  ```
833
- <!--End PulumiCodeChooser -->
834
932
 
835
933
  ### Create a new Kafka database cluster
836
- <!--Start PulumiCodeChooser -->
837
934
  ```python
838
935
  import pulumi
839
936
  import pulumi_digitalocean as digitalocean
840
937
 
841
938
  kafka_example = digitalocean.DatabaseCluster("kafka-example",
939
+ name="example-kafka-cluster",
842
940
  engine="kafka",
843
- node_count=3,
844
- region="nyc1",
941
+ version="3.5",
845
942
  size="db-s-2vcpu-2gb",
846
- version="3.5")
943
+ region=digitalocean.Region.NYC1,
944
+ node_count=3)
847
945
  ```
848
- <!--End PulumiCodeChooser -->
849
946
 
850
947
  ### Create a new MongoDB database cluster
851
- <!--Start PulumiCodeChooser -->
852
948
  ```python
853
949
  import pulumi
854
950
  import pulumi_digitalocean as digitalocean
855
951
 
856
952
  mongodb_example = digitalocean.DatabaseCluster("mongodb-example",
953
+ name="example-mongo-cluster",
857
954
  engine="mongodb",
858
- node_count=1,
859
- region="nyc3",
860
- size="db-s-1vcpu-1gb",
861
- version="6")
955
+ version="6",
956
+ size=digitalocean.DatabaseSlug.D_B_1_VPCU1_GB,
957
+ region=digitalocean.Region.NYC3,
958
+ node_count=1)
959
+ ```
960
+
961
+ ### Create a new OpenSearch database cluster
962
+ ```python
963
+ import pulumi
964
+ import pulumi_digitalocean as digitalocean
965
+
966
+ opensearch_example = digitalocean.DatabaseCluster("opensearch-example",
967
+ name="example-opensearch-cluster",
968
+ engine="opensearch",
969
+ version="2",
970
+ size=digitalocean.DatabaseSlug.D_B_1_VPCU2_GB,
971
+ region=digitalocean.Region.NYC3,
972
+ node_count=1)
862
973
  ```
863
- <!--End PulumiCodeChooser -->
864
974
 
865
975
  ## Create a new database cluster based on a backup of an existing cluster.
866
976
 
867
- <!--Start PulumiCodeChooser -->
868
977
  ```python
869
978
  import pulumi
870
979
  import pulumi_digitalocean as digitalocean
871
980
 
872
981
  doby = digitalocean.DatabaseCluster("doby",
982
+ name="dobydb",
873
983
  engine="pg",
874
- version="11",
875
- size="db-s-1vcpu-2gb",
876
- region="nyc1",
984
+ version="15",
985
+ size=digitalocean.DatabaseSlug.D_B_1_VPCU2_GB,
986
+ region=digitalocean.Region.NYC1,
877
987
  node_count=1,
878
988
  tags=["production"])
879
- doby_backup = digitalocean.DatabaseCluster("dobyBackup",
989
+ doby_backup = digitalocean.DatabaseCluster("doby_backup",
990
+ name="dobydupe",
880
991
  engine="pg",
881
- version="11",
882
- size="db-s-1vcpu-2gb",
883
- region="nyc1",
992
+ version="15",
993
+ size=digitalocean.DatabaseSlug.D_B_1_VPCU2_GB,
994
+ region=digitalocean.Region.NYC1,
884
995
  node_count=1,
885
996
  tags=["production"],
886
- backup_restore=digitalocean.DatabaseClusterBackupRestoreArgs(
887
- database_name="dobydb",
888
- ),
889
- opts=pulumi.ResourceOptions(depends_on=[doby]))
997
+ backup_restore={
998
+ "database_name": "dobydb",
999
+ },
1000
+ opts = pulumi.ResourceOptions(depends_on=[doby]))
890
1001
  ```
891
- <!--End PulumiCodeChooser -->
892
1002
 
893
1003
  ## Import
894
1004
 
@@ -913,10 +1023,10 @@ class DatabaseCluster(pulumi.CustomResource):
913
1023
  def _internal_init(__self__,
914
1024
  resource_name: str,
915
1025
  opts: Optional[pulumi.ResourceOptions] = None,
916
- backup_restore: Optional[pulumi.Input[pulumi.InputType['DatabaseClusterBackupRestoreArgs']]] = None,
1026
+ backup_restore: Optional[pulumi.Input[Union['DatabaseClusterBackupRestoreArgs', 'DatabaseClusterBackupRestoreArgsDict']]] = None,
917
1027
  engine: Optional[pulumi.Input[str]] = None,
918
1028
  eviction_policy: Optional[pulumi.Input[str]] = None,
919
- maintenance_windows: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DatabaseClusterMaintenanceWindowArgs']]]]] = None,
1029
+ maintenance_windows: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DatabaseClusterMaintenanceWindowArgs', 'DatabaseClusterMaintenanceWindowArgsDict']]]]] = None,
920
1030
  name: Optional[pulumi.Input[str]] = None,
921
1031
  node_count: Optional[pulumi.Input[int]] = None,
922
1032
  private_network_uuid: Optional[pulumi.Input[str]] = None,
@@ -965,9 +1075,15 @@ class DatabaseCluster(pulumi.CustomResource):
965
1075
  __props__.__dict__["port"] = None
966
1076
  __props__.__dict__["private_host"] = None
967
1077
  __props__.__dict__["private_uri"] = None
1078
+ __props__.__dict__["ui_database"] = None
1079
+ __props__.__dict__["ui_host"] = None
1080
+ __props__.__dict__["ui_password"] = None
1081
+ __props__.__dict__["ui_port"] = None
1082
+ __props__.__dict__["ui_uri"] = None
1083
+ __props__.__dict__["ui_user"] = None
968
1084
  __props__.__dict__["uri"] = None
969
1085
  __props__.__dict__["user"] = None
970
- secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["password", "privateUri", "uri"])
1086
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["password", "privateUri", "uiPassword", "uiUri", "uri"])
971
1087
  opts = pulumi.ResourceOptions.merge(opts, secret_opts)
972
1088
  super(DatabaseCluster, __self__).__init__(
973
1089
  'digitalocean:index/databaseCluster:DatabaseCluster',
@@ -979,13 +1095,13 @@ class DatabaseCluster(pulumi.CustomResource):
979
1095
  def get(resource_name: str,
980
1096
  id: pulumi.Input[str],
981
1097
  opts: Optional[pulumi.ResourceOptions] = None,
982
- backup_restore: Optional[pulumi.Input[pulumi.InputType['DatabaseClusterBackupRestoreArgs']]] = None,
1098
+ backup_restore: Optional[pulumi.Input[Union['DatabaseClusterBackupRestoreArgs', 'DatabaseClusterBackupRestoreArgsDict']]] = None,
983
1099
  cluster_urn: Optional[pulumi.Input[str]] = None,
984
1100
  database: Optional[pulumi.Input[str]] = None,
985
1101
  engine: Optional[pulumi.Input[str]] = None,
986
1102
  eviction_policy: Optional[pulumi.Input[str]] = None,
987
1103
  host: Optional[pulumi.Input[str]] = None,
988
- maintenance_windows: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DatabaseClusterMaintenanceWindowArgs']]]]] = None,
1104
+ maintenance_windows: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DatabaseClusterMaintenanceWindowArgs', 'DatabaseClusterMaintenanceWindowArgsDict']]]]] = None,
989
1105
  name: Optional[pulumi.Input[str]] = None,
990
1106
  node_count: Optional[pulumi.Input[int]] = None,
991
1107
  password: Optional[pulumi.Input[str]] = None,
@@ -999,6 +1115,12 @@ class DatabaseCluster(pulumi.CustomResource):
999
1115
  sql_mode: Optional[pulumi.Input[str]] = None,
1000
1116
  storage_size_mib: Optional[pulumi.Input[str]] = None,
1001
1117
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1118
+ ui_database: Optional[pulumi.Input[str]] = None,
1119
+ ui_host: Optional[pulumi.Input[str]] = None,
1120
+ ui_password: Optional[pulumi.Input[str]] = None,
1121
+ ui_port: Optional[pulumi.Input[int]] = None,
1122
+ ui_uri: Optional[pulumi.Input[str]] = None,
1123
+ ui_user: Optional[pulumi.Input[str]] = None,
1002
1124
  uri: Optional[pulumi.Input[str]] = None,
1003
1125
  user: Optional[pulumi.Input[str]] = None,
1004
1126
  version: Optional[pulumi.Input[str]] = None) -> 'DatabaseCluster':
@@ -1009,13 +1131,12 @@ class DatabaseCluster(pulumi.CustomResource):
1009
1131
  :param str resource_name: The unique name of the resulting resource.
1010
1132
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1011
1133
  :param pulumi.ResourceOptions opts: Options for the resource.
1012
- :param pulumi.Input[pulumi.InputType['DatabaseClusterBackupRestoreArgs']] backup_restore: Create a new database cluster based on a backup of an existing cluster.
1013
1134
  :param pulumi.Input[str] cluster_urn: The uniform resource name of the database cluster.
1014
1135
  :param pulumi.Input[str] database: Name of the cluster's default database.
1015
- :param pulumi.Input[str] engine: Database engine used by the cluster (ex. `pg` for PostreSQL, `mysql` for MySQL, `redis` for Redis, `mongodb` for MongoDB, or `kafka` for Kafka).
1136
+ :param pulumi.Input[str] engine: Database engine used by the cluster (ex. `pg` for PostgreSQL, `mysql` for MySQL, `redis` for Redis, `mongodb` for MongoDB, or `kafka` for Kafka).
1016
1137
  :param pulumi.Input[str] eviction_policy: A string specifying the eviction policy for a Redis cluster. Valid values are: `noeviction`, `allkeys_lru`, `allkeys_random`, `volatile_lru`, `volatile_random`, or `volatile_ttl`.
1017
1138
  :param pulumi.Input[str] host: Database cluster's hostname.
1018
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DatabaseClusterMaintenanceWindowArgs']]]] maintenance_windows: Defines when the automatic maintenance should be performed for the database cluster.
1139
+ :param pulumi.Input[Sequence[pulumi.Input[Union['DatabaseClusterMaintenanceWindowArgs', 'DatabaseClusterMaintenanceWindowArgsDict']]]] maintenance_windows: Defines when the automatic maintenance should be performed for the database cluster.
1019
1140
  :param pulumi.Input[str] name: The name of the database cluster.
1020
1141
  :param pulumi.Input[int] node_count: Number of nodes that will be included in the cluster. For `kafka` clusters, this must be 3.
1021
1142
  :param pulumi.Input[str] password: Password for the cluster's default user.
@@ -1027,8 +1148,14 @@ class DatabaseCluster(pulumi.CustomResource):
1027
1148
  :param pulumi.Input[Union[str, 'Region']] region: DigitalOcean region where the cluster will reside.
1028
1149
  :param pulumi.Input[Union[str, 'DatabaseSlug']] size: Database Droplet size associated with the cluster (ex. `db-s-1vcpu-1gb`). See here for a [list of valid size slugs](https://docs.digitalocean.com/reference/api/api-reference/#tag/Databases).
1029
1150
  :param pulumi.Input[str] sql_mode: A comma separated string specifying the SQL modes for a MySQL cluster.
1030
- :param pulumi.Input[str] storage_size_mib: Defines the disk size, in MiB, allocated to the cluster. This can be adjusted on MySQL and PostreSQL clusters based on predefined ranges for each slug/droplet size.
1151
+ :param pulumi.Input[str] storage_size_mib: Defines the disk size, in MiB, allocated to the cluster. This can be adjusted on MySQL and PostgreSQL clusters based on predefined ranges for each slug/droplet size.
1031
1152
  :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tag names to be applied to the database cluster.
1153
+ :param pulumi.Input[str] ui_database: Name of the OpenSearch dashboard db.
1154
+ :param pulumi.Input[str] ui_host: Hostname for the OpenSearch dashboard.
1155
+ :param pulumi.Input[str] ui_password: Password for the OpenSearch dashboard's default user.
1156
+ :param pulumi.Input[int] ui_port: Network port that the OpenSearch dashboard is listening on.
1157
+ :param pulumi.Input[str] ui_uri: The full URI for connecting to the OpenSearch dashboard.
1158
+ :param pulumi.Input[str] ui_user: Username for OpenSearch dashboard's default user.
1032
1159
  :param pulumi.Input[str] uri: The full URI for connecting to the database cluster.
1033
1160
  :param pulumi.Input[str] user: Username for the cluster's default user.
1034
1161
  :param pulumi.Input[str] version: Engine version used by the cluster (ex. `14` for PostgreSQL 14).
@@ -1058,6 +1185,12 @@ class DatabaseCluster(pulumi.CustomResource):
1058
1185
  __props__.__dict__["sql_mode"] = sql_mode
1059
1186
  __props__.__dict__["storage_size_mib"] = storage_size_mib
1060
1187
  __props__.__dict__["tags"] = tags
1188
+ __props__.__dict__["ui_database"] = ui_database
1189
+ __props__.__dict__["ui_host"] = ui_host
1190
+ __props__.__dict__["ui_password"] = ui_password
1191
+ __props__.__dict__["ui_port"] = ui_port
1192
+ __props__.__dict__["ui_uri"] = ui_uri
1193
+ __props__.__dict__["ui_user"] = ui_user
1061
1194
  __props__.__dict__["uri"] = uri
1062
1195
  __props__.__dict__["user"] = user
1063
1196
  __props__.__dict__["version"] = version
@@ -1066,9 +1199,6 @@ class DatabaseCluster(pulumi.CustomResource):
1066
1199
  @property
1067
1200
  @pulumi.getter(name="backupRestore")
1068
1201
  def backup_restore(self) -> pulumi.Output[Optional['outputs.DatabaseClusterBackupRestore']]:
1069
- """
1070
- Create a new database cluster based on a backup of an existing cluster.
1071
- """
1072
1202
  return pulumi.get(self, "backup_restore")
1073
1203
 
1074
1204
  @property
@@ -1091,7 +1221,7 @@ class DatabaseCluster(pulumi.CustomResource):
1091
1221
  @pulumi.getter
1092
1222
  def engine(self) -> pulumi.Output[str]:
1093
1223
  """
1094
- Database engine used by the cluster (ex. `pg` for PostreSQL, `mysql` for MySQL, `redis` for Redis, `mongodb` for MongoDB, or `kafka` for Kafka).
1224
+ Database engine used by the cluster (ex. `pg` for PostgreSQL, `mysql` for MySQL, `redis` for Redis, `mongodb` for MongoDB, or `kafka` for Kafka).
1095
1225
  """
1096
1226
  return pulumi.get(self, "engine")
1097
1227
 
@@ -1211,7 +1341,7 @@ class DatabaseCluster(pulumi.CustomResource):
1211
1341
  @pulumi.getter(name="storageSizeMib")
1212
1342
  def storage_size_mib(self) -> pulumi.Output[str]:
1213
1343
  """
1214
- Defines the disk size, in MiB, allocated to the cluster. This can be adjusted on MySQL and PostreSQL clusters based on predefined ranges for each slug/droplet size.
1344
+ Defines the disk size, in MiB, allocated to the cluster. This can be adjusted on MySQL and PostgreSQL clusters based on predefined ranges for each slug/droplet size.
1215
1345
  """
1216
1346
  return pulumi.get(self, "storage_size_mib")
1217
1347
 
@@ -1223,6 +1353,54 @@ class DatabaseCluster(pulumi.CustomResource):
1223
1353
  """
1224
1354
  return pulumi.get(self, "tags")
1225
1355
 
1356
+ @property
1357
+ @pulumi.getter(name="uiDatabase")
1358
+ def ui_database(self) -> pulumi.Output[str]:
1359
+ """
1360
+ Name of the OpenSearch dashboard db.
1361
+ """
1362
+ return pulumi.get(self, "ui_database")
1363
+
1364
+ @property
1365
+ @pulumi.getter(name="uiHost")
1366
+ def ui_host(self) -> pulumi.Output[str]:
1367
+ """
1368
+ Hostname for the OpenSearch dashboard.
1369
+ """
1370
+ return pulumi.get(self, "ui_host")
1371
+
1372
+ @property
1373
+ @pulumi.getter(name="uiPassword")
1374
+ def ui_password(self) -> pulumi.Output[str]:
1375
+ """
1376
+ Password for the OpenSearch dashboard's default user.
1377
+ """
1378
+ return pulumi.get(self, "ui_password")
1379
+
1380
+ @property
1381
+ @pulumi.getter(name="uiPort")
1382
+ def ui_port(self) -> pulumi.Output[int]:
1383
+ """
1384
+ Network port that the OpenSearch dashboard is listening on.
1385
+ """
1386
+ return pulumi.get(self, "ui_port")
1387
+
1388
+ @property
1389
+ @pulumi.getter(name="uiUri")
1390
+ def ui_uri(self) -> pulumi.Output[str]:
1391
+ """
1392
+ The full URI for connecting to the OpenSearch dashboard.
1393
+ """
1394
+ return pulumi.get(self, "ui_uri")
1395
+
1396
+ @property
1397
+ @pulumi.getter(name="uiUser")
1398
+ def ui_user(self) -> pulumi.Output[str]:
1399
+ """
1400
+ Username for OpenSearch dashboard's default user.
1401
+ """
1402
+ return pulumi.get(self, "ui_user")
1403
+
1226
1404
  @property
1227
1405
  @pulumi.getter
1228
1406
  def uri(self) -> pulumi.Output[str]: