pulumi-digitalocean 4.40.0a1739511652__py3-none-any.whl → 4.56.0a1766428645__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.
Files changed (154) hide show
  1. pulumi_digitalocean/__init__.py +224 -1
  2. pulumi_digitalocean/_enums.py +19 -9
  3. pulumi_digitalocean/_inputs.py +17037 -4771
  4. pulumi_digitalocean/_utilities.py +1 -1
  5. pulumi_digitalocean/app.py +238 -88
  6. pulumi_digitalocean/byoip_prefix.py +452 -0
  7. pulumi_digitalocean/cdn.py +106 -105
  8. pulumi_digitalocean/certificate.py +139 -138
  9. pulumi_digitalocean/config/__init__.py +2 -1
  10. pulumi_digitalocean/config/__init__.pyi +2 -2
  11. pulumi_digitalocean/config/vars.py +11 -11
  12. pulumi_digitalocean/container_registries.py +285 -0
  13. pulumi_digitalocean/container_registry.py +90 -89
  14. pulumi_digitalocean/container_registry_docker_credentials.py +84 -83
  15. pulumi_digitalocean/custom_image.py +180 -179
  16. pulumi_digitalocean/database_cluster.py +402 -373
  17. pulumi_digitalocean/database_connection_pool.py +159 -158
  18. pulumi_digitalocean/database_db.py +37 -36
  19. pulumi_digitalocean/database_firewall.py +23 -22
  20. pulumi_digitalocean/database_kafka_config.py +309 -308
  21. pulumi_digitalocean/database_kafka_schema_registry.py +360 -0
  22. pulumi_digitalocean/database_kafka_topic.py +83 -82
  23. pulumi_digitalocean/database_logsink_opensearch.py +680 -0
  24. pulumi_digitalocean/database_logsink_rsyslog.py +842 -0
  25. pulumi_digitalocean/database_mongodb_config.py +105 -104
  26. pulumi_digitalocean/database_mysql_config.py +479 -478
  27. pulumi_digitalocean/database_online_migration.py +460 -0
  28. pulumi_digitalocean/database_opensearch_config.py +666 -665
  29. pulumi_digitalocean/database_postgresql_config.py +859 -858
  30. pulumi_digitalocean/database_redis_config.py +211 -206
  31. pulumi_digitalocean/database_replica.py +199 -198
  32. pulumi_digitalocean/database_user.py +93 -92
  33. pulumi_digitalocean/database_valkey_config.py +776 -0
  34. pulumi_digitalocean/dns_record.py +184 -183
  35. pulumi_digitalocean/domain.py +55 -54
  36. pulumi_digitalocean/droplet.py +403 -402
  37. pulumi_digitalocean/droplet_autoscale.py +55 -54
  38. pulumi_digitalocean/droplet_snapshot.py +73 -72
  39. pulumi_digitalocean/firewall.py +80 -79
  40. pulumi_digitalocean/floating_ip.py +63 -62
  41. pulumi_digitalocean/floating_ip_assignment.py +37 -36
  42. pulumi_digitalocean/genai_agent.py +1903 -0
  43. pulumi_digitalocean/genai_agent_knowledge_base_attachment.py +198 -0
  44. pulumi_digitalocean/genai_agent_route.py +354 -0
  45. pulumi_digitalocean/genai_function.py +464 -0
  46. pulumi_digitalocean/genai_indexing_job_cancel.py +542 -0
  47. pulumi_digitalocean/genai_knowledge_base.py +627 -0
  48. pulumi_digitalocean/genai_knowledge_base_data_source.py +220 -0
  49. pulumi_digitalocean/genai_openai_api_key.py +386 -0
  50. pulumi_digitalocean/get_account.py +18 -18
  51. pulumi_digitalocean/get_app.py +28 -28
  52. pulumi_digitalocean/get_byoip_prefix.py +214 -0
  53. pulumi_digitalocean/get_byoip_prefix_resources.py +150 -0
  54. pulumi_digitalocean/get_certificate.py +22 -22
  55. pulumi_digitalocean/get_container_registries.py +151 -0
  56. pulumi_digitalocean/get_container_registry.py +22 -22
  57. pulumi_digitalocean/get_database_ca.py +12 -12
  58. pulumi_digitalocean/get_database_cluster.py +76 -62
  59. pulumi_digitalocean/get_database_connection_pool.py +36 -36
  60. pulumi_digitalocean/get_database_metrics_credentials.py +120 -0
  61. pulumi_digitalocean/get_database_replica.py +46 -46
  62. pulumi_digitalocean/get_database_user.py +27 -27
  63. pulumi_digitalocean/get_domain.py +16 -16
  64. pulumi_digitalocean/get_domains.py +7 -7
  65. pulumi_digitalocean/get_droplet.py +72 -72
  66. pulumi_digitalocean/get_droplet_autoscale.py +23 -23
  67. pulumi_digitalocean/get_droplet_snapshot.py +38 -38
  68. pulumi_digitalocean/get_droplets.py +13 -13
  69. pulumi_digitalocean/get_firewall.py +31 -31
  70. pulumi_digitalocean/get_floating_ip.py +16 -16
  71. pulumi_digitalocean/get_genai_agent.py +572 -0
  72. pulumi_digitalocean/get_genai_agent_versions.py +128 -0
  73. pulumi_digitalocean/get_genai_agents.py +128 -0
  74. pulumi_digitalocean/get_genai_agents_by_openai_api_key.py +97 -0
  75. pulumi_digitalocean/get_genai_indexing_job.py +239 -0
  76. pulumi_digitalocean/get_genai_indexing_job_data_sources.py +97 -0
  77. pulumi_digitalocean/get_genai_knowledge_base.py +259 -0
  78. pulumi_digitalocean/get_genai_knowledge_base_data_sources.py +97 -0
  79. pulumi_digitalocean/get_genai_knowledge_base_indexing_jobs.py +108 -0
  80. pulumi_digitalocean/get_genai_knowledge_bases.py +113 -0
  81. pulumi_digitalocean/get_genai_models.py +113 -0
  82. pulumi_digitalocean/get_genai_openai_api_key.py +152 -0
  83. pulumi_digitalocean/get_genai_openai_api_keys.py +113 -0
  84. pulumi_digitalocean/get_genai_regions.py +113 -0
  85. pulumi_digitalocean/get_image.py +50 -50
  86. pulumi_digitalocean/get_images.py +7 -7
  87. pulumi_digitalocean/get_kubernetes_cluster.py +144 -53
  88. pulumi_digitalocean/get_kubernetes_versions.py +14 -14
  89. pulumi_digitalocean/get_load_balancer.py +70 -59
  90. pulumi_digitalocean/get_nfs.py +205 -0
  91. pulumi_digitalocean/get_nfs_snapshot.py +188 -0
  92. pulumi_digitalocean/get_partner_attachment.py +206 -0
  93. pulumi_digitalocean/get_partner_attachment_service_key.py +118 -0
  94. pulumi_digitalocean/get_project.py +32 -32
  95. pulumi_digitalocean/get_projects.py +7 -7
  96. pulumi_digitalocean/get_record.py +32 -32
  97. pulumi_digitalocean/get_records.py +13 -13
  98. pulumi_digitalocean/get_region.py +18 -18
  99. pulumi_digitalocean/get_regions.py +7 -7
  100. pulumi_digitalocean/get_reserved_ip.py +16 -16
  101. pulumi_digitalocean/get_reserved_ipv6.py +51 -16
  102. pulumi_digitalocean/get_sizes.py +141 -7
  103. pulumi_digitalocean/get_spaces_bucket.py +22 -22
  104. pulumi_digitalocean/get_spaces_bucket_object.py +58 -58
  105. pulumi_digitalocean/get_spaces_bucket_objects.py +46 -46
  106. pulumi_digitalocean/get_spaces_buckets.py +7 -7
  107. pulumi_digitalocean/get_spaces_key.py +157 -0
  108. pulumi_digitalocean/get_ssh_key.py +14 -14
  109. pulumi_digitalocean/get_ssh_keys.py +7 -7
  110. pulumi_digitalocean/get_tag.py +22 -22
  111. pulumi_digitalocean/get_tags.py +7 -7
  112. pulumi_digitalocean/get_volume.py +34 -34
  113. pulumi_digitalocean/get_volume_snapshot.py +40 -40
  114. pulumi_digitalocean/get_vpc.py +30 -30
  115. pulumi_digitalocean/get_vpc_nat_gateway.py +263 -0
  116. pulumi_digitalocean/get_vpc_peering.py +24 -24
  117. pulumi_digitalocean/kubernetes_cluster.py +572 -303
  118. pulumi_digitalocean/kubernetes_node_pool.py +170 -169
  119. pulumi_digitalocean/load_balancer.py +406 -372
  120. pulumi_digitalocean/monitor_alert.py +153 -156
  121. pulumi_digitalocean/nfs.py +481 -0
  122. pulumi_digitalocean/nfs_attachment.py +289 -0
  123. pulumi_digitalocean/nfs_snapshot.py +379 -0
  124. pulumi_digitalocean/outputs.py +26759 -7592
  125. pulumi_digitalocean/partner_attachment.py +555 -0
  126. pulumi_digitalocean/project.py +141 -140
  127. pulumi_digitalocean/project_resources.py +37 -36
  128. pulumi_digitalocean/provider.py +105 -84
  129. pulumi_digitalocean/pulumi-plugin.json +1 -1
  130. pulumi_digitalocean/reserved_ip.py +63 -62
  131. pulumi_digitalocean/reserved_ip_assignment.py +37 -36
  132. pulumi_digitalocean/reserved_ipv6.py +122 -62
  133. pulumi_digitalocean/reserved_ipv6_assignment.py +81 -30
  134. pulumi_digitalocean/spaces_bucket.py +107 -106
  135. pulumi_digitalocean/spaces_bucket_cors_configuration.py +40 -39
  136. pulumi_digitalocean/spaces_bucket_logging.py +346 -0
  137. pulumi_digitalocean/spaces_bucket_object.py +284 -283
  138. pulumi_digitalocean/spaces_bucket_policy.py +54 -53
  139. pulumi_digitalocean/spaces_key.py +388 -0
  140. pulumi_digitalocean/ssh_key.py +46 -45
  141. pulumi_digitalocean/tag.py +74 -73
  142. pulumi_digitalocean/uptime_alert.py +112 -111
  143. pulumi_digitalocean/uptime_check.py +90 -89
  144. pulumi_digitalocean/volume.py +183 -182
  145. pulumi_digitalocean/volume_attachment.py +37 -36
  146. pulumi_digitalocean/volume_snapshot.py +90 -89
  147. pulumi_digitalocean/vpc.py +100 -99
  148. pulumi_digitalocean/vpc_nat_gateway.py +722 -0
  149. pulumi_digitalocean/vpc_peering.py +55 -58
  150. {pulumi_digitalocean-4.40.0a1739511652.dist-info → pulumi_digitalocean-4.56.0a1766428645.dist-info}/METADATA +4 -4
  151. pulumi_digitalocean-4.56.0a1766428645.dist-info/RECORD +154 -0
  152. {pulumi_digitalocean-4.40.0a1739511652.dist-info → pulumi_digitalocean-4.56.0a1766428645.dist-info}/WHEEL +1 -1
  153. pulumi_digitalocean-4.40.0a1739511652.dist-info/RECORD +0 -108
  154. {pulumi_digitalocean-4.40.0a1739511652.dist-info → pulumi_digitalocean-4.56.0a1766428645.dist-info}/top_level.txt +0 -0
@@ -1,8 +1,8 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import copy
5
+ import builtins as _builtins
6
6
  import warnings
7
7
  import sys
8
8
  import pulumi
@@ -27,7 +27,7 @@ class GetDatabaseClusterResult:
27
27
  """
28
28
  A collection of values returned by getDatabaseCluster.
29
29
  """
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):
30
+ def __init__(__self__, database=None, engine=None, host=None, id=None, maintenance_windows=None, metrics_endpoints=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):
31
31
  if database and not isinstance(database, str):
32
32
  raise TypeError("Expected argument 'database' to be a str")
33
33
  pulumi.set(__self__, "database", database)
@@ -43,6 +43,9 @@ class GetDatabaseClusterResult:
43
43
  if maintenance_windows and not isinstance(maintenance_windows, list):
44
44
  raise TypeError("Expected argument 'maintenance_windows' to be a list")
45
45
  pulumi.set(__self__, "maintenance_windows", maintenance_windows)
46
+ if metrics_endpoints and not isinstance(metrics_endpoints, list):
47
+ raise TypeError("Expected argument 'metrics_endpoints' to be a list")
48
+ pulumi.set(__self__, "metrics_endpoints", metrics_endpoints)
46
49
  if name and not isinstance(name, str):
47
50
  raise TypeError("Expected argument 'name' to be a str")
48
51
  pulumi.set(__self__, "name", name)
@@ -110,39 +113,39 @@ class GetDatabaseClusterResult:
110
113
  raise TypeError("Expected argument 'version' to be a str")
111
114
  pulumi.set(__self__, "version", version)
112
115
 
113
- @property
116
+ @_builtins.property
114
117
  @pulumi.getter
115
- def database(self) -> str:
118
+ def database(self) -> _builtins.str:
116
119
  """
117
120
  Name of the cluster's default database.
118
121
  """
119
122
  return pulumi.get(self, "database")
120
123
 
121
- @property
124
+ @_builtins.property
122
125
  @pulumi.getter
123
- def engine(self) -> str:
126
+ def engine(self) -> _builtins.str:
124
127
  """
125
128
  Database engine used by the cluster (ex. `pg` for PostgreSQL).
126
129
  """
127
130
  return pulumi.get(self, "engine")
128
131
 
129
- @property
132
+ @_builtins.property
130
133
  @pulumi.getter
131
- def host(self) -> str:
134
+ def host(self) -> _builtins.str:
132
135
  """
133
136
  Database cluster's hostname.
134
137
  """
135
138
  return pulumi.get(self, "host")
136
139
 
137
- @property
140
+ @_builtins.property
138
141
  @pulumi.getter
139
- def id(self) -> str:
142
+ def id(self) -> _builtins.str:
140
143
  """
141
144
  The provider-assigned unique ID for this managed resource.
142
145
  """
143
146
  return pulumi.get(self, "id")
144
147
 
145
- @property
148
+ @_builtins.property
146
149
  @pulumi.getter(name="maintenanceWindows")
147
150
  def maintenance_windows(self) -> Sequence['outputs.GetDatabaseClusterMaintenanceWindowResult']:
148
151
  """
@@ -150,168 +153,176 @@ class GetDatabaseClusterResult:
150
153
  """
151
154
  return pulumi.get(self, "maintenance_windows")
152
155
 
153
- @property
156
+ @_builtins.property
157
+ @pulumi.getter(name="metricsEndpoints")
158
+ def metrics_endpoints(self) -> Sequence[_builtins.str]:
159
+ """
160
+ A list of metrics endpoints for the database cluster, providing URLs to access Prometheus-compatible metrics.
161
+ """
162
+ return pulumi.get(self, "metrics_endpoints")
163
+
164
+ @_builtins.property
154
165
  @pulumi.getter
155
- def name(self) -> str:
166
+ def name(self) -> _builtins.str:
156
167
  return pulumi.get(self, "name")
157
168
 
158
- @property
169
+ @_builtins.property
159
170
  @pulumi.getter(name="nodeCount")
160
- def node_count(self) -> int:
171
+ def node_count(self) -> _builtins.int:
161
172
  """
162
173
  Number of nodes that will be included in the cluster.
163
174
  """
164
175
  return pulumi.get(self, "node_count")
165
176
 
166
- @property
177
+ @_builtins.property
167
178
  @pulumi.getter
168
- def password(self) -> str:
179
+ def password(self) -> _builtins.str:
169
180
  """
170
181
  Password for the cluster's default user.
171
182
  """
172
183
  return pulumi.get(self, "password")
173
184
 
174
- @property
185
+ @_builtins.property
175
186
  @pulumi.getter
176
- def port(self) -> int:
187
+ def port(self) -> _builtins.int:
177
188
  """
178
189
  Network port that the database cluster is listening on.
179
190
  """
180
191
  return pulumi.get(self, "port")
181
192
 
182
- @property
193
+ @_builtins.property
183
194
  @pulumi.getter(name="privateHost")
184
- def private_host(self) -> str:
195
+ def private_host(self) -> _builtins.str:
185
196
  """
186
197
  Same as `host`, but only accessible from resources within the account and in the same region.
187
198
  """
188
199
  return pulumi.get(self, "private_host")
189
200
 
190
- @property
201
+ @_builtins.property
191
202
  @pulumi.getter(name="privateNetworkUuid")
192
- def private_network_uuid(self) -> str:
203
+ def private_network_uuid(self) -> _builtins.str:
193
204
  """
194
205
  The ID of the VPC where the database cluster is located.
195
206
  """
196
207
  return pulumi.get(self, "private_network_uuid")
197
208
 
198
- @property
209
+ @_builtins.property
199
210
  @pulumi.getter(name="privateUri")
200
- def private_uri(self) -> str:
211
+ def private_uri(self) -> _builtins.str:
201
212
  """
202
213
  Same as `uri`, but only accessible from resources within the account and in the same region.
203
214
  """
204
215
  return pulumi.get(self, "private_uri")
205
216
 
206
- @property
217
+ @_builtins.property
207
218
  @pulumi.getter(name="projectId")
208
- def project_id(self) -> str:
219
+ def project_id(self) -> _builtins.str:
209
220
  """
210
221
  The ID of the project that the database cluster is assigned to.
211
222
  """
212
223
  return pulumi.get(self, "project_id")
213
224
 
214
- @property
225
+ @_builtins.property
215
226
  @pulumi.getter
216
- def region(self) -> str:
227
+ def region(self) -> _builtins.str:
217
228
  """
218
229
  DigitalOcean region where the cluster will reside.
219
230
  """
220
231
  return pulumi.get(self, "region")
221
232
 
222
- @property
233
+ @_builtins.property
223
234
  @pulumi.getter
224
- def size(self) -> str:
235
+ def size(self) -> _builtins.str:
225
236
  """
226
237
  Database droplet size associated with the cluster (ex. `db-s-1vcpu-1gb`).
227
238
  """
228
239
  return pulumi.get(self, "size")
229
240
 
230
- @property
241
+ @_builtins.property
231
242
  @pulumi.getter(name="storageSizeMib")
232
- def storage_size_mib(self) -> str:
243
+ def storage_size_mib(self) -> _builtins.str:
233
244
  return pulumi.get(self, "storage_size_mib")
234
245
 
235
- @property
246
+ @_builtins.property
236
247
  @pulumi.getter
237
- def tags(self) -> Optional[Sequence[str]]:
248
+ def tags(self) -> Optional[Sequence[_builtins.str]]:
238
249
  return pulumi.get(self, "tags")
239
250
 
240
- @property
251
+ @_builtins.property
241
252
  @pulumi.getter(name="uiDatabase")
242
- def ui_database(self) -> str:
253
+ def ui_database(self) -> _builtins.str:
243
254
  """
244
255
  Name of the OpenSearch dashboard db.
245
256
  """
246
257
  return pulumi.get(self, "ui_database")
247
258
 
248
- @property
259
+ @_builtins.property
249
260
  @pulumi.getter(name="uiHost")
250
- def ui_host(self) -> str:
261
+ def ui_host(self) -> _builtins.str:
251
262
  """
252
263
  Hostname for the OpenSearch dashboard.
253
264
  """
254
265
  return pulumi.get(self, "ui_host")
255
266
 
256
- @property
267
+ @_builtins.property
257
268
  @pulumi.getter(name="uiPassword")
258
- def ui_password(self) -> str:
269
+ def ui_password(self) -> _builtins.str:
259
270
  """
260
271
  Password for the OpenSearch dashboard's default user.
261
272
  """
262
273
  return pulumi.get(self, "ui_password")
263
274
 
264
- @property
275
+ @_builtins.property
265
276
  @pulumi.getter(name="uiPort")
266
- def ui_port(self) -> int:
277
+ def ui_port(self) -> _builtins.int:
267
278
  """
268
279
  Network port that the OpenSearch dashboard is listening on.
269
280
  """
270
281
  return pulumi.get(self, "ui_port")
271
282
 
272
- @property
283
+ @_builtins.property
273
284
  @pulumi.getter(name="uiUri")
274
- def ui_uri(self) -> str:
285
+ def ui_uri(self) -> _builtins.str:
275
286
  """
276
287
  The full URI for connecting to the OpenSearch dashboard.
277
288
  """
278
289
  return pulumi.get(self, "ui_uri")
279
290
 
280
- @property
291
+ @_builtins.property
281
292
  @pulumi.getter(name="uiUser")
282
- def ui_user(self) -> str:
293
+ def ui_user(self) -> _builtins.str:
283
294
  """
284
295
  Username for OpenSearch dashboard's default user.
285
296
  """
286
297
  return pulumi.get(self, "ui_user")
287
298
 
288
- @property
299
+ @_builtins.property
289
300
  @pulumi.getter
290
- def uri(self) -> str:
301
+ def uri(self) -> _builtins.str:
291
302
  """
292
303
  The full URI for connecting to the database cluster.
293
304
  """
294
305
  return pulumi.get(self, "uri")
295
306
 
296
- @property
307
+ @_builtins.property
297
308
  @pulumi.getter
298
- def urn(self) -> str:
309
+ def urn(self) -> _builtins.str:
299
310
  """
300
311
  The uniform resource name of the database cluster.
301
312
  """
302
313
  return pulumi.get(self, "urn")
303
314
 
304
- @property
315
+ @_builtins.property
305
316
  @pulumi.getter
306
- def user(self) -> str:
317
+ def user(self) -> _builtins.str:
307
318
  """
308
319
  Username for the cluster's default user.
309
320
  """
310
321
  return pulumi.get(self, "user")
311
322
 
312
- @property
323
+ @_builtins.property
313
324
  @pulumi.getter
314
- def version(self) -> str:
325
+ def version(self) -> _builtins.str:
315
326
  """
316
327
  Engine version used by the cluster (ex. `11` for PostgreSQL 11).
317
328
  """
@@ -329,6 +340,7 @@ class AwaitableGetDatabaseClusterResult(GetDatabaseClusterResult):
329
340
  host=self.host,
330
341
  id=self.id,
331
342
  maintenance_windows=self.maintenance_windows,
343
+ metrics_endpoints=self.metrics_endpoints,
332
344
  name=self.name,
333
345
  node_count=self.node_count,
334
346
  password=self.password,
@@ -353,8 +365,8 @@ class AwaitableGetDatabaseClusterResult(GetDatabaseClusterResult):
353
365
  version=self.version)
354
366
 
355
367
 
356
- def get_database_cluster(name: Optional[str] = None,
357
- tags: Optional[Sequence[str]] = None,
368
+ def get_database_cluster(name: Optional[_builtins.str] = None,
369
+ tags: Optional[Sequence[_builtins.str]] = None,
358
370
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDatabaseClusterResult:
359
371
  """
360
372
  Provides information on a DigitalOcean database cluster resource.
@@ -370,7 +382,7 @@ def get_database_cluster(name: Optional[str] = None,
370
382
  ```
371
383
 
372
384
 
373
- :param str name: The name of the database cluster.
385
+ :param _builtins.str name: The name of the database cluster.
374
386
  """
375
387
  __args__ = dict()
376
388
  __args__['name'] = name
@@ -384,6 +396,7 @@ def get_database_cluster(name: Optional[str] = None,
384
396
  host=pulumi.get(__ret__, 'host'),
385
397
  id=pulumi.get(__ret__, 'id'),
386
398
  maintenance_windows=pulumi.get(__ret__, 'maintenance_windows'),
399
+ metrics_endpoints=pulumi.get(__ret__, 'metrics_endpoints'),
387
400
  name=pulumi.get(__ret__, 'name'),
388
401
  node_count=pulumi.get(__ret__, 'node_count'),
389
402
  password=pulumi.get(__ret__, 'password'),
@@ -406,8 +419,8 @@ def get_database_cluster(name: Optional[str] = None,
406
419
  urn=pulumi.get(__ret__, 'urn'),
407
420
  user=pulumi.get(__ret__, 'user'),
408
421
  version=pulumi.get(__ret__, 'version'))
409
- def get_database_cluster_output(name: Optional[pulumi.Input[str]] = None,
410
- tags: Optional[pulumi.Input[Optional[Sequence[str]]]] = None,
422
+ def get_database_cluster_output(name: Optional[pulumi.Input[_builtins.str]] = None,
423
+ tags: Optional[pulumi.Input[Optional[Sequence[_builtins.str]]]] = None,
411
424
  opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDatabaseClusterResult]:
412
425
  """
413
426
  Provides information on a DigitalOcean database cluster resource.
@@ -423,7 +436,7 @@ def get_database_cluster_output(name: Optional[pulumi.Input[str]] = None,
423
436
  ```
424
437
 
425
438
 
426
- :param str name: The name of the database cluster.
439
+ :param _builtins.str name: The name of the database cluster.
427
440
  """
428
441
  __args__ = dict()
429
442
  __args__['name'] = name
@@ -436,6 +449,7 @@ def get_database_cluster_output(name: Optional[pulumi.Input[str]] = None,
436
449
  host=pulumi.get(__response__, 'host'),
437
450
  id=pulumi.get(__response__, 'id'),
438
451
  maintenance_windows=pulumi.get(__response__, 'maintenance_windows'),
452
+ metrics_endpoints=pulumi.get(__response__, 'metrics_endpoints'),
439
453
  name=pulumi.get(__response__, 'name'),
440
454
  node_count=pulumi.get(__response__, 'node_count'),
441
455
  password=pulumi.get(__response__, 'password'),
@@ -1,8 +1,8 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import copy
5
+ import builtins as _builtins
6
6
  import warnings
7
7
  import sys
8
8
  import pulumi
@@ -67,99 +67,99 @@ class GetDatabaseConnectionPoolResult:
67
67
  raise TypeError("Expected argument 'user' to be a str")
68
68
  pulumi.set(__self__, "user", user)
69
69
 
70
- @property
70
+ @_builtins.property
71
71
  @pulumi.getter(name="clusterId")
72
- def cluster_id(self) -> str:
72
+ def cluster_id(self) -> _builtins.str:
73
73
  return pulumi.get(self, "cluster_id")
74
74
 
75
- @property
75
+ @_builtins.property
76
76
  @pulumi.getter(name="dbName")
77
- def db_name(self) -> str:
77
+ def db_name(self) -> _builtins.str:
78
78
  """
79
79
  Name of the connection pool's default database.
80
80
  """
81
81
  return pulumi.get(self, "db_name")
82
82
 
83
- @property
83
+ @_builtins.property
84
84
  @pulumi.getter
85
- def host(self) -> str:
85
+ def host(self) -> _builtins.str:
86
86
  """
87
87
  Connection pool hostname.
88
88
  """
89
89
  return pulumi.get(self, "host")
90
90
 
91
- @property
91
+ @_builtins.property
92
92
  @pulumi.getter
93
- def id(self) -> str:
93
+ def id(self) -> _builtins.str:
94
94
  """
95
95
  The provider-assigned unique ID for this managed resource.
96
96
  """
97
97
  return pulumi.get(self, "id")
98
98
 
99
- @property
99
+ @_builtins.property
100
100
  @pulumi.getter
101
- def mode(self) -> str:
101
+ def mode(self) -> _builtins.str:
102
102
  """
103
103
  The transaction mode for the connection pool.
104
104
  """
105
105
  return pulumi.get(self, "mode")
106
106
 
107
- @property
107
+ @_builtins.property
108
108
  @pulumi.getter
109
- def name(self) -> str:
109
+ def name(self) -> _builtins.str:
110
110
  return pulumi.get(self, "name")
111
111
 
112
- @property
112
+ @_builtins.property
113
113
  @pulumi.getter
114
- def password(self) -> str:
114
+ def password(self) -> _builtins.str:
115
115
  """
116
116
  Password for the connection pool's default user.
117
117
  """
118
118
  return pulumi.get(self, "password")
119
119
 
120
- @property
120
+ @_builtins.property
121
121
  @pulumi.getter
122
- def port(self) -> int:
122
+ def port(self) -> _builtins.int:
123
123
  """
124
124
  Network port that the connection pool is listening on.
125
125
  """
126
126
  return pulumi.get(self, "port")
127
127
 
128
- @property
128
+ @_builtins.property
129
129
  @pulumi.getter(name="privateHost")
130
- def private_host(self) -> str:
130
+ def private_host(self) -> _builtins.str:
131
131
  """
132
132
  Same as `host`, but only accessible from resources within the account and in the same region.
133
133
  """
134
134
  return pulumi.get(self, "private_host")
135
135
 
136
- @property
136
+ @_builtins.property
137
137
  @pulumi.getter(name="privateUri")
138
- def private_uri(self) -> str:
138
+ def private_uri(self) -> _builtins.str:
139
139
  """
140
140
  Same as `uri`, but only accessible from resources within the account and in the same region.
141
141
  """
142
142
  return pulumi.get(self, "private_uri")
143
143
 
144
- @property
144
+ @_builtins.property
145
145
  @pulumi.getter
146
- def size(self) -> int:
146
+ def size(self) -> _builtins.int:
147
147
  """
148
148
  Size of the connection pool.
149
149
  """
150
150
  return pulumi.get(self, "size")
151
151
 
152
- @property
152
+ @_builtins.property
153
153
  @pulumi.getter
154
- def uri(self) -> str:
154
+ def uri(self) -> _builtins.str:
155
155
  """
156
156
  The full URI for connecting to the database connection pool.
157
157
  """
158
158
  return pulumi.get(self, "uri")
159
159
 
160
- @property
160
+ @_builtins.property
161
161
  @pulumi.getter
162
- def user(self) -> str:
162
+ def user(self) -> _builtins.str:
163
163
  """
164
164
  Username for the connection pool's default user.
165
165
  """
@@ -187,8 +187,8 @@ class AwaitableGetDatabaseConnectionPoolResult(GetDatabaseConnectionPoolResult):
187
187
  user=self.user)
188
188
 
189
189
 
190
- def get_database_connection_pool(cluster_id: Optional[str] = None,
191
- name: Optional[str] = None,
190
+ def get_database_connection_pool(cluster_id: Optional[_builtins.str] = None,
191
+ name: Optional[_builtins.str] = None,
192
192
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDatabaseConnectionPoolResult:
193
193
  """
194
194
  Provides information on a DigitalOcean PostgreSQL database connection pool.
@@ -206,8 +206,8 @@ def get_database_connection_pool(cluster_id: Optional[str] = None,
206
206
  ```
207
207
 
208
208
 
209
- :param str cluster_id: The ID of the original source database cluster.
210
- :param str name: The name for the database connection pool.
209
+ :param _builtins.str cluster_id: The ID of the original source database cluster.
210
+ :param _builtins.str name: The name for the database connection pool.
211
211
  """
212
212
  __args__ = dict()
213
213
  __args__['clusterId'] = cluster_id
@@ -229,8 +229,8 @@ def get_database_connection_pool(cluster_id: Optional[str] = None,
229
229
  size=pulumi.get(__ret__, 'size'),
230
230
  uri=pulumi.get(__ret__, 'uri'),
231
231
  user=pulumi.get(__ret__, 'user'))
232
- def get_database_connection_pool_output(cluster_id: Optional[pulumi.Input[str]] = None,
233
- name: Optional[pulumi.Input[str]] = None,
232
+ def get_database_connection_pool_output(cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
233
+ name: Optional[pulumi.Input[_builtins.str]] = None,
234
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.
@@ -248,8 +248,8 @@ def get_database_connection_pool_output(cluster_id: Optional[pulumi.Input[str]]
248
248
  ```
249
249
 
250
250
 
251
- :param str cluster_id: The ID of the original source database cluster.
252
- :param str name: The name for the database connection pool.
251
+ :param _builtins.str cluster_id: The ID of the original source database cluster.
252
+ :param _builtins.str name: The name for the database connection pool.
253
253
  """
254
254
  __args__ = dict()
255
255
  __args__['clusterId'] = cluster_id
@@ -0,0 +1,120 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins as _builtins
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
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
15
+ from . import _utilities
16
+
17
+ __all__ = [
18
+ 'GetDatabaseMetricsCredentialsResult',
19
+ 'AwaitableGetDatabaseMetricsCredentialsResult',
20
+ 'get_database_metrics_credentials',
21
+ 'get_database_metrics_credentials_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetDatabaseMetricsCredentialsResult:
26
+ """
27
+ A collection of values returned by getDatabaseMetricsCredentials.
28
+ """
29
+ def __init__(__self__, id=None, password=None, username=None):
30
+ if id and not isinstance(id, str):
31
+ raise TypeError("Expected argument 'id' to be a str")
32
+ pulumi.set(__self__, "id", id)
33
+ if password and not isinstance(password, str):
34
+ raise TypeError("Expected argument 'password' to be a str")
35
+ pulumi.set(__self__, "password", password)
36
+ if username and not isinstance(username, str):
37
+ raise TypeError("Expected argument 'username' to be a str")
38
+ pulumi.set(__self__, "username", username)
39
+
40
+ @_builtins.property
41
+ @pulumi.getter
42
+ def id(self) -> _builtins.str:
43
+ """
44
+ The provider-assigned unique ID for this managed resource.
45
+ """
46
+ return pulumi.get(self, "id")
47
+
48
+ @_builtins.property
49
+ @pulumi.getter
50
+ def password(self) -> _builtins.str:
51
+ """
52
+ The password for accessing database metrics. This is marked as sensitive.
53
+ """
54
+ return pulumi.get(self, "password")
55
+
56
+ @_builtins.property
57
+ @pulumi.getter
58
+ def username(self) -> _builtins.str:
59
+ """
60
+ The username for accessing database metrics.
61
+ """
62
+ return pulumi.get(self, "username")
63
+
64
+
65
+ class AwaitableGetDatabaseMetricsCredentialsResult(GetDatabaseMetricsCredentialsResult):
66
+ # pylint: disable=using-constant-test
67
+ def __await__(self):
68
+ if False:
69
+ yield self
70
+ return GetDatabaseMetricsCredentialsResult(
71
+ id=self.id,
72
+ password=self.password,
73
+ username=self.username)
74
+
75
+
76
+ def get_database_metrics_credentials(opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDatabaseMetricsCredentialsResult:
77
+ """
78
+ Provides access to the metrics credentials for DigitalOcean database clusters. These credentials are account-wide and can be used to access metrics for any database cluster in the account.
79
+
80
+ ## Example Usage
81
+
82
+ ```python
83
+ import pulumi
84
+ import pulumi_digitalocean as digitalocean
85
+
86
+ example = digitalocean.get_database_metrics_credentials()
87
+ pulumi.export("metricsUsername", example.username)
88
+ pulumi.export("metricsPassword", example.password)
89
+ ```
90
+ """
91
+ __args__ = dict()
92
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
93
+ __ret__ = pulumi.runtime.invoke('digitalocean:index/getDatabaseMetricsCredentials:getDatabaseMetricsCredentials', __args__, opts=opts, typ=GetDatabaseMetricsCredentialsResult).value
94
+
95
+ return AwaitableGetDatabaseMetricsCredentialsResult(
96
+ id=pulumi.get(__ret__, 'id'),
97
+ password=pulumi.get(__ret__, 'password'),
98
+ username=pulumi.get(__ret__, 'username'))
99
+ def get_database_metrics_credentials_output(opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDatabaseMetricsCredentialsResult]:
100
+ """
101
+ Provides access to the metrics credentials for DigitalOcean database clusters. These credentials are account-wide and can be used to access metrics for any database cluster in the account.
102
+
103
+ ## Example Usage
104
+
105
+ ```python
106
+ import pulumi
107
+ import pulumi_digitalocean as digitalocean
108
+
109
+ example = digitalocean.get_database_metrics_credentials()
110
+ pulumi.export("metricsUsername", example.username)
111
+ pulumi.export("metricsPassword", example.password)
112
+ ```
113
+ """
114
+ __args__ = dict()
115
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
116
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getDatabaseMetricsCredentials:getDatabaseMetricsCredentials', __args__, opts=opts, typ=GetDatabaseMetricsCredentialsResult)
117
+ return __ret__.apply(lambda __response__: GetDatabaseMetricsCredentialsResult(
118
+ id=pulumi.get(__response__, 'id'),
119
+ password=pulumi.get(__response__, 'password'),
120
+ username=pulumi.get(__response__, 'username')))