pulumi-digitalocean 4.27.0__py3-none-any.whl → 4.39.0a1736833057__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pulumi-digitalocean might be problematic. Click here for more details.

Files changed (107) hide show
  1. pulumi_digitalocean/__init__.py +75 -0
  2. pulumi_digitalocean/_enums.py +131 -52
  3. pulumi_digitalocean/_inputs.py +5767 -399
  4. pulumi_digitalocean/_utilities.py +41 -5
  5. pulumi_digitalocean/app.py +199 -67
  6. pulumi_digitalocean/cdn.py +20 -23
  7. pulumi_digitalocean/certificate.py +45 -42
  8. pulumi_digitalocean/config/__init__.pyi +5 -0
  9. pulumi_digitalocean/config/vars.py +5 -0
  10. pulumi_digitalocean/container_registry.py +11 -6
  11. pulumi_digitalocean/container_registry_docker_credentials.py +53 -12
  12. pulumi_digitalocean/custom_image.py +13 -8
  13. pulumi_digitalocean/database_cluster.py +298 -120
  14. pulumi_digitalocean/database_connection_pool.py +15 -10
  15. pulumi_digitalocean/database_db.py +19 -12
  16. pulumi_digitalocean/database_firewall.py +78 -75
  17. pulumi_digitalocean/database_kafka_config.py +1040 -0
  18. pulumi_digitalocean/database_kafka_topic.py +66 -61
  19. pulumi_digitalocean/database_mongodb_config.py +452 -0
  20. pulumi_digitalocean/database_mysql_config.py +15 -12
  21. pulumi_digitalocean/database_opensearch_config.py +2069 -0
  22. pulumi_digitalocean/database_postgresql_config.py +2614 -0
  23. pulumi_digitalocean/database_redis_config.py +29 -12
  24. pulumi_digitalocean/database_replica.py +29 -24
  25. pulumi_digitalocean/database_user.py +90 -75
  26. pulumi_digitalocean/dns_record.py +13 -8
  27. pulumi_digitalocean/domain.py +7 -6
  28. pulumi_digitalocean/droplet.py +89 -31
  29. pulumi_digitalocean/droplet_autoscale.py +474 -0
  30. pulumi_digitalocean/droplet_snapshot.py +23 -14
  31. pulumi_digitalocean/firewall.py +118 -106
  32. pulumi_digitalocean/floating_ip.py +19 -16
  33. pulumi_digitalocean/floating_ip_assignment.py +19 -16
  34. pulumi_digitalocean/get_account.py +18 -9
  35. pulumi_digitalocean/get_app.py +57 -10
  36. pulumi_digitalocean/get_certificate.py +19 -9
  37. pulumi_digitalocean/get_container_registry.py +19 -9
  38. pulumi_digitalocean/get_database_ca.py +14 -9
  39. pulumi_digitalocean/get_database_cluster.py +119 -11
  40. pulumi_digitalocean/get_database_connection_pool.py +25 -9
  41. pulumi_digitalocean/get_database_replica.py +29 -9
  42. pulumi_digitalocean/get_database_user.py +21 -9
  43. pulumi_digitalocean/get_domain.py +16 -9
  44. pulumi_digitalocean/get_domains.py +34 -27
  45. pulumi_digitalocean/get_droplet.py +66 -23
  46. pulumi_digitalocean/get_droplet_autoscale.py +197 -0
  47. pulumi_digitalocean/get_droplet_snapshot.py +36 -23
  48. pulumi_digitalocean/get_droplets.py +80 -54
  49. pulumi_digitalocean/get_firewall.py +29 -13
  50. pulumi_digitalocean/get_floating_ip.py +16 -9
  51. pulumi_digitalocean/get_image.py +42 -27
  52. pulumi_digitalocean/get_images.py +56 -53
  53. pulumi_digitalocean/get_kubernetes_cluster.py +53 -6
  54. pulumi_digitalocean/get_kubernetes_versions.py +43 -41
  55. pulumi_digitalocean/get_load_balancer.py +81 -17
  56. pulumi_digitalocean/get_project.py +23 -9
  57. pulumi_digitalocean/get_projects.py +56 -53
  58. pulumi_digitalocean/get_record.py +23 -9
  59. pulumi_digitalocean/get_records.py +62 -13
  60. pulumi_digitalocean/get_region.py +17 -9
  61. pulumi_digitalocean/get_regions.py +56 -53
  62. pulumi_digitalocean/get_reserved_ip.py +16 -9
  63. pulumi_digitalocean/get_reserved_ipv6.py +118 -0
  64. pulumi_digitalocean/get_sizes.py +24 -13
  65. pulumi_digitalocean/get_spaces_bucket.py +18 -9
  66. pulumi_digitalocean/get_spaces_bucket_object.py +41 -14
  67. pulumi_digitalocean/get_spaces_bucket_objects.py +26 -5
  68. pulumi_digitalocean/get_spaces_buckets.py +48 -45
  69. pulumi_digitalocean/get_ssh_key.py +27 -19
  70. pulumi_digitalocean/get_ssh_keys.py +40 -37
  71. pulumi_digitalocean/get_tag.py +31 -19
  72. pulumi_digitalocean/get_tags.py +32 -25
  73. pulumi_digitalocean/get_volume.py +35 -23
  74. pulumi_digitalocean/get_volume_snapshot.py +35 -21
  75. pulumi_digitalocean/get_vpc.py +33 -23
  76. pulumi_digitalocean/get_vpc_peering.py +244 -0
  77. pulumi_digitalocean/kubernetes_cluster.py +86 -35
  78. pulumi_digitalocean/kubernetes_node_pool.py +46 -43
  79. pulumi_digitalocean/load_balancer.py +320 -157
  80. pulumi_digitalocean/monitor_alert.py +17 -12
  81. pulumi_digitalocean/outputs.py +3419 -344
  82. pulumi_digitalocean/project.py +19 -16
  83. pulumi_digitalocean/project_resources.py +11 -8
  84. pulumi_digitalocean/provider.py +5 -0
  85. pulumi_digitalocean/pulumi-plugin.json +2 -1
  86. pulumi_digitalocean/reserved_ip.py +19 -16
  87. pulumi_digitalocean/reserved_ip_assignment.py +19 -16
  88. pulumi_digitalocean/reserved_ipv6.py +232 -0
  89. pulumi_digitalocean/reserved_ipv6_assignment.py +171 -0
  90. pulumi_digitalocean/spaces_bucket.py +70 -79
  91. pulumi_digitalocean/spaces_bucket_cors_configuration.py +30 -25
  92. pulumi_digitalocean/spaces_bucket_object.py +11 -12
  93. pulumi_digitalocean/spaces_bucket_policy.py +21 -16
  94. pulumi_digitalocean/ssh_key.py +19 -10
  95. pulumi_digitalocean/tag.py +13 -10
  96. pulumi_digitalocean/uptime_alert.py +10 -5
  97. pulumi_digitalocean/uptime_check.py +5 -0
  98. pulumi_digitalocean/volume.py +47 -50
  99. pulumi_digitalocean/volume_attachment.py +25 -20
  100. pulumi_digitalocean/volume_snapshot.py +17 -10
  101. pulumi_digitalocean/vpc.py +27 -22
  102. pulumi_digitalocean/vpc_peering.py +378 -0
  103. {pulumi_digitalocean-4.27.0.dist-info → pulumi_digitalocean-4.39.0a1736833057.dist-info}/METADATA +7 -6
  104. pulumi_digitalocean-4.39.0a1736833057.dist-info/RECORD +108 -0
  105. {pulumi_digitalocean-4.27.0.dist-info → pulumi_digitalocean-4.39.0a1736833057.dist-info}/WHEEL +1 -1
  106. pulumi_digitalocean-4.27.0.dist-info/RECORD +0 -97
  107. {pulumi_digitalocean-4.27.0.dist-info → pulumi_digitalocean-4.39.0a1736833057.dist-info}/top_level.txt +0 -0
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
 
12
17
  __all__ = [
@@ -105,7 +110,6 @@ def get_floating_ip(ip_address: Optional[str] = None,
105
110
 
106
111
  Get the floating IP:
107
112
 
108
- <!--Start PulumiCodeChooser -->
109
113
  ```python
110
114
  import pulumi
111
115
  import pulumi_digitalocean as digitalocean
@@ -115,7 +119,6 @@ def get_floating_ip(ip_address: Optional[str] = None,
115
119
  example = digitalocean.get_floating_ip(ip_address=public_ip)
116
120
  pulumi.export("fipOutput", example.droplet_id)
117
121
  ```
118
- <!--End PulumiCodeChooser -->
119
122
 
120
123
 
121
124
  :param str ip_address: The allocated IP address of the specific floating IP to retrieve.
@@ -131,11 +134,8 @@ def get_floating_ip(ip_address: Optional[str] = None,
131
134
  id=pulumi.get(__ret__, 'id'),
132
135
  ip_address=pulumi.get(__ret__, 'ip_address'),
133
136
  region=pulumi.get(__ret__, 'region'))
134
-
135
-
136
- @_utilities.lift_output_func(get_floating_ip)
137
137
  def get_floating_ip_output(ip_address: Optional[pulumi.Input[str]] = None,
138
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetFloatingIpResult]:
138
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetFloatingIpResult]:
139
139
  """
140
140
  > **Deprecated:** DigitalOcean Floating IPs have been renamed reserved IPs. This data source will be removed in a future release. Please use `ReservedIp` instead.
141
141
 
@@ -150,7 +150,6 @@ def get_floating_ip_output(ip_address: Optional[pulumi.Input[str]] = None,
150
150
 
151
151
  Get the floating IP:
152
152
 
153
- <!--Start PulumiCodeChooser -->
154
153
  ```python
155
154
  import pulumi
156
155
  import pulumi_digitalocean as digitalocean
@@ -160,9 +159,17 @@ def get_floating_ip_output(ip_address: Optional[pulumi.Input[str]] = None,
160
159
  example = digitalocean.get_floating_ip(ip_address=public_ip)
161
160
  pulumi.export("fipOutput", example.droplet_id)
162
161
  ```
163
- <!--End PulumiCodeChooser -->
164
162
 
165
163
 
166
164
  :param str ip_address: The allocated IP address of the specific floating IP to retrieve.
167
165
  """
168
- ...
166
+ __args__ = dict()
167
+ __args__['ipAddress'] = ip_address
168
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
169
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getFloatingIp:getFloatingIp', __args__, opts=opts, typ=GetFloatingIpResult)
170
+ return __ret__.apply(lambda __response__: GetFloatingIpResult(
171
+ droplet_id=pulumi.get(__response__, 'droplet_id'),
172
+ floating_ip_urn=pulumi.get(__response__, 'floating_ip_urn'),
173
+ id=pulumi.get(__response__, 'id'),
174
+ ip_address=pulumi.get(__response__, 'ip_address'),
175
+ region=pulumi.get(__response__, 'region')))
@@ -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__ = [
@@ -237,40 +242,35 @@ def get_image(id: Optional[int] = None,
237
242
 
238
243
  Get the data about a snapshot:
239
244
 
240
- <!--Start PulumiCodeChooser -->
241
245
  ```python
242
246
  import pulumi
243
247
  import pulumi_digitalocean as digitalocean
244
248
 
245
249
  example1 = digitalocean.get_image(name="example-1.0.0")
246
250
  ```
247
- <!--End PulumiCodeChooser -->
248
251
 
249
252
  Reuse the data about a snapshot to create a Droplet:
250
253
 
251
- <!--Start PulumiCodeChooser -->
252
254
  ```python
253
255
  import pulumi
254
256
  import pulumi_digitalocean as digitalocean
255
257
 
256
- example_image = digitalocean.get_image(name="example-1.0.0")
257
- example_droplet = digitalocean.Droplet("exampleDroplet",
258
- image=example_image.id,
259
- region="nyc2",
260
- size="s-1vcpu-1gb")
258
+ example = digitalocean.get_image(name="example-1.0.0")
259
+ example_droplet = digitalocean.Droplet("example",
260
+ image=example.id,
261
+ name="example-1",
262
+ region=digitalocean.Region.NYC2,
263
+ size=digitalocean.DropletSlug.DROPLET_S1_VCPU1_GB)
261
264
  ```
262
- <!--End PulumiCodeChooser -->
263
265
 
264
266
  Get the data about an official image:
265
267
 
266
- <!--Start PulumiCodeChooser -->
267
268
  ```python
268
269
  import pulumi
269
270
  import pulumi_digitalocean as digitalocean
270
271
 
271
272
  example2 = digitalocean.get_image(slug="ubuntu-18-04-x64")
272
273
  ```
273
- <!--End PulumiCodeChooser -->
274
274
 
275
275
 
276
276
  :param int id: The id of the image
@@ -305,14 +305,11 @@ def get_image(id: Optional[int] = None,
305
305
  status=pulumi.get(__ret__, 'status'),
306
306
  tags=pulumi.get(__ret__, 'tags'),
307
307
  type=pulumi.get(__ret__, 'type'))
308
-
309
-
310
- @_utilities.lift_output_func(get_image)
311
308
  def get_image_output(id: Optional[pulumi.Input[Optional[int]]] = None,
312
309
  name: Optional[pulumi.Input[Optional[str]]] = None,
313
310
  slug: Optional[pulumi.Input[Optional[str]]] = None,
314
311
  source: Optional[pulumi.Input[Optional[str]]] = None,
315
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetImageResult]:
312
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetImageResult]:
316
313
  """
317
314
  Get information on an image for use in other resources (e.g. creating a Droplet
318
315
  based on snapshot). This data source provides all of the image properties as
@@ -325,40 +322,35 @@ def get_image_output(id: Optional[pulumi.Input[Optional[int]]] = None,
325
322
 
326
323
  Get the data about a snapshot:
327
324
 
328
- <!--Start PulumiCodeChooser -->
329
325
  ```python
330
326
  import pulumi
331
327
  import pulumi_digitalocean as digitalocean
332
328
 
333
329
  example1 = digitalocean.get_image(name="example-1.0.0")
334
330
  ```
335
- <!--End PulumiCodeChooser -->
336
331
 
337
332
  Reuse the data about a snapshot to create a Droplet:
338
333
 
339
- <!--Start PulumiCodeChooser -->
340
334
  ```python
341
335
  import pulumi
342
336
  import pulumi_digitalocean as digitalocean
343
337
 
344
- example_image = digitalocean.get_image(name="example-1.0.0")
345
- example_droplet = digitalocean.Droplet("exampleDroplet",
346
- image=example_image.id,
347
- region="nyc2",
348
- size="s-1vcpu-1gb")
338
+ example = digitalocean.get_image(name="example-1.0.0")
339
+ example_droplet = digitalocean.Droplet("example",
340
+ image=example.id,
341
+ name="example-1",
342
+ region=digitalocean.Region.NYC2,
343
+ size=digitalocean.DropletSlug.DROPLET_S1_VCPU1_GB)
349
344
  ```
350
- <!--End PulumiCodeChooser -->
351
345
 
352
346
  Get the data about an official image:
353
347
 
354
- <!--Start PulumiCodeChooser -->
355
348
  ```python
356
349
  import pulumi
357
350
  import pulumi_digitalocean as digitalocean
358
351
 
359
352
  example2 = digitalocean.get_image(slug="ubuntu-18-04-x64")
360
353
  ```
361
- <!--End PulumiCodeChooser -->
362
354
 
363
355
 
364
356
  :param int id: The id of the image
@@ -368,4 +360,27 @@ def get_image_output(id: Optional[pulumi.Input[Optional[int]]] = None,
368
360
  If `name` is specified, you may also specify:
369
361
  :param str source: Restrict the search to one of the following categories of images:
370
362
  """
371
- ...
363
+ __args__ = dict()
364
+ __args__['id'] = id
365
+ __args__['name'] = name
366
+ __args__['slug'] = slug
367
+ __args__['source'] = source
368
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
369
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getImage:getImage', __args__, opts=opts, typ=GetImageResult)
370
+ return __ret__.apply(lambda __response__: GetImageResult(
371
+ created=pulumi.get(__response__, 'created'),
372
+ description=pulumi.get(__response__, 'description'),
373
+ distribution=pulumi.get(__response__, 'distribution'),
374
+ error_message=pulumi.get(__response__, 'error_message'),
375
+ id=pulumi.get(__response__, 'id'),
376
+ image=pulumi.get(__response__, 'image'),
377
+ min_disk_size=pulumi.get(__response__, 'min_disk_size'),
378
+ name=pulumi.get(__response__, 'name'),
379
+ private=pulumi.get(__response__, 'private'),
380
+ regions=pulumi.get(__response__, 'regions'),
381
+ size_gigabytes=pulumi.get(__response__, 'size_gigabytes'),
382
+ slug=pulumi.get(__response__, 'slug'),
383
+ source=pulumi.get(__response__, 'source'),
384
+ status=pulumi.get(__response__, 'status'),
385
+ tags=pulumi.get(__response__, 'tags'),
386
+ type=pulumi.get(__response__, 'type')))
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -76,8 +81,8 @@ class AwaitableGetImagesResult(GetImagesResult):
76
81
  sorts=self.sorts)
77
82
 
78
83
 
79
- def get_images(filters: Optional[Sequence[pulumi.InputType['GetImagesFilterArgs']]] = None,
80
- sorts: Optional[Sequence[pulumi.InputType['GetImagesSortArgs']]] = None,
84
+ def get_images(filters: Optional[Sequence[Union['GetImagesFilterArgs', 'GetImagesFilterArgsDict']]] = None,
85
+ sorts: Optional[Sequence[Union['GetImagesSortArgs', 'GetImagesSortArgsDict']]] = None,
81
86
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetImagesResult:
82
87
  """
83
88
  Get information on images for use in other resources (e.g. creating a Droplet
@@ -96,46 +101,42 @@ def get_images(filters: Optional[Sequence[pulumi.InputType['GetImagesFilterArgs'
96
101
 
97
102
  For example to find all Ubuntu images:
98
103
 
99
- <!--Start PulumiCodeChooser -->
100
104
  ```python
101
105
  import pulumi
102
106
  import pulumi_digitalocean as digitalocean
103
107
 
104
- ubuntu = digitalocean.get_images(filters=[digitalocean.GetImagesFilterArgs(
105
- key="distribution",
106
- values=["Ubuntu"],
107
- )])
108
+ ubuntu = digitalocean.get_images(filters=[{
109
+ "key": "distribution",
110
+ "values": ["Ubuntu"],
111
+ }])
108
112
  ```
109
- <!--End PulumiCodeChooser -->
110
113
 
111
114
  You can filter on multiple fields and sort the results as well:
112
115
 
113
- <!--Start PulumiCodeChooser -->
114
116
  ```python
115
117
  import pulumi
116
118
  import pulumi_digitalocean as digitalocean
117
119
 
118
120
  available = digitalocean.get_images(filters=[
119
- digitalocean.GetImagesFilterArgs(
120
- key="distribution",
121
- values=["Ubuntu"],
122
- ),
123
- digitalocean.GetImagesFilterArgs(
124
- key="regions",
125
- values=["nyc3"],
126
- ),
121
+ {
122
+ "key": "distribution",
123
+ "values": ["Ubuntu"],
124
+ },
125
+ {
126
+ "key": "regions",
127
+ "values": ["nyc3"],
128
+ },
127
129
  ],
128
- sorts=[digitalocean.GetImagesSortArgs(
129
- direction="desc",
130
- key="created",
131
- )])
130
+ sorts=[{
131
+ "key": "created",
132
+ "direction": "desc",
133
+ }])
132
134
  ```
133
- <!--End PulumiCodeChooser -->
134
135
 
135
136
 
136
- :param Sequence[pulumi.InputType['GetImagesFilterArgs']] filters: Filter the results.
137
+ :param Sequence[Union['GetImagesFilterArgs', 'GetImagesFilterArgsDict']] filters: Filter the results.
137
138
  The `filter` block is documented below.
138
- :param Sequence[pulumi.InputType['GetImagesSortArgs']] sorts: Sort the results.
139
+ :param Sequence[Union['GetImagesSortArgs', 'GetImagesSortArgsDict']] sorts: Sort the results.
139
140
  The `sort` block is documented below.
140
141
  """
141
142
  __args__ = dict()
@@ -149,12 +150,9 @@ def get_images(filters: Optional[Sequence[pulumi.InputType['GetImagesFilterArgs'
149
150
  id=pulumi.get(__ret__, 'id'),
150
151
  images=pulumi.get(__ret__, 'images'),
151
152
  sorts=pulumi.get(__ret__, 'sorts'))
152
-
153
-
154
- @_utilities.lift_output_func(get_images)
155
- def get_images_output(filters: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetImagesFilterArgs']]]]] = None,
156
- sorts: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetImagesSortArgs']]]]] = None,
157
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetImagesResult]:
153
+ def get_images_output(filters: Optional[pulumi.Input[Optional[Sequence[Union['GetImagesFilterArgs', 'GetImagesFilterArgsDict']]]]] = None,
154
+ sorts: Optional[pulumi.Input[Optional[Sequence[Union['GetImagesSortArgs', 'GetImagesSortArgsDict']]]]] = None,
155
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetImagesResult]:
158
156
  """
159
157
  Get information on images for use in other resources (e.g. creating a Droplet
160
158
  based on a snapshot), with the ability to filter and sort the results. If no filters are specified,
@@ -172,46 +170,51 @@ def get_images_output(filters: Optional[pulumi.Input[Optional[Sequence[pulumi.In
172
170
 
173
171
  For example to find all Ubuntu images:
174
172
 
175
- <!--Start PulumiCodeChooser -->
176
173
  ```python
177
174
  import pulumi
178
175
  import pulumi_digitalocean as digitalocean
179
176
 
180
- ubuntu = digitalocean.get_images(filters=[digitalocean.GetImagesFilterArgs(
181
- key="distribution",
182
- values=["Ubuntu"],
183
- )])
177
+ ubuntu = digitalocean.get_images(filters=[{
178
+ "key": "distribution",
179
+ "values": ["Ubuntu"],
180
+ }])
184
181
  ```
185
- <!--End PulumiCodeChooser -->
186
182
 
187
183
  You can filter on multiple fields and sort the results as well:
188
184
 
189
- <!--Start PulumiCodeChooser -->
190
185
  ```python
191
186
  import pulumi
192
187
  import pulumi_digitalocean as digitalocean
193
188
 
194
189
  available = digitalocean.get_images(filters=[
195
- digitalocean.GetImagesFilterArgs(
196
- key="distribution",
197
- values=["Ubuntu"],
198
- ),
199
- digitalocean.GetImagesFilterArgs(
200
- key="regions",
201
- values=["nyc3"],
202
- ),
190
+ {
191
+ "key": "distribution",
192
+ "values": ["Ubuntu"],
193
+ },
194
+ {
195
+ "key": "regions",
196
+ "values": ["nyc3"],
197
+ },
203
198
  ],
204
- sorts=[digitalocean.GetImagesSortArgs(
205
- direction="desc",
206
- key="created",
207
- )])
199
+ sorts=[{
200
+ "key": "created",
201
+ "direction": "desc",
202
+ }])
208
203
  ```
209
- <!--End PulumiCodeChooser -->
210
204
 
211
205
 
212
- :param Sequence[pulumi.InputType['GetImagesFilterArgs']] filters: Filter the results.
206
+ :param Sequence[Union['GetImagesFilterArgs', 'GetImagesFilterArgsDict']] filters: Filter the results.
213
207
  The `filter` block is documented below.
214
- :param Sequence[pulumi.InputType['GetImagesSortArgs']] sorts: Sort the results.
208
+ :param Sequence[Union['GetImagesSortArgs', 'GetImagesSortArgsDict']] sorts: Sort the results.
215
209
  The `sort` block is documented below.
216
210
  """
217
- ...
211
+ __args__ = dict()
212
+ __args__['filters'] = filters
213
+ __args__['sorts'] = sorts
214
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
215
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getImages:getImages', __args__, opts=opts, typ=GetImagesResult)
216
+ return __ret__.apply(lambda __response__: GetImagesResult(
217
+ filters=pulumi.get(__response__, 'filters'),
218
+ id=pulumi.get(__response__, 'id'),
219
+ images=pulumi.get(__response__, 'images'),
220
+ sorts=pulumi.get(__response__, 'sorts')))
@@ -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
 
@@ -89,7 +94,6 @@ class GetKubernetesClusterResult:
89
94
  def auto_upgrade(self) -> bool:
90
95
  """
91
96
  A boolean value indicating whether the cluster will be automatically upgraded to new patch releases during its maintenance window.
92
- * `kube_config.0` - A representation of the Kubernetes cluster's kubeconfig with the following attributes:
93
97
  """
94
98
  return pulumi.get(self, "auto_upgrade")
95
99
 
@@ -141,6 +145,9 @@ class GetKubernetesClusterResult:
141
145
  @property
142
146
  @pulumi.getter(name="kubeConfigs")
143
147
  def kube_configs(self) -> Sequence['outputs.GetKubernetesClusterKubeConfigResult']:
148
+ """
149
+ A representation of the Kubernetes cluster's kubeconfig with the following attributes:
150
+ """
144
151
  return pulumi.get(self, "kube_configs")
145
152
 
146
153
  @property
@@ -271,6 +278,15 @@ def get_kubernetes_cluster(name: Optional[str] = None,
271
278
  """
272
279
  Retrieves information about a DigitalOcean Kubernetes cluster for use in other resources. This data source provides all of the cluster's properties as configured on your DigitalOcean account. This is useful if the cluster in question is not managed by the provider.
273
280
 
281
+ ## Example Usage
282
+
283
+ ```python
284
+ import pulumi
285
+ import pulumi_digitalocean as digitalocean
286
+
287
+ example = digitalocean.get_kubernetes_cluster(name="prod-cluster-01")
288
+ ```
289
+
274
290
 
275
291
  :param str name: The name of Kubernetes cluster.
276
292
  :param Sequence[str] tags: A list of tag names applied to the node pool.
@@ -302,17 +318,48 @@ def get_kubernetes_cluster(name: Optional[str] = None,
302
318
  urn=pulumi.get(__ret__, 'urn'),
303
319
  version=pulumi.get(__ret__, 'version'),
304
320
  vpc_uuid=pulumi.get(__ret__, 'vpc_uuid'))
305
-
306
-
307
- @_utilities.lift_output_func(get_kubernetes_cluster)
308
321
  def get_kubernetes_cluster_output(name: Optional[pulumi.Input[str]] = None,
309
322
  tags: Optional[pulumi.Input[Optional[Sequence[str]]]] = None,
310
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetKubernetesClusterResult]:
323
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetKubernetesClusterResult]:
311
324
  """
312
325
  Retrieves information about a DigitalOcean Kubernetes cluster for use in other resources. This data source provides all of the cluster's properties as configured on your DigitalOcean account. This is useful if the cluster in question is not managed by the provider.
313
326
 
327
+ ## Example Usage
328
+
329
+ ```python
330
+ import pulumi
331
+ import pulumi_digitalocean as digitalocean
332
+
333
+ example = digitalocean.get_kubernetes_cluster(name="prod-cluster-01")
334
+ ```
335
+
314
336
 
315
337
  :param str name: The name of Kubernetes cluster.
316
338
  :param Sequence[str] tags: A list of tag names applied to the node pool.
317
339
  """
318
- ...
340
+ __args__ = dict()
341
+ __args__['name'] = name
342
+ __args__['tags'] = tags
343
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
344
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getKubernetesCluster:getKubernetesCluster', __args__, opts=opts, typ=GetKubernetesClusterResult)
345
+ return __ret__.apply(lambda __response__: GetKubernetesClusterResult(
346
+ auto_upgrade=pulumi.get(__response__, 'auto_upgrade'),
347
+ cluster_subnet=pulumi.get(__response__, 'cluster_subnet'),
348
+ created_at=pulumi.get(__response__, 'created_at'),
349
+ endpoint=pulumi.get(__response__, 'endpoint'),
350
+ ha=pulumi.get(__response__, 'ha'),
351
+ id=pulumi.get(__response__, 'id'),
352
+ ipv4_address=pulumi.get(__response__, 'ipv4_address'),
353
+ kube_configs=pulumi.get(__response__, 'kube_configs'),
354
+ maintenance_policies=pulumi.get(__response__, 'maintenance_policies'),
355
+ name=pulumi.get(__response__, 'name'),
356
+ node_pools=pulumi.get(__response__, 'node_pools'),
357
+ region=pulumi.get(__response__, 'region'),
358
+ service_subnet=pulumi.get(__response__, 'service_subnet'),
359
+ status=pulumi.get(__response__, 'status'),
360
+ surge_upgrade=pulumi.get(__response__, 'surge_upgrade'),
361
+ tags=pulumi.get(__response__, 'tags'),
362
+ updated_at=pulumi.get(__response__, 'updated_at'),
363
+ urn=pulumi.get(__response__, 'urn'),
364
+ version=pulumi.get(__response__, 'version'),
365
+ vpc_uuid=pulumi.get(__response__, 'vpc_uuid')))