pulumi-digitalocean 4.27.0a1710332933__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.0a1710332933.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.0a1710332933.dist-info → pulumi_digitalocean-4.39.0a1736833057.dist-info}/WHEEL +1 -1
  106. pulumi_digitalocean-4.27.0a1710332933.dist-info/RECORD +0 -97
  107. {pulumi_digitalocean-4.27.0a1710332933.dist-info → pulumi_digitalocean-4.39.0a1736833057.dist-info}/top_level.txt +0 -0
@@ -4,11 +4,17 @@
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
17
+ from ._inputs import *
12
18
 
13
19
  __all__ = [
14
20
  'GetAppResult',
@@ -22,7 +28,7 @@ class GetAppResult:
22
28
  """
23
29
  A collection of values returned by getApp.
24
30
  """
25
- def __init__(__self__, active_deployment_id=None, app_id=None, created_at=None, default_ingress=None, id=None, live_url=None, project_id=None, specs=None, updated_at=None, urn=None):
31
+ def __init__(__self__, active_deployment_id=None, app_id=None, created_at=None, dedicated_ips=None, default_ingress=None, id=None, live_domain=None, live_url=None, project_id=None, specs=None, updated_at=None, urn=None):
26
32
  if active_deployment_id and not isinstance(active_deployment_id, str):
27
33
  raise TypeError("Expected argument 'active_deployment_id' to be a str")
28
34
  pulumi.set(__self__, "active_deployment_id", active_deployment_id)
@@ -32,12 +38,18 @@ class GetAppResult:
32
38
  if created_at and not isinstance(created_at, str):
33
39
  raise TypeError("Expected argument 'created_at' to be a str")
34
40
  pulumi.set(__self__, "created_at", created_at)
41
+ if dedicated_ips and not isinstance(dedicated_ips, list):
42
+ raise TypeError("Expected argument 'dedicated_ips' to be a list")
43
+ pulumi.set(__self__, "dedicated_ips", dedicated_ips)
35
44
  if default_ingress and not isinstance(default_ingress, str):
36
45
  raise TypeError("Expected argument 'default_ingress' to be a str")
37
46
  pulumi.set(__self__, "default_ingress", default_ingress)
38
47
  if id and not isinstance(id, str):
39
48
  raise TypeError("Expected argument 'id' to be a str")
40
49
  pulumi.set(__self__, "id", id)
50
+ if live_domain and not isinstance(live_domain, str):
51
+ raise TypeError("Expected argument 'live_domain' to be a str")
52
+ pulumi.set(__self__, "live_domain", live_domain)
41
53
  if live_url and not isinstance(live_url, str):
42
54
  raise TypeError("Expected argument 'live_url' to be a str")
43
55
  pulumi.set(__self__, "live_url", live_url)
@@ -75,6 +87,14 @@ class GetAppResult:
75
87
  """
76
88
  return pulumi.get(self, "created_at")
77
89
 
90
+ @property
91
+ @pulumi.getter(name="dedicatedIps")
92
+ def dedicated_ips(self) -> Sequence['outputs.GetAppDedicatedIpResult']:
93
+ """
94
+ A list of dedicated egress IP addresses associated with the app.
95
+ """
96
+ return pulumi.get(self, "dedicated_ips")
97
+
78
98
  @property
79
99
  @pulumi.getter(name="defaultIngress")
80
100
  def default_ingress(self) -> str:
@@ -91,6 +111,14 @@ class GetAppResult:
91
111
  """
92
112
  return pulumi.get(self, "id")
93
113
 
114
+ @property
115
+ @pulumi.getter(name="liveDomain")
116
+ def live_domain(self) -> str:
117
+ """
118
+ The live domain of the app.
119
+ """
120
+ return pulumi.get(self, "live_domain")
121
+
94
122
  @property
95
123
  @pulumi.getter(name="liveUrl")
96
124
  def live_url(self) -> str:
@@ -141,8 +169,10 @@ class AwaitableGetAppResult(GetAppResult):
141
169
  active_deployment_id=self.active_deployment_id,
142
170
  app_id=self.app_id,
143
171
  created_at=self.created_at,
172
+ dedicated_ips=self.dedicated_ips,
144
173
  default_ingress=self.default_ingress,
145
174
  id=self.id,
175
+ live_domain=self.live_domain,
146
176
  live_url=self.live_url,
147
177
  project_id=self.project_id,
148
178
  specs=self.specs,
@@ -151,6 +181,7 @@ class AwaitableGetAppResult(GetAppResult):
151
181
 
152
182
 
153
183
  def get_app(app_id: Optional[str] = None,
184
+ dedicated_ips: Optional[Sequence[Union['GetAppDedicatedIpArgs', 'GetAppDedicatedIpArgsDict']]] = None,
154
185
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAppResult:
155
186
  """
156
187
  Get information on a DigitalOcean App.
@@ -159,7 +190,6 @@ def get_app(app_id: Optional[str] = None,
159
190
 
160
191
  Get the account:
161
192
 
162
- <!--Start PulumiCodeChooser -->
163
193
  ```python
164
194
  import pulumi
165
195
  import pulumi_digitalocean as digitalocean
@@ -167,13 +197,14 @@ def get_app(app_id: Optional[str] = None,
167
197
  example = digitalocean.get_app(app_id="e665d18d-7b56-44a9-92ce-31979174d544")
168
198
  pulumi.export("defaultIngress", example.default_ingress)
169
199
  ```
170
- <!--End PulumiCodeChooser -->
171
200
 
172
201
 
173
202
  :param str app_id: The ID of the app to retrieve information about.
203
+ :param Sequence[Union['GetAppDedicatedIpArgs', 'GetAppDedicatedIpArgsDict']] dedicated_ips: A list of dedicated egress IP addresses associated with the app.
174
204
  """
175
205
  __args__ = dict()
176
206
  __args__['appId'] = app_id
207
+ __args__['dedicatedIps'] = dedicated_ips
177
208
  opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
178
209
  __ret__ = pulumi.runtime.invoke('digitalocean:index/getApp:getApp', __args__, opts=opts, typ=GetAppResult).value
179
210
 
@@ -181,18 +212,18 @@ def get_app(app_id: Optional[str] = None,
181
212
  active_deployment_id=pulumi.get(__ret__, 'active_deployment_id'),
182
213
  app_id=pulumi.get(__ret__, 'app_id'),
183
214
  created_at=pulumi.get(__ret__, 'created_at'),
215
+ dedicated_ips=pulumi.get(__ret__, 'dedicated_ips'),
184
216
  default_ingress=pulumi.get(__ret__, 'default_ingress'),
185
217
  id=pulumi.get(__ret__, 'id'),
218
+ live_domain=pulumi.get(__ret__, 'live_domain'),
186
219
  live_url=pulumi.get(__ret__, 'live_url'),
187
220
  project_id=pulumi.get(__ret__, 'project_id'),
188
221
  specs=pulumi.get(__ret__, 'specs'),
189
222
  updated_at=pulumi.get(__ret__, 'updated_at'),
190
223
  urn=pulumi.get(__ret__, 'urn'))
191
-
192
-
193
- @_utilities.lift_output_func(get_app)
194
224
  def get_app_output(app_id: Optional[pulumi.Input[str]] = None,
195
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetAppResult]:
225
+ dedicated_ips: Optional[pulumi.Input[Optional[Sequence[Union['GetAppDedicatedIpArgs', 'GetAppDedicatedIpArgsDict']]]]] = None,
226
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetAppResult]:
196
227
  """
197
228
  Get information on a DigitalOcean App.
198
229
 
@@ -200,7 +231,6 @@ def get_app_output(app_id: Optional[pulumi.Input[str]] = None,
200
231
 
201
232
  Get the account:
202
233
 
203
- <!--Start PulumiCodeChooser -->
204
234
  ```python
205
235
  import pulumi
206
236
  import pulumi_digitalocean as digitalocean
@@ -208,9 +238,26 @@ def get_app_output(app_id: Optional[pulumi.Input[str]] = None,
208
238
  example = digitalocean.get_app(app_id="e665d18d-7b56-44a9-92ce-31979174d544")
209
239
  pulumi.export("defaultIngress", example.default_ingress)
210
240
  ```
211
- <!--End PulumiCodeChooser -->
212
241
 
213
242
 
214
243
  :param str app_id: The ID of the app to retrieve information about.
244
+ :param Sequence[Union['GetAppDedicatedIpArgs', 'GetAppDedicatedIpArgsDict']] dedicated_ips: A list of dedicated egress IP addresses associated with the app.
215
245
  """
216
- ...
246
+ __args__ = dict()
247
+ __args__['appId'] = app_id
248
+ __args__['dedicatedIps'] = dedicated_ips
249
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
250
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getApp:getApp', __args__, opts=opts, typ=GetAppResult)
251
+ return __ret__.apply(lambda __response__: GetAppResult(
252
+ active_deployment_id=pulumi.get(__response__, 'active_deployment_id'),
253
+ app_id=pulumi.get(__response__, 'app_id'),
254
+ created_at=pulumi.get(__response__, 'created_at'),
255
+ dedicated_ips=pulumi.get(__response__, 'dedicated_ips'),
256
+ default_ingress=pulumi.get(__response__, 'default_ingress'),
257
+ id=pulumi.get(__response__, 'id'),
258
+ live_domain=pulumi.get(__response__, 'live_domain'),
259
+ live_url=pulumi.get(__response__, 'live_url'),
260
+ project_id=pulumi.get(__response__, 'project_id'),
261
+ specs=pulumi.get(__response__, 'specs'),
262
+ updated_at=pulumi.get(__response__, 'updated_at'),
263
+ urn=pulumi.get(__response__, 'urn')))
@@ -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
 
12
17
  __all__ = [
@@ -139,14 +144,12 @@ def get_certificate(name: Optional[str] = None,
139
144
 
140
145
  Get the certificate:
141
146
 
142
- <!--Start PulumiCodeChooser -->
143
147
  ```python
144
148
  import pulumi
145
149
  import pulumi_digitalocean as digitalocean
146
150
 
147
151
  example = digitalocean.get_certificate(name="example")
148
152
  ```
149
- <!--End PulumiCodeChooser -->
150
153
 
151
154
 
152
155
  :param str name: The name of certificate.
@@ -165,11 +168,8 @@ def get_certificate(name: Optional[str] = None,
165
168
  state=pulumi.get(__ret__, 'state'),
166
169
  type=pulumi.get(__ret__, 'type'),
167
170
  uuid=pulumi.get(__ret__, 'uuid'))
168
-
169
-
170
- @_utilities.lift_output_func(get_certificate)
171
171
  def get_certificate_output(name: Optional[pulumi.Input[str]] = None,
172
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetCertificateResult]:
172
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetCertificateResult]:
173
173
  """
174
174
  Get information on a certificate. This data source provides the name, type, state,
175
175
  domains, expiry date, and the sha1 fingerprint as configured on your DigitalOcean account.
@@ -182,16 +182,26 @@ def get_certificate_output(name: Optional[pulumi.Input[str]] = None,
182
182
 
183
183
  Get the certificate:
184
184
 
185
- <!--Start PulumiCodeChooser -->
186
185
  ```python
187
186
  import pulumi
188
187
  import pulumi_digitalocean as digitalocean
189
188
 
190
189
  example = digitalocean.get_certificate(name="example")
191
190
  ```
192
- <!--End PulumiCodeChooser -->
193
191
 
194
192
 
195
193
  :param str name: The name of certificate.
196
194
  """
197
- ...
195
+ __args__ = dict()
196
+ __args__['name'] = name
197
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
198
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getCertificate:getCertificate', __args__, opts=opts, typ=GetCertificateResult)
199
+ return __ret__.apply(lambda __response__: GetCertificateResult(
200
+ domains=pulumi.get(__response__, 'domains'),
201
+ id=pulumi.get(__response__, 'id'),
202
+ name=pulumi.get(__response__, 'name'),
203
+ not_after=pulumi.get(__response__, 'not_after'),
204
+ sha1_fingerprint=pulumi.get(__response__, 'sha1_fingerprint'),
205
+ state=pulumi.get(__response__, 'state'),
206
+ type=pulumi.get(__response__, 'type'),
207
+ uuid=pulumi.get(__response__, 'uuid')))
@@ -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
 
12
17
  __all__ = [
@@ -144,14 +149,12 @@ def get_container_registry(name: Optional[str] = None,
144
149
 
145
150
  Get the container registry:
146
151
 
147
- <!--Start PulumiCodeChooser -->
148
152
  ```python
149
153
  import pulumi
150
154
  import pulumi_digitalocean as digitalocean
151
155
 
152
156
  example = digitalocean.get_container_registry(name="example")
153
157
  ```
154
- <!--End PulumiCodeChooser -->
155
158
 
156
159
 
157
160
  :param str name: The name of the container registry.
@@ -170,11 +173,8 @@ def get_container_registry(name: Optional[str] = None,
170
173
  server_url=pulumi.get(__ret__, 'server_url'),
171
174
  storage_usage_bytes=pulumi.get(__ret__, 'storage_usage_bytes'),
172
175
  subscription_tier_slug=pulumi.get(__ret__, 'subscription_tier_slug'))
173
-
174
-
175
- @_utilities.lift_output_func(get_container_registry)
176
176
  def get_container_registry_output(name: Optional[pulumi.Input[str]] = None,
177
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetContainerRegistryResult]:
177
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetContainerRegistryResult]:
178
178
  """
179
179
  Get information on a container registry. This data source provides the name as
180
180
  configured on your DigitalOcean account. This is useful if the container
@@ -189,16 +189,26 @@ def get_container_registry_output(name: Optional[pulumi.Input[str]] = None,
189
189
 
190
190
  Get the container registry:
191
191
 
192
- <!--Start PulumiCodeChooser -->
193
192
  ```python
194
193
  import pulumi
195
194
  import pulumi_digitalocean as digitalocean
196
195
 
197
196
  example = digitalocean.get_container_registry(name="example")
198
197
  ```
199
- <!--End PulumiCodeChooser -->
200
198
 
201
199
 
202
200
  :param str name: The name of the container registry.
203
201
  """
204
- ...
202
+ __args__ = dict()
203
+ __args__['name'] = name
204
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
205
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getContainerRegistry:getContainerRegistry', __args__, opts=opts, typ=GetContainerRegistryResult)
206
+ return __ret__.apply(lambda __response__: GetContainerRegistryResult(
207
+ created_at=pulumi.get(__response__, 'created_at'),
208
+ endpoint=pulumi.get(__response__, 'endpoint'),
209
+ id=pulumi.get(__response__, 'id'),
210
+ name=pulumi.get(__response__, 'name'),
211
+ region=pulumi.get(__response__, 'region'),
212
+ server_url=pulumi.get(__response__, 'server_url'),
213
+ storage_usage_bytes=pulumi.get(__response__, 'storage_usage_bytes'),
214
+ subscription_tier_slug=pulumi.get(__response__, 'subscription_tier_slug')))
@@ -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
 
12
17
  __all__ = [
@@ -72,7 +77,6 @@ def get_database_ca(cluster_id: Optional[str] = None,
72
77
 
73
78
  ## Example Usage
74
79
 
75
- <!--Start PulumiCodeChooser -->
76
80
  ```python
77
81
  import pulumi
78
82
  import pulumi_digitalocean as digitalocean
@@ -80,7 +84,6 @@ def get_database_ca(cluster_id: Optional[str] = None,
80
84
  ca = digitalocean.get_database_ca(cluster_id="aaa-bbb-ccc-ddd")
81
85
  pulumi.export("caOutput", ca.certificate)
82
86
  ```
83
- <!--End PulumiCodeChooser -->
84
87
 
85
88
 
86
89
  :param str cluster_id: The ID of the source database cluster.
@@ -94,17 +97,13 @@ def get_database_ca(cluster_id: Optional[str] = None,
94
97
  certificate=pulumi.get(__ret__, 'certificate'),
95
98
  cluster_id=pulumi.get(__ret__, 'cluster_id'),
96
99
  id=pulumi.get(__ret__, 'id'))
97
-
98
-
99
- @_utilities.lift_output_func(get_database_ca)
100
100
  def get_database_ca_output(cluster_id: Optional[pulumi.Input[str]] = None,
101
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDatabaseCaResult]:
101
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDatabaseCaResult]:
102
102
  """
103
103
  Provides the CA certificate for a DigitalOcean database.
104
104
 
105
105
  ## Example Usage
106
106
 
107
- <!--Start PulumiCodeChooser -->
108
107
  ```python
109
108
  import pulumi
110
109
  import pulumi_digitalocean as digitalocean
@@ -112,9 +111,15 @@ def get_database_ca_output(cluster_id: Optional[pulumi.Input[str]] = None,
112
111
  ca = digitalocean.get_database_ca(cluster_id="aaa-bbb-ccc-ddd")
113
112
  pulumi.export("caOutput", ca.certificate)
114
113
  ```
115
- <!--End PulumiCodeChooser -->
116
114
 
117
115
 
118
116
  :param str cluster_id: The ID of the source database cluster.
119
117
  """
120
- ...
118
+ __args__ = dict()
119
+ __args__['clusterId'] = cluster_id
120
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
121
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getDatabaseCa:getDatabaseCa', __args__, opts=opts, typ=GetDatabaseCaResult)
122
+ return __ret__.apply(lambda __response__: GetDatabaseCaResult(
123
+ certificate=pulumi.get(__response__, 'certificate'),
124
+ cluster_id=pulumi.get(__response__, 'cluster_id'),
125
+ id=pulumi.get(__response__, 'id')))
@@ -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
 
@@ -22,7 +27,7 @@ class GetDatabaseClusterResult:
22
27
  """
23
28
  A collection of values returned by getDatabaseCluster.
24
29
  """
25
- def __init__(__self__, database=None, engine=None, host=None, id=None, maintenance_windows=None, name=None, node_count=None, password=None, port=None, private_host=None, private_network_uuid=None, private_uri=None, project_id=None, region=None, size=None, storage_size_mib=None, tags=None, uri=None, urn=None, user=None, version=None):
30
+ def __init__(__self__, database=None, engine=None, host=None, id=None, maintenance_windows=None, name=None, node_count=None, password=None, port=None, private_host=None, private_network_uuid=None, private_uri=None, project_id=None, region=None, size=None, storage_size_mib=None, tags=None, ui_database=None, ui_host=None, ui_password=None, ui_port=None, ui_uri=None, ui_user=None, uri=None, urn=None, user=None, version=None):
26
31
  if database and not isinstance(database, str):
27
32
  raise TypeError("Expected argument 'database' to be a str")
28
33
  pulumi.set(__self__, "database", database)
@@ -74,6 +79,24 @@ class GetDatabaseClusterResult:
74
79
  if tags and not isinstance(tags, list):
75
80
  raise TypeError("Expected argument 'tags' to be a list")
76
81
  pulumi.set(__self__, "tags", tags)
82
+ if ui_database and not isinstance(ui_database, str):
83
+ raise TypeError("Expected argument 'ui_database' to be a str")
84
+ pulumi.set(__self__, "ui_database", ui_database)
85
+ if ui_host and not isinstance(ui_host, str):
86
+ raise TypeError("Expected argument 'ui_host' to be a str")
87
+ pulumi.set(__self__, "ui_host", ui_host)
88
+ if ui_password and not isinstance(ui_password, str):
89
+ raise TypeError("Expected argument 'ui_password' to be a str")
90
+ pulumi.set(__self__, "ui_password", ui_password)
91
+ if ui_port and not isinstance(ui_port, int):
92
+ raise TypeError("Expected argument 'ui_port' to be a int")
93
+ pulumi.set(__self__, "ui_port", ui_port)
94
+ if ui_uri and not isinstance(ui_uri, str):
95
+ raise TypeError("Expected argument 'ui_uri' to be a str")
96
+ pulumi.set(__self__, "ui_uri", ui_uri)
97
+ if ui_user and not isinstance(ui_user, str):
98
+ raise TypeError("Expected argument 'ui_user' to be a str")
99
+ pulumi.set(__self__, "ui_user", ui_user)
77
100
  if uri and not isinstance(uri, str):
78
101
  raise TypeError("Expected argument 'uri' to be a str")
79
102
  pulumi.set(__self__, "uri", uri)
@@ -99,7 +122,7 @@ class GetDatabaseClusterResult:
99
122
  @pulumi.getter
100
123
  def engine(self) -> str:
101
124
  """
102
- Database engine used by the cluster (ex. `pg` for PostreSQL).
125
+ Database engine used by the cluster (ex. `pg` for PostgreSQL).
103
126
  """
104
127
  return pulumi.get(self, "engine")
105
128
 
@@ -214,6 +237,54 @@ class GetDatabaseClusterResult:
214
237
  def tags(self) -> Optional[Sequence[str]]:
215
238
  return pulumi.get(self, "tags")
216
239
 
240
+ @property
241
+ @pulumi.getter(name="uiDatabase")
242
+ def ui_database(self) -> str:
243
+ """
244
+ Name of the OpenSearch dashboard db.
245
+ """
246
+ return pulumi.get(self, "ui_database")
247
+
248
+ @property
249
+ @pulumi.getter(name="uiHost")
250
+ def ui_host(self) -> str:
251
+ """
252
+ Hostname for the OpenSearch dashboard.
253
+ """
254
+ return pulumi.get(self, "ui_host")
255
+
256
+ @property
257
+ @pulumi.getter(name="uiPassword")
258
+ def ui_password(self) -> str:
259
+ """
260
+ Password for the OpenSearch dashboard's default user.
261
+ """
262
+ return pulumi.get(self, "ui_password")
263
+
264
+ @property
265
+ @pulumi.getter(name="uiPort")
266
+ def ui_port(self) -> int:
267
+ """
268
+ Network port that the OpenSearch dashboard is listening on.
269
+ """
270
+ return pulumi.get(self, "ui_port")
271
+
272
+ @property
273
+ @pulumi.getter(name="uiUri")
274
+ def ui_uri(self) -> str:
275
+ """
276
+ The full URI for connecting to the OpenSearch dashboard.
277
+ """
278
+ return pulumi.get(self, "ui_uri")
279
+
280
+ @property
281
+ @pulumi.getter(name="uiUser")
282
+ def ui_user(self) -> str:
283
+ """
284
+ Username for OpenSearch dashboard's default user.
285
+ """
286
+ return pulumi.get(self, "ui_user")
287
+
217
288
  @property
218
289
  @pulumi.getter
219
290
  def uri(self) -> str:
@@ -270,6 +341,12 @@ class AwaitableGetDatabaseClusterResult(GetDatabaseClusterResult):
270
341
  size=self.size,
271
342
  storage_size_mib=self.storage_size_mib,
272
343
  tags=self.tags,
344
+ ui_database=self.ui_database,
345
+ ui_host=self.ui_host,
346
+ ui_password=self.ui_password,
347
+ ui_port=self.ui_port,
348
+ ui_uri=self.ui_uri,
349
+ ui_user=self.ui_user,
273
350
  uri=self.uri,
274
351
  urn=self.urn,
275
352
  user=self.user,
@@ -284,7 +361,6 @@ def get_database_cluster(name: Optional[str] = None,
284
361
 
285
362
  ## Example Usage
286
363
 
287
- <!--Start PulumiCodeChooser -->
288
364
  ```python
289
365
  import pulumi
290
366
  import pulumi_digitalocean as digitalocean
@@ -292,7 +368,6 @@ def get_database_cluster(name: Optional[str] = None,
292
368
  example = digitalocean.get_database_cluster(name="example-cluster")
293
369
  pulumi.export("databaseOutput", example.uri)
294
370
  ```
295
- <!--End PulumiCodeChooser -->
296
371
 
297
372
 
298
373
  :param str name: The name of the database cluster.
@@ -321,22 +396,24 @@ def get_database_cluster(name: Optional[str] = None,
321
396
  size=pulumi.get(__ret__, 'size'),
322
397
  storage_size_mib=pulumi.get(__ret__, 'storage_size_mib'),
323
398
  tags=pulumi.get(__ret__, 'tags'),
399
+ ui_database=pulumi.get(__ret__, 'ui_database'),
400
+ ui_host=pulumi.get(__ret__, 'ui_host'),
401
+ ui_password=pulumi.get(__ret__, 'ui_password'),
402
+ ui_port=pulumi.get(__ret__, 'ui_port'),
403
+ ui_uri=pulumi.get(__ret__, 'ui_uri'),
404
+ ui_user=pulumi.get(__ret__, 'ui_user'),
324
405
  uri=pulumi.get(__ret__, 'uri'),
325
406
  urn=pulumi.get(__ret__, 'urn'),
326
407
  user=pulumi.get(__ret__, 'user'),
327
408
  version=pulumi.get(__ret__, 'version'))
328
-
329
-
330
- @_utilities.lift_output_func(get_database_cluster)
331
409
  def get_database_cluster_output(name: Optional[pulumi.Input[str]] = None,
332
410
  tags: Optional[pulumi.Input[Optional[Sequence[str]]]] = None,
333
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDatabaseClusterResult]:
411
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDatabaseClusterResult]:
334
412
  """
335
413
  Provides information on a DigitalOcean database cluster resource.
336
414
 
337
415
  ## Example Usage
338
416
 
339
- <!--Start PulumiCodeChooser -->
340
417
  ```python
341
418
  import pulumi
342
419
  import pulumi_digitalocean as digitalocean
@@ -344,9 +421,40 @@ def get_database_cluster_output(name: Optional[pulumi.Input[str]] = None,
344
421
  example = digitalocean.get_database_cluster(name="example-cluster")
345
422
  pulumi.export("databaseOutput", example.uri)
346
423
  ```
347
- <!--End PulumiCodeChooser -->
348
424
 
349
425
 
350
426
  :param str name: The name of the database cluster.
351
427
  """
352
- ...
428
+ __args__ = dict()
429
+ __args__['name'] = name
430
+ __args__['tags'] = tags
431
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
432
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getDatabaseCluster:getDatabaseCluster', __args__, opts=opts, typ=GetDatabaseClusterResult)
433
+ return __ret__.apply(lambda __response__: GetDatabaseClusterResult(
434
+ database=pulumi.get(__response__, 'database'),
435
+ engine=pulumi.get(__response__, 'engine'),
436
+ host=pulumi.get(__response__, 'host'),
437
+ id=pulumi.get(__response__, 'id'),
438
+ maintenance_windows=pulumi.get(__response__, 'maintenance_windows'),
439
+ name=pulumi.get(__response__, 'name'),
440
+ node_count=pulumi.get(__response__, 'node_count'),
441
+ password=pulumi.get(__response__, 'password'),
442
+ port=pulumi.get(__response__, 'port'),
443
+ private_host=pulumi.get(__response__, 'private_host'),
444
+ private_network_uuid=pulumi.get(__response__, 'private_network_uuid'),
445
+ private_uri=pulumi.get(__response__, 'private_uri'),
446
+ project_id=pulumi.get(__response__, 'project_id'),
447
+ region=pulumi.get(__response__, 'region'),
448
+ size=pulumi.get(__response__, 'size'),
449
+ storage_size_mib=pulumi.get(__response__, 'storage_size_mib'),
450
+ tags=pulumi.get(__response__, 'tags'),
451
+ ui_database=pulumi.get(__response__, 'ui_database'),
452
+ ui_host=pulumi.get(__response__, 'ui_host'),
453
+ ui_password=pulumi.get(__response__, 'ui_password'),
454
+ ui_port=pulumi.get(__response__, 'ui_port'),
455
+ ui_uri=pulumi.get(__response__, 'ui_uri'),
456
+ ui_user=pulumi.get(__response__, 'ui_user'),
457
+ uri=pulumi.get(__response__, 'uri'),
458
+ urn=pulumi.get(__response__, 'urn'),
459
+ user=pulumi.get(__response__, 'user'),
460
+ version=pulumi.get(__response__, 'version')))
@@ -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
 
12
17
  __all__ = [
@@ -190,7 +195,6 @@ def get_database_connection_pool(cluster_id: Optional[str] = None,
190
195
 
191
196
  ## Example Usage
192
197
 
193
- <!--Start PulumiCodeChooser -->
194
198
  ```python
195
199
  import pulumi
196
200
  import pulumi_digitalocean as digitalocean
@@ -200,7 +204,6 @@ def get_database_connection_pool(cluster_id: Optional[str] = None,
200
204
  name="pool-01")
201
205
  pulumi.export("connectionPoolUriOutput", read_only.uri)
202
206
  ```
203
- <!--End PulumiCodeChooser -->
204
207
 
205
208
 
206
209
  :param str cluster_id: The ID of the original source database cluster.
@@ -226,18 +229,14 @@ def get_database_connection_pool(cluster_id: Optional[str] = None,
226
229
  size=pulumi.get(__ret__, 'size'),
227
230
  uri=pulumi.get(__ret__, 'uri'),
228
231
  user=pulumi.get(__ret__, 'user'))
229
-
230
-
231
- @_utilities.lift_output_func(get_database_connection_pool)
232
232
  def get_database_connection_pool_output(cluster_id: Optional[pulumi.Input[str]] = None,
233
233
  name: Optional[pulumi.Input[str]] = None,
234
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDatabaseConnectionPoolResult]:
234
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDatabaseConnectionPoolResult]:
235
235
  """
236
236
  Provides information on a DigitalOcean PostgreSQL database connection pool.
237
237
 
238
238
  ## Example Usage
239
239
 
240
- <!--Start PulumiCodeChooser -->
241
240
  ```python
242
241
  import pulumi
243
242
  import pulumi_digitalocean as digitalocean
@@ -247,10 +246,27 @@ def get_database_connection_pool_output(cluster_id: Optional[pulumi.Input[str]]
247
246
  name="pool-01")
248
247
  pulumi.export("connectionPoolUriOutput", read_only.uri)
249
248
  ```
250
- <!--End PulumiCodeChooser -->
251
249
 
252
250
 
253
251
  :param str cluster_id: The ID of the original source database cluster.
254
252
  :param str name: The name for the database connection pool.
255
253
  """
256
- ...
254
+ __args__ = dict()
255
+ __args__['clusterId'] = cluster_id
256
+ __args__['name'] = name
257
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
258
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getDatabaseConnectionPool:getDatabaseConnectionPool', __args__, opts=opts, typ=GetDatabaseConnectionPoolResult)
259
+ return __ret__.apply(lambda __response__: GetDatabaseConnectionPoolResult(
260
+ cluster_id=pulumi.get(__response__, 'cluster_id'),
261
+ db_name=pulumi.get(__response__, 'db_name'),
262
+ host=pulumi.get(__response__, 'host'),
263
+ id=pulumi.get(__response__, 'id'),
264
+ mode=pulumi.get(__response__, 'mode'),
265
+ name=pulumi.get(__response__, 'name'),
266
+ password=pulumi.get(__response__, 'password'),
267
+ port=pulumi.get(__response__, 'port'),
268
+ private_host=pulumi.get(__response__, 'private_host'),
269
+ private_uri=pulumi.get(__response__, 'private_uri'),
270
+ size=pulumi.get(__response__, 'size'),
271
+ uri=pulumi.get(__response__, 'uri'),
272
+ user=pulumi.get(__response__, 'user')))