pulumi-digitalocean 4.36.0a1733290803__py3-none-any.whl → 4.37.0__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 (56) hide show
  1. pulumi_digitalocean/__init__.py +29 -0
  2. pulumi_digitalocean/_inputs.py +413 -0
  3. pulumi_digitalocean/droplet_autoscale.py +474 -0
  4. pulumi_digitalocean/get_account.py +2 -2
  5. pulumi_digitalocean/get_app.py +2 -2
  6. pulumi_digitalocean/get_certificate.py +2 -2
  7. pulumi_digitalocean/get_container_registry.py +2 -2
  8. pulumi_digitalocean/get_database_ca.py +2 -2
  9. pulumi_digitalocean/get_database_cluster.py +2 -2
  10. pulumi_digitalocean/get_database_connection_pool.py +2 -2
  11. pulumi_digitalocean/get_database_replica.py +2 -2
  12. pulumi_digitalocean/get_database_user.py +2 -2
  13. pulumi_digitalocean/get_domain.py +2 -2
  14. pulumi_digitalocean/get_domains.py +2 -2
  15. pulumi_digitalocean/get_droplet.py +2 -2
  16. pulumi_digitalocean/get_droplet_autoscale.py +197 -0
  17. pulumi_digitalocean/get_droplet_snapshot.py +2 -2
  18. pulumi_digitalocean/get_droplets.py +2 -2
  19. pulumi_digitalocean/get_firewall.py +2 -2
  20. pulumi_digitalocean/get_floating_ip.py +2 -2
  21. pulumi_digitalocean/get_image.py +2 -2
  22. pulumi_digitalocean/get_images.py +2 -2
  23. pulumi_digitalocean/get_kubernetes_cluster.py +2 -2
  24. pulumi_digitalocean/get_kubernetes_versions.py +2 -2
  25. pulumi_digitalocean/get_load_balancer.py +2 -2
  26. pulumi_digitalocean/get_project.py +2 -2
  27. pulumi_digitalocean/get_projects.py +2 -2
  28. pulumi_digitalocean/get_record.py +2 -2
  29. pulumi_digitalocean/get_records.py +2 -2
  30. pulumi_digitalocean/get_region.py +2 -2
  31. pulumi_digitalocean/get_regions.py +2 -2
  32. pulumi_digitalocean/get_reserved_ip.py +2 -2
  33. pulumi_digitalocean/get_reserved_ipv6.py +118 -0
  34. pulumi_digitalocean/get_sizes.py +2 -2
  35. pulumi_digitalocean/get_spaces_bucket.py +2 -2
  36. pulumi_digitalocean/get_spaces_bucket_object.py +2 -2
  37. pulumi_digitalocean/get_spaces_bucket_objects.py +2 -2
  38. pulumi_digitalocean/get_spaces_buckets.py +2 -2
  39. pulumi_digitalocean/get_ssh_key.py +2 -2
  40. pulumi_digitalocean/get_ssh_keys.py +2 -2
  41. pulumi_digitalocean/get_tag.py +2 -2
  42. pulumi_digitalocean/get_tags.py +2 -2
  43. pulumi_digitalocean/get_volume.py +2 -2
  44. pulumi_digitalocean/get_volume_snapshot.py +2 -2
  45. pulumi_digitalocean/get_vpc.py +2 -2
  46. pulumi_digitalocean/get_vpc_peering.py +2 -2
  47. pulumi_digitalocean/load_balancer.py +34 -21
  48. pulumi_digitalocean/outputs.py +524 -3
  49. pulumi_digitalocean/pulumi-plugin.json +1 -1
  50. pulumi_digitalocean/reserved_ipv6.py +232 -0
  51. pulumi_digitalocean/reserved_ipv6_assignment.py +171 -0
  52. {pulumi_digitalocean-4.36.0a1733290803.dist-info → pulumi_digitalocean-4.37.0.dist-info}/METADATA +1 -1
  53. pulumi_digitalocean-4.37.0.dist-info/RECORD +108 -0
  54. pulumi_digitalocean-4.36.0a1733290803.dist-info/RECORD +0 -103
  55. {pulumi_digitalocean-4.36.0a1733290803.dist-info → pulumi_digitalocean-4.37.0.dist-info}/WHEEL +0 -0
  56. {pulumi_digitalocean-4.36.0a1733290803.dist-info → pulumi_digitalocean-4.37.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,474 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
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
+ from . import outputs
17
+ from ._inputs import *
18
+
19
+ __all__ = ['DropletAutoscaleArgs', 'DropletAutoscale']
20
+
21
+ @pulumi.input_type
22
+ class DropletAutoscaleArgs:
23
+ def __init__(__self__, *,
24
+ config: pulumi.Input['DropletAutoscaleConfigArgs'],
25
+ droplet_template: pulumi.Input['DropletAutoscaleDropletTemplateArgs'],
26
+ name: Optional[pulumi.Input[str]] = None):
27
+ """
28
+ The set of arguments for constructing a DropletAutoscale resource.
29
+ :param pulumi.Input['DropletAutoscaleConfigArgs'] config: The configuration parameters for Droplet Autoscale pool, the supported arguments are
30
+ documented below.
31
+ :param pulumi.Input['DropletAutoscaleDropletTemplateArgs'] droplet_template: The droplet template parameters for Droplet Autoscale pool, the supported arguments
32
+ are documented below.
33
+ :param pulumi.Input[str] name: The name of the Droplet Autoscale pool.
34
+ """
35
+ pulumi.set(__self__, "config", config)
36
+ pulumi.set(__self__, "droplet_template", droplet_template)
37
+ if name is not None:
38
+ pulumi.set(__self__, "name", name)
39
+
40
+ @property
41
+ @pulumi.getter
42
+ def config(self) -> pulumi.Input['DropletAutoscaleConfigArgs']:
43
+ """
44
+ The configuration parameters for Droplet Autoscale pool, the supported arguments are
45
+ documented below.
46
+ """
47
+ return pulumi.get(self, "config")
48
+
49
+ @config.setter
50
+ def config(self, value: pulumi.Input['DropletAutoscaleConfigArgs']):
51
+ pulumi.set(self, "config", value)
52
+
53
+ @property
54
+ @pulumi.getter(name="dropletTemplate")
55
+ def droplet_template(self) -> pulumi.Input['DropletAutoscaleDropletTemplateArgs']:
56
+ """
57
+ The droplet template parameters for Droplet Autoscale pool, the supported arguments
58
+ are documented below.
59
+ """
60
+ return pulumi.get(self, "droplet_template")
61
+
62
+ @droplet_template.setter
63
+ def droplet_template(self, value: pulumi.Input['DropletAutoscaleDropletTemplateArgs']):
64
+ pulumi.set(self, "droplet_template", value)
65
+
66
+ @property
67
+ @pulumi.getter
68
+ def name(self) -> Optional[pulumi.Input[str]]:
69
+ """
70
+ The name of the Droplet Autoscale pool.
71
+ """
72
+ return pulumi.get(self, "name")
73
+
74
+ @name.setter
75
+ def name(self, value: Optional[pulumi.Input[str]]):
76
+ pulumi.set(self, "name", value)
77
+
78
+
79
+ @pulumi.input_type
80
+ class _DropletAutoscaleState:
81
+ def __init__(__self__, *,
82
+ config: Optional[pulumi.Input['DropletAutoscaleConfigArgs']] = None,
83
+ created_at: Optional[pulumi.Input[str]] = None,
84
+ current_utilizations: Optional[pulumi.Input[Sequence[pulumi.Input['DropletAutoscaleCurrentUtilizationArgs']]]] = None,
85
+ droplet_template: Optional[pulumi.Input['DropletAutoscaleDropletTemplateArgs']] = None,
86
+ name: Optional[pulumi.Input[str]] = None,
87
+ status: Optional[pulumi.Input[str]] = None,
88
+ updated_at: Optional[pulumi.Input[str]] = None):
89
+ """
90
+ Input properties used for looking up and filtering DropletAutoscale resources.
91
+ :param pulumi.Input['DropletAutoscaleConfigArgs'] config: The configuration parameters for Droplet Autoscale pool, the supported arguments are
92
+ documented below.
93
+ :param pulumi.Input[str] created_at: Created at timestamp for the Droplet Autoscale pool.
94
+ :param pulumi.Input[Sequence[pulumi.Input['DropletAutoscaleCurrentUtilizationArgs']]] current_utilizations: The current average resource utilization of the Droplet Autoscale pool, this attribute further
95
+ embeds `memory` and `cpu` attributes to respectively report utilization data.
96
+ :param pulumi.Input['DropletAutoscaleDropletTemplateArgs'] droplet_template: The droplet template parameters for Droplet Autoscale pool, the supported arguments
97
+ are documented below.
98
+ :param pulumi.Input[str] name: The name of the Droplet Autoscale pool.
99
+ :param pulumi.Input[str] status: Droplet Autoscale pool health status; this reflects if the pool is currently healthy and ready to accept
100
+ traffic, or in an error state and needs user intervention.
101
+ :param pulumi.Input[str] updated_at: Updated at timestamp for the Droplet Autoscale pool.
102
+ """
103
+ if config is not None:
104
+ pulumi.set(__self__, "config", config)
105
+ if created_at is not None:
106
+ pulumi.set(__self__, "created_at", created_at)
107
+ if current_utilizations is not None:
108
+ pulumi.set(__self__, "current_utilizations", current_utilizations)
109
+ if droplet_template is not None:
110
+ pulumi.set(__self__, "droplet_template", droplet_template)
111
+ if name is not None:
112
+ pulumi.set(__self__, "name", name)
113
+ if status is not None:
114
+ pulumi.set(__self__, "status", status)
115
+ if updated_at is not None:
116
+ pulumi.set(__self__, "updated_at", updated_at)
117
+
118
+ @property
119
+ @pulumi.getter
120
+ def config(self) -> Optional[pulumi.Input['DropletAutoscaleConfigArgs']]:
121
+ """
122
+ The configuration parameters for Droplet Autoscale pool, the supported arguments are
123
+ documented below.
124
+ """
125
+ return pulumi.get(self, "config")
126
+
127
+ @config.setter
128
+ def config(self, value: Optional[pulumi.Input['DropletAutoscaleConfigArgs']]):
129
+ pulumi.set(self, "config", value)
130
+
131
+ @property
132
+ @pulumi.getter(name="createdAt")
133
+ def created_at(self) -> Optional[pulumi.Input[str]]:
134
+ """
135
+ Created at timestamp for the Droplet Autoscale pool.
136
+ """
137
+ return pulumi.get(self, "created_at")
138
+
139
+ @created_at.setter
140
+ def created_at(self, value: Optional[pulumi.Input[str]]):
141
+ pulumi.set(self, "created_at", value)
142
+
143
+ @property
144
+ @pulumi.getter(name="currentUtilizations")
145
+ def current_utilizations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DropletAutoscaleCurrentUtilizationArgs']]]]:
146
+ """
147
+ The current average resource utilization of the Droplet Autoscale pool, this attribute further
148
+ embeds `memory` and `cpu` attributes to respectively report utilization data.
149
+ """
150
+ return pulumi.get(self, "current_utilizations")
151
+
152
+ @current_utilizations.setter
153
+ def current_utilizations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DropletAutoscaleCurrentUtilizationArgs']]]]):
154
+ pulumi.set(self, "current_utilizations", value)
155
+
156
+ @property
157
+ @pulumi.getter(name="dropletTemplate")
158
+ def droplet_template(self) -> Optional[pulumi.Input['DropletAutoscaleDropletTemplateArgs']]:
159
+ """
160
+ The droplet template parameters for Droplet Autoscale pool, the supported arguments
161
+ are documented below.
162
+ """
163
+ return pulumi.get(self, "droplet_template")
164
+
165
+ @droplet_template.setter
166
+ def droplet_template(self, value: Optional[pulumi.Input['DropletAutoscaleDropletTemplateArgs']]):
167
+ pulumi.set(self, "droplet_template", value)
168
+
169
+ @property
170
+ @pulumi.getter
171
+ def name(self) -> Optional[pulumi.Input[str]]:
172
+ """
173
+ The name of the Droplet Autoscale pool.
174
+ """
175
+ return pulumi.get(self, "name")
176
+
177
+ @name.setter
178
+ def name(self, value: Optional[pulumi.Input[str]]):
179
+ pulumi.set(self, "name", value)
180
+
181
+ @property
182
+ @pulumi.getter
183
+ def status(self) -> Optional[pulumi.Input[str]]:
184
+ """
185
+ Droplet Autoscale pool health status; this reflects if the pool is currently healthy and ready to accept
186
+ traffic, or in an error state and needs user intervention.
187
+ """
188
+ return pulumi.get(self, "status")
189
+
190
+ @status.setter
191
+ def status(self, value: Optional[pulumi.Input[str]]):
192
+ pulumi.set(self, "status", value)
193
+
194
+ @property
195
+ @pulumi.getter(name="updatedAt")
196
+ def updated_at(self) -> Optional[pulumi.Input[str]]:
197
+ """
198
+ Updated at timestamp for the Droplet Autoscale pool.
199
+ """
200
+ return pulumi.get(self, "updated_at")
201
+
202
+ @updated_at.setter
203
+ def updated_at(self, value: Optional[pulumi.Input[str]]):
204
+ pulumi.set(self, "updated_at", value)
205
+
206
+
207
+ class DropletAutoscale(pulumi.CustomResource):
208
+ @overload
209
+ def __init__(__self__,
210
+ resource_name: str,
211
+ opts: Optional[pulumi.ResourceOptions] = None,
212
+ config: Optional[pulumi.Input[Union['DropletAutoscaleConfigArgs', 'DropletAutoscaleConfigArgsDict']]] = None,
213
+ droplet_template: Optional[pulumi.Input[Union['DropletAutoscaleDropletTemplateArgs', 'DropletAutoscaleDropletTemplateArgsDict']]] = None,
214
+ name: Optional[pulumi.Input[str]] = None,
215
+ __props__=None):
216
+ """
217
+ Provides a DigitalOcean Droplet Autoscale resource. This can be used to create, modify,
218
+ read and delete Droplet Autoscale pools.
219
+
220
+ ## Example Usage
221
+
222
+ ```python
223
+ import pulumi
224
+ import pulumi_digitalocean as digitalocean
225
+ import pulumi_std as std
226
+
227
+ my_ssh_key = digitalocean.SshKey("my-ssh-key",
228
+ name="terraform-example",
229
+ public_key=std.file(input="/Users/terraform/.ssh/id_rsa.pub").result)
230
+ my_tag = digitalocean.Tag("my-tag", name="terraform-example")
231
+ my_autoscale_pool = digitalocean.DropletAutoscale("my-autoscale-pool",
232
+ name="terraform-example",
233
+ config={
234
+ "min_instances": 10,
235
+ "max_instances": 50,
236
+ "target_cpu_utilization": 0.5,
237
+ "target_memory_utilization": 0.5,
238
+ "cooldown_minutes": 5,
239
+ },
240
+ droplet_template={
241
+ "size": "c-2",
242
+ "region": "nyc3",
243
+ "image": "ubuntu-24-04-x64",
244
+ "tags": [my_tag.id],
245
+ "ssh_keys": [my_ssh_key.id],
246
+ "with_droplet_agent": True,
247
+ "ipv6": True,
248
+ "user_data": \"\"\"
249
+ #cloud-config
250
+ runcmd:
251
+ - apt-get update
252
+ - apt-get install -y stress-ng
253
+ \"\"\",
254
+ })
255
+ ```
256
+
257
+ ## Import
258
+
259
+ Droplet Autoscale pools can be imported using their `id`, e.g.
260
+
261
+ ```sh
262
+ $ pulumi import digitalocean:index/dropletAutoscale:DropletAutoscale my-autoscale-pool 38e66834-d741-47ec-88e7-c70cbdcz0445
263
+ ```
264
+
265
+ :param str resource_name: The name of the resource.
266
+ :param pulumi.ResourceOptions opts: Options for the resource.
267
+ :param pulumi.Input[Union['DropletAutoscaleConfigArgs', 'DropletAutoscaleConfigArgsDict']] config: The configuration parameters for Droplet Autoscale pool, the supported arguments are
268
+ documented below.
269
+ :param pulumi.Input[Union['DropletAutoscaleDropletTemplateArgs', 'DropletAutoscaleDropletTemplateArgsDict']] droplet_template: The droplet template parameters for Droplet Autoscale pool, the supported arguments
270
+ are documented below.
271
+ :param pulumi.Input[str] name: The name of the Droplet Autoscale pool.
272
+ """
273
+ ...
274
+ @overload
275
+ def __init__(__self__,
276
+ resource_name: str,
277
+ args: DropletAutoscaleArgs,
278
+ opts: Optional[pulumi.ResourceOptions] = None):
279
+ """
280
+ Provides a DigitalOcean Droplet Autoscale resource. This can be used to create, modify,
281
+ read and delete Droplet Autoscale pools.
282
+
283
+ ## Example Usage
284
+
285
+ ```python
286
+ import pulumi
287
+ import pulumi_digitalocean as digitalocean
288
+ import pulumi_std as std
289
+
290
+ my_ssh_key = digitalocean.SshKey("my-ssh-key",
291
+ name="terraform-example",
292
+ public_key=std.file(input="/Users/terraform/.ssh/id_rsa.pub").result)
293
+ my_tag = digitalocean.Tag("my-tag", name="terraform-example")
294
+ my_autoscale_pool = digitalocean.DropletAutoscale("my-autoscale-pool",
295
+ name="terraform-example",
296
+ config={
297
+ "min_instances": 10,
298
+ "max_instances": 50,
299
+ "target_cpu_utilization": 0.5,
300
+ "target_memory_utilization": 0.5,
301
+ "cooldown_minutes": 5,
302
+ },
303
+ droplet_template={
304
+ "size": "c-2",
305
+ "region": "nyc3",
306
+ "image": "ubuntu-24-04-x64",
307
+ "tags": [my_tag.id],
308
+ "ssh_keys": [my_ssh_key.id],
309
+ "with_droplet_agent": True,
310
+ "ipv6": True,
311
+ "user_data": \"\"\"
312
+ #cloud-config
313
+ runcmd:
314
+ - apt-get update
315
+ - apt-get install -y stress-ng
316
+ \"\"\",
317
+ })
318
+ ```
319
+
320
+ ## Import
321
+
322
+ Droplet Autoscale pools can be imported using their `id`, e.g.
323
+
324
+ ```sh
325
+ $ pulumi import digitalocean:index/dropletAutoscale:DropletAutoscale my-autoscale-pool 38e66834-d741-47ec-88e7-c70cbdcz0445
326
+ ```
327
+
328
+ :param str resource_name: The name of the resource.
329
+ :param DropletAutoscaleArgs args: The arguments to use to populate this resource's properties.
330
+ :param pulumi.ResourceOptions opts: Options for the resource.
331
+ """
332
+ ...
333
+ def __init__(__self__, resource_name: str, *args, **kwargs):
334
+ resource_args, opts = _utilities.get_resource_args_opts(DropletAutoscaleArgs, pulumi.ResourceOptions, *args, **kwargs)
335
+ if resource_args is not None:
336
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
337
+ else:
338
+ __self__._internal_init(resource_name, *args, **kwargs)
339
+
340
+ def _internal_init(__self__,
341
+ resource_name: str,
342
+ opts: Optional[pulumi.ResourceOptions] = None,
343
+ config: Optional[pulumi.Input[Union['DropletAutoscaleConfigArgs', 'DropletAutoscaleConfigArgsDict']]] = None,
344
+ droplet_template: Optional[pulumi.Input[Union['DropletAutoscaleDropletTemplateArgs', 'DropletAutoscaleDropletTemplateArgsDict']]] = None,
345
+ name: Optional[pulumi.Input[str]] = None,
346
+ __props__=None):
347
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
348
+ if not isinstance(opts, pulumi.ResourceOptions):
349
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
350
+ if opts.id is None:
351
+ if __props__ is not None:
352
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
353
+ __props__ = DropletAutoscaleArgs.__new__(DropletAutoscaleArgs)
354
+
355
+ if config is None and not opts.urn:
356
+ raise TypeError("Missing required property 'config'")
357
+ __props__.__dict__["config"] = config
358
+ if droplet_template is None and not opts.urn:
359
+ raise TypeError("Missing required property 'droplet_template'")
360
+ __props__.__dict__["droplet_template"] = droplet_template
361
+ __props__.__dict__["name"] = name
362
+ __props__.__dict__["created_at"] = None
363
+ __props__.__dict__["current_utilizations"] = None
364
+ __props__.__dict__["status"] = None
365
+ __props__.__dict__["updated_at"] = None
366
+ super(DropletAutoscale, __self__).__init__(
367
+ 'digitalocean:index/dropletAutoscale:DropletAutoscale',
368
+ resource_name,
369
+ __props__,
370
+ opts)
371
+
372
+ @staticmethod
373
+ def get(resource_name: str,
374
+ id: pulumi.Input[str],
375
+ opts: Optional[pulumi.ResourceOptions] = None,
376
+ config: Optional[pulumi.Input[Union['DropletAutoscaleConfigArgs', 'DropletAutoscaleConfigArgsDict']]] = None,
377
+ created_at: Optional[pulumi.Input[str]] = None,
378
+ current_utilizations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DropletAutoscaleCurrentUtilizationArgs', 'DropletAutoscaleCurrentUtilizationArgsDict']]]]] = None,
379
+ droplet_template: Optional[pulumi.Input[Union['DropletAutoscaleDropletTemplateArgs', 'DropletAutoscaleDropletTemplateArgsDict']]] = None,
380
+ name: Optional[pulumi.Input[str]] = None,
381
+ status: Optional[pulumi.Input[str]] = None,
382
+ updated_at: Optional[pulumi.Input[str]] = None) -> 'DropletAutoscale':
383
+ """
384
+ Get an existing DropletAutoscale resource's state with the given name, id, and optional extra
385
+ properties used to qualify the lookup.
386
+
387
+ :param str resource_name: The unique name of the resulting resource.
388
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
389
+ :param pulumi.ResourceOptions opts: Options for the resource.
390
+ :param pulumi.Input[Union['DropletAutoscaleConfigArgs', 'DropletAutoscaleConfigArgsDict']] config: The configuration parameters for Droplet Autoscale pool, the supported arguments are
391
+ documented below.
392
+ :param pulumi.Input[str] created_at: Created at timestamp for the Droplet Autoscale pool.
393
+ :param pulumi.Input[Sequence[pulumi.Input[Union['DropletAutoscaleCurrentUtilizationArgs', 'DropletAutoscaleCurrentUtilizationArgsDict']]]] current_utilizations: The current average resource utilization of the Droplet Autoscale pool, this attribute further
394
+ embeds `memory` and `cpu` attributes to respectively report utilization data.
395
+ :param pulumi.Input[Union['DropletAutoscaleDropletTemplateArgs', 'DropletAutoscaleDropletTemplateArgsDict']] droplet_template: The droplet template parameters for Droplet Autoscale pool, the supported arguments
396
+ are documented below.
397
+ :param pulumi.Input[str] name: The name of the Droplet Autoscale pool.
398
+ :param pulumi.Input[str] status: Droplet Autoscale pool health status; this reflects if the pool is currently healthy and ready to accept
399
+ traffic, or in an error state and needs user intervention.
400
+ :param pulumi.Input[str] updated_at: Updated at timestamp for the Droplet Autoscale pool.
401
+ """
402
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
403
+
404
+ __props__ = _DropletAutoscaleState.__new__(_DropletAutoscaleState)
405
+
406
+ __props__.__dict__["config"] = config
407
+ __props__.__dict__["created_at"] = created_at
408
+ __props__.__dict__["current_utilizations"] = current_utilizations
409
+ __props__.__dict__["droplet_template"] = droplet_template
410
+ __props__.__dict__["name"] = name
411
+ __props__.__dict__["status"] = status
412
+ __props__.__dict__["updated_at"] = updated_at
413
+ return DropletAutoscale(resource_name, opts=opts, __props__=__props__)
414
+
415
+ @property
416
+ @pulumi.getter
417
+ def config(self) -> pulumi.Output['outputs.DropletAutoscaleConfig']:
418
+ """
419
+ The configuration parameters for Droplet Autoscale pool, the supported arguments are
420
+ documented below.
421
+ """
422
+ return pulumi.get(self, "config")
423
+
424
+ @property
425
+ @pulumi.getter(name="createdAt")
426
+ def created_at(self) -> pulumi.Output[str]:
427
+ """
428
+ Created at timestamp for the Droplet Autoscale pool.
429
+ """
430
+ return pulumi.get(self, "created_at")
431
+
432
+ @property
433
+ @pulumi.getter(name="currentUtilizations")
434
+ def current_utilizations(self) -> pulumi.Output[Sequence['outputs.DropletAutoscaleCurrentUtilization']]:
435
+ """
436
+ The current average resource utilization of the Droplet Autoscale pool, this attribute further
437
+ embeds `memory` and `cpu` attributes to respectively report utilization data.
438
+ """
439
+ return pulumi.get(self, "current_utilizations")
440
+
441
+ @property
442
+ @pulumi.getter(name="dropletTemplate")
443
+ def droplet_template(self) -> pulumi.Output['outputs.DropletAutoscaleDropletTemplate']:
444
+ """
445
+ The droplet template parameters for Droplet Autoscale pool, the supported arguments
446
+ are documented below.
447
+ """
448
+ return pulumi.get(self, "droplet_template")
449
+
450
+ @property
451
+ @pulumi.getter
452
+ def name(self) -> pulumi.Output[str]:
453
+ """
454
+ The name of the Droplet Autoscale pool.
455
+ """
456
+ return pulumi.get(self, "name")
457
+
458
+ @property
459
+ @pulumi.getter
460
+ def status(self) -> pulumi.Output[str]:
461
+ """
462
+ Droplet Autoscale pool health status; this reflects if the pool is currently healthy and ready to accept
463
+ traffic, or in an error state and needs user intervention.
464
+ """
465
+ return pulumi.get(self, "status")
466
+
467
+ @property
468
+ @pulumi.getter(name="updatedAt")
469
+ def updated_at(self) -> pulumi.Output[str]:
470
+ """
471
+ Updated at timestamp for the Droplet Autoscale pool.
472
+ """
473
+ return pulumi.get(self, "updated_at")
474
+
@@ -161,7 +161,7 @@ def get_account(opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAcco
161
161
  status=pulumi.get(__ret__, 'status'),
162
162
  status_message=pulumi.get(__ret__, 'status_message'),
163
163
  uuid=pulumi.get(__ret__, 'uuid'))
164
- def get_account_output(opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetAccountResult]:
164
+ def get_account_output(opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetAccountResult]:
165
165
  """
166
166
  Get information on your DigitalOcean account.
167
167
 
@@ -177,7 +177,7 @@ def get_account_output(opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Ou
177
177
  ```
178
178
  """
179
179
  __args__ = dict()
180
- opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
180
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
181
181
  __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getAccount:getAccount', __args__, opts=opts, typ=GetAccountResult)
182
182
  return __ret__.apply(lambda __response__: GetAccountResult(
183
183
  droplet_limit=pulumi.get(__response__, 'droplet_limit'),
@@ -223,7 +223,7 @@ def get_app(app_id: Optional[str] = None,
223
223
  urn=pulumi.get(__ret__, 'urn'))
224
224
  def get_app_output(app_id: Optional[pulumi.Input[str]] = None,
225
225
  dedicated_ips: Optional[pulumi.Input[Optional[Sequence[Union['GetAppDedicatedIpArgs', 'GetAppDedicatedIpArgsDict']]]]] = None,
226
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetAppResult]:
226
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetAppResult]:
227
227
  """
228
228
  Get information on a DigitalOcean App.
229
229
 
@@ -246,7 +246,7 @@ def get_app_output(app_id: Optional[pulumi.Input[str]] = None,
246
246
  __args__ = dict()
247
247
  __args__['appId'] = app_id
248
248
  __args__['dedicatedIps'] = dedicated_ips
249
- opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
249
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
250
250
  __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getApp:getApp', __args__, opts=opts, typ=GetAppResult)
251
251
  return __ret__.apply(lambda __response__: GetAppResult(
252
252
  active_deployment_id=pulumi.get(__response__, 'active_deployment_id'),
@@ -169,7 +169,7 @@ def get_certificate(name: Optional[str] = None,
169
169
  type=pulumi.get(__ret__, 'type'),
170
170
  uuid=pulumi.get(__ret__, 'uuid'))
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.
@@ -194,7 +194,7 @@ def get_certificate_output(name: Optional[pulumi.Input[str]] = None,
194
194
  """
195
195
  __args__ = dict()
196
196
  __args__['name'] = name
197
- opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
197
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
198
198
  __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getCertificate:getCertificate', __args__, opts=opts, typ=GetCertificateResult)
199
199
  return __ret__.apply(lambda __response__: GetCertificateResult(
200
200
  domains=pulumi.get(__response__, 'domains'),
@@ -174,7 +174,7 @@ def get_container_registry(name: Optional[str] = None,
174
174
  storage_usage_bytes=pulumi.get(__ret__, 'storage_usage_bytes'),
175
175
  subscription_tier_slug=pulumi.get(__ret__, 'subscription_tier_slug'))
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
@@ -201,7 +201,7 @@ def get_container_registry_output(name: Optional[pulumi.Input[str]] = None,
201
201
  """
202
202
  __args__ = dict()
203
203
  __args__['name'] = name
204
- opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
204
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
205
205
  __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getContainerRegistry:getContainerRegistry', __args__, opts=opts, typ=GetContainerRegistryResult)
206
206
  return __ret__.apply(lambda __response__: GetContainerRegistryResult(
207
207
  created_at=pulumi.get(__response__, 'created_at'),
@@ -98,7 +98,7 @@ def get_database_ca(cluster_id: Optional[str] = None,
98
98
  cluster_id=pulumi.get(__ret__, 'cluster_id'),
99
99
  id=pulumi.get(__ret__, 'id'))
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
 
@@ -117,7 +117,7 @@ def get_database_ca_output(cluster_id: Optional[pulumi.Input[str]] = None,
117
117
  """
118
118
  __args__ = dict()
119
119
  __args__['clusterId'] = cluster_id
120
- opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
120
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
121
121
  __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getDatabaseCa:getDatabaseCa', __args__, opts=opts, typ=GetDatabaseCaResult)
122
122
  return __ret__.apply(lambda __response__: GetDatabaseCaResult(
123
123
  certificate=pulumi.get(__response__, 'certificate'),
@@ -408,7 +408,7 @@ def get_database_cluster(name: Optional[str] = None,
408
408
  version=pulumi.get(__ret__, 'version'))
409
409
  def get_database_cluster_output(name: Optional[pulumi.Input[str]] = None,
410
410
  tags: Optional[pulumi.Input[Optional[Sequence[str]]]] = None,
411
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDatabaseClusterResult]:
411
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDatabaseClusterResult]:
412
412
  """
413
413
  Provides information on a DigitalOcean database cluster resource.
414
414
 
@@ -428,7 +428,7 @@ def get_database_cluster_output(name: Optional[pulumi.Input[str]] = None,
428
428
  __args__ = dict()
429
429
  __args__['name'] = name
430
430
  __args__['tags'] = tags
431
- opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
431
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
432
432
  __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getDatabaseCluster:getDatabaseCluster', __args__, opts=opts, typ=GetDatabaseClusterResult)
433
433
  return __ret__.apply(lambda __response__: GetDatabaseClusterResult(
434
434
  database=pulumi.get(__response__, 'database'),
@@ -231,7 +231,7 @@ def get_database_connection_pool(cluster_id: Optional[str] = None,
231
231
  user=pulumi.get(__ret__, 'user'))
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
 
@@ -254,7 +254,7 @@ def get_database_connection_pool_output(cluster_id: Optional[pulumi.Input[str]]
254
254
  __args__ = dict()
255
255
  __args__['clusterId'] = cluster_id
256
256
  __args__['name'] = name
257
- opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
257
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
258
258
  __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getDatabaseConnectionPool:getDatabaseConnectionPool', __args__, opts=opts, typ=GetDatabaseConnectionPoolResult)
259
259
  return __ret__.apply(lambda __response__: GetDatabaseConnectionPoolResult(
260
260
  cluster_id=pulumi.get(__response__, 'cluster_id'),
@@ -265,7 +265,7 @@ def get_database_replica(cluster_id: Optional[str] = None,
265
265
  def get_database_replica_output(cluster_id: Optional[pulumi.Input[str]] = None,
266
266
  name: Optional[pulumi.Input[str]] = None,
267
267
  tags: Optional[pulumi.Input[Optional[Sequence[str]]]] = None,
268
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDatabaseReplicaResult]:
268
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDatabaseReplicaResult]:
269
269
  """
270
270
  Provides information on a DigitalOcean database replica.
271
271
 
@@ -290,7 +290,7 @@ def get_database_replica_output(cluster_id: Optional[pulumi.Input[str]] = None,
290
290
  __args__['clusterId'] = cluster_id
291
291
  __args__['name'] = name
292
292
  __args__['tags'] = tags
293
- opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
293
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
294
294
  __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getDatabaseReplica:getDatabaseReplica', __args__, opts=opts, typ=GetDatabaseReplicaResult)
295
295
  return __ret__.apply(lambda __response__: GetDatabaseReplicaResult(
296
296
  cluster_id=pulumi.get(__response__, 'cluster_id'),
@@ -177,7 +177,7 @@ def get_database_user(cluster_id: Optional[str] = None,
177
177
  settings=pulumi.get(__ret__, 'settings'))
178
178
  def get_database_user_output(cluster_id: Optional[pulumi.Input[str]] = None,
179
179
  name: Optional[pulumi.Input[str]] = None,
180
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDatabaseUserResult]:
180
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDatabaseUserResult]:
181
181
  """
182
182
  Provides information on a DigitalOcean database user resource.
183
183
 
@@ -200,7 +200,7 @@ def get_database_user_output(cluster_id: Optional[pulumi.Input[str]] = None,
200
200
  __args__ = dict()
201
201
  __args__['clusterId'] = cluster_id
202
202
  __args__['name'] = name
203
- opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
203
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
204
204
  __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getDatabaseUser:getDatabaseUser', __args__, opts=opts, typ=GetDatabaseUserResult)
205
205
  return __ret__.apply(lambda __response__: GetDatabaseUserResult(
206
206
  access_cert=pulumi.get(__response__, 'access_cert'),
@@ -132,7 +132,7 @@ def get_domain(name: Optional[str] = None,
132
132
  ttl=pulumi.get(__ret__, 'ttl'),
133
133
  zone_file=pulumi.get(__ret__, 'zone_file'))
134
134
  def get_domain_output(name: Optional[pulumi.Input[str]] = None,
135
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDomainResult]:
135
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetDomainResult]:
136
136
  """
137
137
  Get information on a domain. This data source provides the name, TTL, and zone
138
138
  file as configured on your DigitalOcean account. This is useful if the domain
@@ -159,7 +159,7 @@ def get_domain_output(name: Optional[pulumi.Input[str]] = None,
159
159
  """
160
160
  __args__ = dict()
161
161
  __args__['name'] = name
162
- opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
162
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
163
163
  __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getDomain:getDomain', __args__, opts=opts, typ=GetDomainResult)
164
164
  return __ret__.apply(lambda __response__: GetDomainResult(
165
165
  domain_urn=pulumi.get(__response__, 'domain_urn'),