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

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

Potentially problematic release.


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

Files changed (107) hide show
  1. pulumi_digitalocean/__init__.py +75 -0
  2. pulumi_digitalocean/_enums.py +131 -52
  3. pulumi_digitalocean/_inputs.py +5767 -399
  4. pulumi_digitalocean/_utilities.py +41 -5
  5. pulumi_digitalocean/app.py +199 -67
  6. pulumi_digitalocean/cdn.py +20 -23
  7. pulumi_digitalocean/certificate.py +45 -42
  8. pulumi_digitalocean/config/__init__.pyi +5 -0
  9. pulumi_digitalocean/config/vars.py +5 -0
  10. pulumi_digitalocean/container_registry.py +11 -6
  11. pulumi_digitalocean/container_registry_docker_credentials.py +53 -12
  12. pulumi_digitalocean/custom_image.py +13 -8
  13. pulumi_digitalocean/database_cluster.py +298 -120
  14. pulumi_digitalocean/database_connection_pool.py +15 -10
  15. pulumi_digitalocean/database_db.py +19 -12
  16. pulumi_digitalocean/database_firewall.py +78 -75
  17. pulumi_digitalocean/database_kafka_config.py +1040 -0
  18. pulumi_digitalocean/database_kafka_topic.py +66 -61
  19. pulumi_digitalocean/database_mongodb_config.py +452 -0
  20. pulumi_digitalocean/database_mysql_config.py +15 -12
  21. pulumi_digitalocean/database_opensearch_config.py +2069 -0
  22. pulumi_digitalocean/database_postgresql_config.py +2614 -0
  23. pulumi_digitalocean/database_redis_config.py +29 -12
  24. pulumi_digitalocean/database_replica.py +29 -24
  25. pulumi_digitalocean/database_user.py +90 -75
  26. pulumi_digitalocean/dns_record.py +13 -8
  27. pulumi_digitalocean/domain.py +7 -6
  28. pulumi_digitalocean/droplet.py +89 -31
  29. pulumi_digitalocean/droplet_autoscale.py +474 -0
  30. pulumi_digitalocean/droplet_snapshot.py +23 -14
  31. pulumi_digitalocean/firewall.py +118 -106
  32. pulumi_digitalocean/floating_ip.py +19 -16
  33. pulumi_digitalocean/floating_ip_assignment.py +19 -16
  34. pulumi_digitalocean/get_account.py +18 -9
  35. pulumi_digitalocean/get_app.py +57 -10
  36. pulumi_digitalocean/get_certificate.py +19 -9
  37. pulumi_digitalocean/get_container_registry.py +19 -9
  38. pulumi_digitalocean/get_database_ca.py +14 -9
  39. pulumi_digitalocean/get_database_cluster.py +119 -11
  40. pulumi_digitalocean/get_database_connection_pool.py +25 -9
  41. pulumi_digitalocean/get_database_replica.py +29 -9
  42. pulumi_digitalocean/get_database_user.py +21 -9
  43. pulumi_digitalocean/get_domain.py +16 -9
  44. pulumi_digitalocean/get_domains.py +34 -27
  45. pulumi_digitalocean/get_droplet.py +66 -23
  46. pulumi_digitalocean/get_droplet_autoscale.py +197 -0
  47. pulumi_digitalocean/get_droplet_snapshot.py +36 -23
  48. pulumi_digitalocean/get_droplets.py +80 -54
  49. pulumi_digitalocean/get_firewall.py +29 -13
  50. pulumi_digitalocean/get_floating_ip.py +16 -9
  51. pulumi_digitalocean/get_image.py +42 -27
  52. pulumi_digitalocean/get_images.py +56 -53
  53. pulumi_digitalocean/get_kubernetes_cluster.py +53 -6
  54. pulumi_digitalocean/get_kubernetes_versions.py +43 -41
  55. pulumi_digitalocean/get_load_balancer.py +81 -17
  56. pulumi_digitalocean/get_project.py +23 -9
  57. pulumi_digitalocean/get_projects.py +56 -53
  58. pulumi_digitalocean/get_record.py +23 -9
  59. pulumi_digitalocean/get_records.py +62 -13
  60. pulumi_digitalocean/get_region.py +17 -9
  61. pulumi_digitalocean/get_regions.py +56 -53
  62. pulumi_digitalocean/get_reserved_ip.py +16 -9
  63. pulumi_digitalocean/get_reserved_ipv6.py +118 -0
  64. pulumi_digitalocean/get_sizes.py +24 -13
  65. pulumi_digitalocean/get_spaces_bucket.py +18 -9
  66. pulumi_digitalocean/get_spaces_bucket_object.py +41 -14
  67. pulumi_digitalocean/get_spaces_bucket_objects.py +26 -5
  68. pulumi_digitalocean/get_spaces_buckets.py +48 -45
  69. pulumi_digitalocean/get_ssh_key.py +27 -19
  70. pulumi_digitalocean/get_ssh_keys.py +40 -37
  71. pulumi_digitalocean/get_tag.py +31 -19
  72. pulumi_digitalocean/get_tags.py +32 -25
  73. pulumi_digitalocean/get_volume.py +35 -23
  74. pulumi_digitalocean/get_volume_snapshot.py +35 -21
  75. pulumi_digitalocean/get_vpc.py +33 -23
  76. pulumi_digitalocean/get_vpc_peering.py +244 -0
  77. pulumi_digitalocean/kubernetes_cluster.py +86 -35
  78. pulumi_digitalocean/kubernetes_node_pool.py +46 -43
  79. pulumi_digitalocean/load_balancer.py +320 -157
  80. pulumi_digitalocean/monitor_alert.py +17 -12
  81. pulumi_digitalocean/outputs.py +3419 -344
  82. pulumi_digitalocean/project.py +19 -16
  83. pulumi_digitalocean/project_resources.py +11 -8
  84. pulumi_digitalocean/provider.py +5 -0
  85. pulumi_digitalocean/pulumi-plugin.json +2 -1
  86. pulumi_digitalocean/reserved_ip.py +19 -16
  87. pulumi_digitalocean/reserved_ip_assignment.py +19 -16
  88. pulumi_digitalocean/reserved_ipv6.py +232 -0
  89. pulumi_digitalocean/reserved_ipv6_assignment.py +171 -0
  90. pulumi_digitalocean/spaces_bucket.py +70 -79
  91. pulumi_digitalocean/spaces_bucket_cors_configuration.py +30 -25
  92. pulumi_digitalocean/spaces_bucket_object.py +11 -12
  93. pulumi_digitalocean/spaces_bucket_policy.py +21 -16
  94. pulumi_digitalocean/ssh_key.py +19 -10
  95. pulumi_digitalocean/tag.py +13 -10
  96. pulumi_digitalocean/uptime_alert.py +10 -5
  97. pulumi_digitalocean/uptime_check.py +5 -0
  98. pulumi_digitalocean/volume.py +47 -50
  99. pulumi_digitalocean/volume_attachment.py +25 -20
  100. pulumi_digitalocean/volume_snapshot.py +17 -10
  101. pulumi_digitalocean/vpc.py +27 -22
  102. pulumi_digitalocean/vpc_peering.py +378 -0
  103. {pulumi_digitalocean-4.27.0a1710332933.dist-info → pulumi_digitalocean-4.39.0a1736833057.dist-info}/METADATA +7 -6
  104. pulumi_digitalocean-4.39.0a1736833057.dist-info/RECORD +108 -0
  105. {pulumi_digitalocean-4.27.0a1710332933.dist-info → pulumi_digitalocean-4.39.0a1736833057.dist-info}/WHEEL +1 -1
  106. pulumi_digitalocean-4.27.0a1710332933.dist-info/RECORD +0 -97
  107. {pulumi_digitalocean-4.27.0a1710332933.dist-info → pulumi_digitalocean-4.39.0a1736833057.dist-info}/top_level.txt +0 -0
@@ -4,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__ = [
@@ -96,7 +101,6 @@ def get_reserved_ip(ip_address: Optional[str] = None,
96
101
 
97
102
  Get the reserved IP:
98
103
 
99
- <!--Start PulumiCodeChooser -->
100
104
  ```python
101
105
  import pulumi
102
106
  import pulumi_digitalocean as digitalocean
@@ -106,7 +110,6 @@ def get_reserved_ip(ip_address: Optional[str] = None,
106
110
  example = digitalocean.get_reserved_ip(ip_address=public_ip)
107
111
  pulumi.export("fipOutput", example.droplet_id)
108
112
  ```
109
- <!--End PulumiCodeChooser -->
110
113
 
111
114
 
112
115
  :param str ip_address: The allocated IP address of the specific reserved IP to retrieve.
@@ -122,17 +125,13 @@ def get_reserved_ip(ip_address: Optional[str] = None,
122
125
  ip_address=pulumi.get(__ret__, 'ip_address'),
123
126
  region=pulumi.get(__ret__, 'region'),
124
127
  urn=pulumi.get(__ret__, 'urn'))
125
-
126
-
127
- @_utilities.lift_output_func(get_reserved_ip)
128
128
  def get_reserved_ip_output(ip_address: Optional[pulumi.Input[str]] = None,
129
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetReservedIpResult]:
129
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetReservedIpResult]:
130
130
  """
131
131
  ## Example Usage
132
132
 
133
133
  Get the reserved IP:
134
134
 
135
- <!--Start PulumiCodeChooser -->
136
135
  ```python
137
136
  import pulumi
138
137
  import pulumi_digitalocean as digitalocean
@@ -142,9 +141,17 @@ def get_reserved_ip_output(ip_address: Optional[pulumi.Input[str]] = None,
142
141
  example = digitalocean.get_reserved_ip(ip_address=public_ip)
143
142
  pulumi.export("fipOutput", example.droplet_id)
144
143
  ```
145
- <!--End PulumiCodeChooser -->
146
144
 
147
145
 
148
146
  :param str ip_address: The allocated IP address of the specific reserved IP to retrieve.
149
147
  """
150
- ...
148
+ __args__ = dict()
149
+ __args__['ipAddress'] = ip_address
150
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
151
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getReservedIp:getReservedIp', __args__, opts=opts, typ=GetReservedIpResult)
152
+ return __ret__.apply(lambda __response__: GetReservedIpResult(
153
+ droplet_id=pulumi.get(__response__, 'droplet_id'),
154
+ id=pulumi.get(__response__, 'id'),
155
+ ip_address=pulumi.get(__response__, 'ip_address'),
156
+ region=pulumi.get(__response__, 'region'),
157
+ urn=pulumi.get(__response__, 'urn')))
@@ -0,0 +1,118 @@
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
+
17
+ __all__ = [
18
+ 'GetReservedIpv6Result',
19
+ 'AwaitableGetReservedIpv6Result',
20
+ 'get_reserved_ipv6',
21
+ 'get_reserved_ipv6_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetReservedIpv6Result:
26
+ """
27
+ A collection of values returned by getReservedIpv6.
28
+ """
29
+ def __init__(__self__, droplet_id=None, id=None, ip=None, region_slug=None, urn=None):
30
+ if droplet_id and not isinstance(droplet_id, int):
31
+ raise TypeError("Expected argument 'droplet_id' to be a int")
32
+ pulumi.set(__self__, "droplet_id", droplet_id)
33
+ if id and not isinstance(id, str):
34
+ raise TypeError("Expected argument 'id' to be a str")
35
+ pulumi.set(__self__, "id", id)
36
+ if ip and not isinstance(ip, str):
37
+ raise TypeError("Expected argument 'ip' to be a str")
38
+ pulumi.set(__self__, "ip", ip)
39
+ if region_slug and not isinstance(region_slug, str):
40
+ raise TypeError("Expected argument 'region_slug' to be a str")
41
+ pulumi.set(__self__, "region_slug", region_slug)
42
+ if urn and not isinstance(urn, str):
43
+ raise TypeError("Expected argument 'urn' to be a str")
44
+ pulumi.set(__self__, "urn", urn)
45
+
46
+ @property
47
+ @pulumi.getter(name="dropletId")
48
+ def droplet_id(self) -> int:
49
+ return pulumi.get(self, "droplet_id")
50
+
51
+ @property
52
+ @pulumi.getter
53
+ def id(self) -> str:
54
+ """
55
+ The provider-assigned unique ID for this managed resource.
56
+ """
57
+ return pulumi.get(self, "id")
58
+
59
+ @property
60
+ @pulumi.getter
61
+ def ip(self) -> str:
62
+ return pulumi.get(self, "ip")
63
+
64
+ @property
65
+ @pulumi.getter(name="regionSlug")
66
+ def region_slug(self) -> str:
67
+ return pulumi.get(self, "region_slug")
68
+
69
+ @property
70
+ @pulumi.getter
71
+ def urn(self) -> str:
72
+ return pulumi.get(self, "urn")
73
+
74
+
75
+ class AwaitableGetReservedIpv6Result(GetReservedIpv6Result):
76
+ # pylint: disable=using-constant-test
77
+ def __await__(self):
78
+ if False:
79
+ yield self
80
+ return GetReservedIpv6Result(
81
+ droplet_id=self.droplet_id,
82
+ id=self.id,
83
+ ip=self.ip,
84
+ region_slug=self.region_slug,
85
+ urn=self.urn)
86
+
87
+
88
+ def get_reserved_ipv6(ip: Optional[str] = None,
89
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetReservedIpv6Result:
90
+ """
91
+ Use this data source to access information about an existing resource.
92
+ """
93
+ __args__ = dict()
94
+ __args__['ip'] = ip
95
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
96
+ __ret__ = pulumi.runtime.invoke('digitalocean:index/getReservedIpv6:getReservedIpv6', __args__, opts=opts, typ=GetReservedIpv6Result).value
97
+
98
+ return AwaitableGetReservedIpv6Result(
99
+ droplet_id=pulumi.get(__ret__, 'droplet_id'),
100
+ id=pulumi.get(__ret__, 'id'),
101
+ ip=pulumi.get(__ret__, 'ip'),
102
+ region_slug=pulumi.get(__ret__, 'region_slug'),
103
+ urn=pulumi.get(__ret__, 'urn'))
104
+ def get_reserved_ipv6_output(ip: Optional[pulumi.Input[str]] = None,
105
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetReservedIpv6Result]:
106
+ """
107
+ Use this data source to access information about an existing resource.
108
+ """
109
+ __args__ = dict()
110
+ __args__['ip'] = ip
111
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
112
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getReservedIpv6:getReservedIpv6', __args__, opts=opts, typ=GetReservedIpv6Result)
113
+ return __ret__.apply(lambda __response__: GetReservedIpv6Result(
114
+ droplet_id=pulumi.get(__response__, 'droplet_id'),
115
+ id=pulumi.get(__response__, 'id'),
116
+ ip=pulumi.get(__response__, 'ip'),
117
+ region_slug=pulumi.get(__response__, 'region_slug'),
118
+ urn=pulumi.get(__response__, 'urn')))
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -73,8 +78,8 @@ class AwaitableGetSizesResult(GetSizesResult):
73
78
  sorts=self.sorts)
74
79
 
75
80
 
76
- def get_sizes(filters: Optional[Sequence[pulumi.InputType['GetSizesFilterArgs']]] = None,
77
- sorts: Optional[Sequence[pulumi.InputType['GetSizesSortArgs']]] = None,
81
+ def get_sizes(filters: Optional[Sequence[Union['GetSizesFilterArgs', 'GetSizesFilterArgsDict']]] = None,
82
+ sorts: Optional[Sequence[Union['GetSizesSortArgs', 'GetSizesSortArgsDict']]] = None,
78
83
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSizesResult:
79
84
  """
80
85
  Retrieves information about the Droplet sizes that DigitalOcean supports, with
@@ -82,9 +87,9 @@ def get_sizes(filters: Optional[Sequence[pulumi.InputType['GetSizesFilterArgs']]
82
87
  will be returned.
83
88
 
84
89
 
85
- :param Sequence[pulumi.InputType['GetSizesFilterArgs']] filters: Filter the results.
90
+ :param Sequence[Union['GetSizesFilterArgs', 'GetSizesFilterArgsDict']] filters: Filter the results.
86
91
  The `filter` block is documented below.
87
- :param Sequence[pulumi.InputType['GetSizesSortArgs']] sorts: Sort the results.
92
+ :param Sequence[Union['GetSizesSortArgs', 'GetSizesSortArgsDict']] sorts: Sort the results.
88
93
  The `sort` block is documented below.
89
94
  """
90
95
  __args__ = dict()
@@ -98,21 +103,27 @@ def get_sizes(filters: Optional[Sequence[pulumi.InputType['GetSizesFilterArgs']]
98
103
  id=pulumi.get(__ret__, 'id'),
99
104
  sizes=pulumi.get(__ret__, 'sizes'),
100
105
  sorts=pulumi.get(__ret__, 'sorts'))
101
-
102
-
103
- @_utilities.lift_output_func(get_sizes)
104
- def get_sizes_output(filters: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetSizesFilterArgs']]]]] = None,
105
- sorts: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetSizesSortArgs']]]]] = None,
106
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSizesResult]:
106
+ def get_sizes_output(filters: Optional[pulumi.Input[Optional[Sequence[Union['GetSizesFilterArgs', 'GetSizesFilterArgsDict']]]]] = None,
107
+ sorts: Optional[pulumi.Input[Optional[Sequence[Union['GetSizesSortArgs', 'GetSizesSortArgsDict']]]]] = None,
108
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetSizesResult]:
107
109
  """
108
110
  Retrieves information about the Droplet sizes that DigitalOcean supports, with
109
111
  the ability to filter and sort the results. If no filters are specified, all sizes
110
112
  will be returned.
111
113
 
112
114
 
113
- :param Sequence[pulumi.InputType['GetSizesFilterArgs']] filters: Filter the results.
115
+ :param Sequence[Union['GetSizesFilterArgs', 'GetSizesFilterArgsDict']] filters: Filter the results.
114
116
  The `filter` block is documented below.
115
- :param Sequence[pulumi.InputType['GetSizesSortArgs']] sorts: Sort the results.
117
+ :param Sequence[Union['GetSizesSortArgs', 'GetSizesSortArgsDict']] sorts: Sort the results.
116
118
  The `sort` block is documented below.
117
119
  """
118
- ...
120
+ __args__ = dict()
121
+ __args__['filters'] = filters
122
+ __args__['sorts'] = sorts
123
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
124
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getSizes:getSizes', __args__, opts=opts, typ=GetSizesResult)
125
+ return __ret__.apply(lambda __response__: GetSizesResult(
126
+ filters=pulumi.get(__response__, 'filters'),
127
+ id=pulumi.get(__response__, 'id'),
128
+ sizes=pulumi.get(__response__, 'sizes'),
129
+ 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
 
12
17
  __all__ = [
@@ -115,7 +120,6 @@ def get_spaces_bucket(name: Optional[str] = None,
115
120
 
116
121
  Get the bucket by name:
117
122
 
118
- <!--Start PulumiCodeChooser -->
119
123
  ```python
120
124
  import pulumi
121
125
  import pulumi_digitalocean as digitalocean
@@ -124,7 +128,6 @@ def get_spaces_bucket(name: Optional[str] = None,
124
128
  region="nyc3")
125
129
  pulumi.export("bucketDomainName", example.bucket_domain_name)
126
130
  ```
127
- <!--End PulumiCodeChooser -->
128
131
 
129
132
 
130
133
  :param str name: The name of the Spaces bucket.
@@ -143,12 +146,9 @@ def get_spaces_bucket(name: Optional[str] = None,
143
146
  name=pulumi.get(__ret__, 'name'),
144
147
  region=pulumi.get(__ret__, 'region'),
145
148
  urn=pulumi.get(__ret__, 'urn'))
146
-
147
-
148
- @_utilities.lift_output_func(get_spaces_bucket)
149
149
  def get_spaces_bucket_output(name: Optional[pulumi.Input[str]] = None,
150
150
  region: Optional[pulumi.Input[str]] = None,
151
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSpacesBucketResult]:
151
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetSpacesBucketResult]:
152
152
  """
153
153
  Get information on a Spaces bucket for use in other resources. This is useful if the Spaces bucket in question
154
154
  is not managed by the provider or you need to utilize any of the bucket's data.
@@ -157,7 +157,6 @@ def get_spaces_bucket_output(name: Optional[pulumi.Input[str]] = None,
157
157
 
158
158
  Get the bucket by name:
159
159
 
160
- <!--Start PulumiCodeChooser -->
161
160
  ```python
162
161
  import pulumi
163
162
  import pulumi_digitalocean as digitalocean
@@ -166,10 +165,20 @@ def get_spaces_bucket_output(name: Optional[pulumi.Input[str]] = None,
166
165
  region="nyc3")
167
166
  pulumi.export("bucketDomainName", example.bucket_domain_name)
168
167
  ```
169
- <!--End PulumiCodeChooser -->
170
168
 
171
169
 
172
170
  :param str name: The name of the Spaces bucket.
173
171
  :param str region: The slug of the region where the bucket is stored.
174
172
  """
175
- ...
173
+ __args__ = dict()
174
+ __args__['name'] = name
175
+ __args__['region'] = region
176
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
177
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getSpacesBucket:getSpacesBucket', __args__, opts=opts, typ=GetSpacesBucketResult)
178
+ return __ret__.apply(lambda __response__: GetSpacesBucketResult(
179
+ bucket_domain_name=pulumi.get(__response__, 'bucket_domain_name'),
180
+ endpoint=pulumi.get(__response__, 'endpoint'),
181
+ id=pulumi.get(__response__, 'id'),
182
+ name=pulumi.get(__response__, 'name'),
183
+ region=pulumi.get(__response__, 'region'),
184
+ urn=pulumi.get(__response__, 'urn')))
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
 
12
17
  __all__ = [
@@ -188,7 +193,7 @@ class GetSpacesBucketObjectResult:
188
193
 
189
194
  @property
190
195
  @pulumi.getter
191
- def metadata(self) -> Mapping[str, Any]:
196
+ def metadata(self) -> Mapping[str, str]:
192
197
  """
193
198
  A map of metadata stored with the object in Spaces
194
199
  """
@@ -267,7 +272,6 @@ def get_spaces_bucket_object(bucket: Optional[str] = None,
267
272
  The following example retrieves a text object (which must have a `Content-Type`
268
273
  value starting with `text/`) and uses it as the `user_data` for a Droplet:
269
274
 
270
- <!--Start PulumiCodeChooser -->
271
275
  ```python
272
276
  import pulumi
273
277
  import pulumi_digitalocean as digitalocean
@@ -277,11 +281,11 @@ def get_spaces_bucket_object(bucket: Optional[str] = None,
277
281
  key="droplet-bootstrap-script.sh")
278
282
  web = digitalocean.Droplet("web",
279
283
  image="ubuntu-18-04-x64",
280
- region="nyc2",
281
- size="s-1vcpu-1gb",
284
+ name="web-1",
285
+ region=digitalocean.Region.NYC2,
286
+ size=digitalocean.DropletSlug.DROPLET_S1_VCPU1_GB,
282
287
  user_data=bootstrap_script.body)
283
288
  ```
284
- <!--End PulumiCodeChooser -->
285
289
 
286
290
 
287
291
  :param str bucket: The name of the bucket to read the object from.
@@ -318,15 +322,12 @@ def get_spaces_bucket_object(bucket: Optional[str] = None,
318
322
  region=pulumi.get(__ret__, 'region'),
319
323
  version_id=pulumi.get(__ret__, 'version_id'),
320
324
  website_redirect_location=pulumi.get(__ret__, 'website_redirect_location'))
321
-
322
-
323
- @_utilities.lift_output_func(get_spaces_bucket_object)
324
325
  def get_spaces_bucket_object_output(bucket: Optional[pulumi.Input[str]] = None,
325
326
  key: Optional[pulumi.Input[str]] = None,
326
327
  range: Optional[pulumi.Input[Optional[str]]] = None,
327
328
  region: Optional[pulumi.Input[str]] = None,
328
329
  version_id: Optional[pulumi.Input[Optional[str]]] = None,
329
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSpacesBucketObjectResult]:
330
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetSpacesBucketObjectResult]:
330
331
  """
331
332
  The Spaces object data source allows access to the metadata and
332
333
  _optionally_ (see below) content of an object stored inside a Spaces bucket.
@@ -340,7 +341,6 @@ def get_spaces_bucket_object_output(bucket: Optional[pulumi.Input[str]] = None,
340
341
  The following example retrieves a text object (which must have a `Content-Type`
341
342
  value starting with `text/`) and uses it as the `user_data` for a Droplet:
342
343
 
343
- <!--Start PulumiCodeChooser -->
344
344
  ```python
345
345
  import pulumi
346
346
  import pulumi_digitalocean as digitalocean
@@ -350,11 +350,11 @@ def get_spaces_bucket_object_output(bucket: Optional[pulumi.Input[str]] = None,
350
350
  key="droplet-bootstrap-script.sh")
351
351
  web = digitalocean.Droplet("web",
352
352
  image="ubuntu-18-04-x64",
353
- region="nyc2",
354
- size="s-1vcpu-1gb",
353
+ name="web-1",
354
+ region=digitalocean.Region.NYC2,
355
+ size=digitalocean.DropletSlug.DROPLET_S1_VCPU1_GB,
355
356
  user_data=bootstrap_script.body)
356
357
  ```
357
- <!--End PulumiCodeChooser -->
358
358
 
359
359
 
360
360
  :param str bucket: The name of the bucket to read the object from.
@@ -362,4 +362,31 @@ def get_spaces_bucket_object_output(bucket: Optional[pulumi.Input[str]] = None,
362
362
  :param str region: The slug of the region where the bucket is stored.
363
363
  :param str version_id: Specific version ID of the object returned (defaults to latest version)
364
364
  """
365
- ...
365
+ __args__ = dict()
366
+ __args__['bucket'] = bucket
367
+ __args__['key'] = key
368
+ __args__['range'] = range
369
+ __args__['region'] = region
370
+ __args__['versionId'] = version_id
371
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
372
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getSpacesBucketObject:getSpacesBucketObject', __args__, opts=opts, typ=GetSpacesBucketObjectResult)
373
+ return __ret__.apply(lambda __response__: GetSpacesBucketObjectResult(
374
+ body=pulumi.get(__response__, 'body'),
375
+ bucket=pulumi.get(__response__, 'bucket'),
376
+ cache_control=pulumi.get(__response__, 'cache_control'),
377
+ content_disposition=pulumi.get(__response__, 'content_disposition'),
378
+ content_encoding=pulumi.get(__response__, 'content_encoding'),
379
+ content_language=pulumi.get(__response__, 'content_language'),
380
+ content_length=pulumi.get(__response__, 'content_length'),
381
+ content_type=pulumi.get(__response__, 'content_type'),
382
+ etag=pulumi.get(__response__, 'etag'),
383
+ expiration=pulumi.get(__response__, 'expiration'),
384
+ expires=pulumi.get(__response__, 'expires'),
385
+ id=pulumi.get(__response__, 'id'),
386
+ key=pulumi.get(__response__, 'key'),
387
+ last_modified=pulumi.get(__response__, 'last_modified'),
388
+ metadata=pulumi.get(__response__, 'metadata'),
389
+ range=pulumi.get(__response__, 'range'),
390
+ region=pulumi.get(__response__, 'region'),
391
+ version_id=pulumi.get(__response__, 'version_id'),
392
+ website_redirect_location=pulumi.get(__response__, 'website_redirect_location')))
@@ -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__ = [
@@ -175,16 +180,13 @@ def get_spaces_bucket_objects(bucket: Optional[str] = None,
175
180
  owners=pulumi.get(__ret__, 'owners'),
176
181
  prefix=pulumi.get(__ret__, 'prefix'),
177
182
  region=pulumi.get(__ret__, 'region'))
178
-
179
-
180
- @_utilities.lift_output_func(get_spaces_bucket_objects)
181
183
  def get_spaces_bucket_objects_output(bucket: Optional[pulumi.Input[str]] = None,
182
184
  delimiter: Optional[pulumi.Input[Optional[str]]] = None,
183
185
  encoding_type: Optional[pulumi.Input[Optional[str]]] = None,
184
186
  max_keys: Optional[pulumi.Input[Optional[int]]] = None,
185
187
  prefix: Optional[pulumi.Input[Optional[str]]] = None,
186
188
  region: Optional[pulumi.Input[str]] = None,
187
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSpacesBucketObjectsResult]:
189
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetSpacesBucketObjectsResult]:
188
190
  """
189
191
  > **NOTE on `max_keys`:** Retrieving very large numbers of keys can adversely affect the provider's performance.
190
192
 
@@ -198,4 +200,23 @@ def get_spaces_bucket_objects_output(bucket: Optional[pulumi.Input[str]] = None,
198
200
  :param str prefix: Limits results to object keys with this prefix (Default: none)
199
201
  :param str region: The slug of the region where the bucket is stored.
200
202
  """
201
- ...
203
+ __args__ = dict()
204
+ __args__['bucket'] = bucket
205
+ __args__['delimiter'] = delimiter
206
+ __args__['encodingType'] = encoding_type
207
+ __args__['maxKeys'] = max_keys
208
+ __args__['prefix'] = prefix
209
+ __args__['region'] = region
210
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
211
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getSpacesBucketObjects:getSpacesBucketObjects', __args__, opts=opts, typ=GetSpacesBucketObjectsResult)
212
+ return __ret__.apply(lambda __response__: GetSpacesBucketObjectsResult(
213
+ bucket=pulumi.get(__response__, 'bucket'),
214
+ common_prefixes=pulumi.get(__response__, 'common_prefixes'),
215
+ delimiter=pulumi.get(__response__, 'delimiter'),
216
+ encoding_type=pulumi.get(__response__, 'encoding_type'),
217
+ id=pulumi.get(__response__, 'id'),
218
+ keys=pulumi.get(__response__, 'keys'),
219
+ max_keys=pulumi.get(__response__, 'max_keys'),
220
+ owners=pulumi.get(__response__, 'owners'),
221
+ prefix=pulumi.get(__response__, 'prefix'),
222
+ 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
  from . import outputs
12
17
  from ._inputs import *
@@ -76,8 +81,8 @@ class AwaitableGetSpacesBucketsResult(GetSpacesBucketsResult):
76
81
  sorts=self.sorts)
77
82
 
78
83
 
79
- def get_spaces_buckets(filters: Optional[Sequence[pulumi.InputType['GetSpacesBucketsFilterArgs']]] = None,
80
- sorts: Optional[Sequence[pulumi.InputType['GetSpacesBucketsSortArgs']]] = None,
84
+ def get_spaces_buckets(filters: Optional[Sequence[Union['GetSpacesBucketsFilterArgs', 'GetSpacesBucketsFilterArgsDict']]] = None,
85
+ sorts: Optional[Sequence[Union['GetSpacesBucketsSortArgs', 'GetSpacesBucketsSortArgsDict']]] = None,
81
86
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSpacesBucketsResult:
82
87
  """
83
88
  Get information on Spaces buckets for use in other resources, with the ability to filter and sort the results.
@@ -92,39 +97,35 @@ def get_spaces_buckets(filters: Optional[Sequence[pulumi.InputType['GetSpacesBuc
92
97
 
93
98
  Get all buckets in a region:
94
99
 
95
- <!--Start PulumiCodeChooser -->
96
100
  ```python
97
101
  import pulumi
98
102
  import pulumi_digitalocean as digitalocean
99
103
 
100
- nyc3 = digitalocean.get_spaces_buckets(filters=[digitalocean.GetSpacesBucketsFilterArgs(
101
- key="region",
102
- values=["nyc3"],
103
- )])
104
+ nyc3 = digitalocean.get_spaces_buckets(filters=[{
105
+ "key": "region",
106
+ "values": ["nyc3"],
107
+ }])
104
108
  ```
105
- <!--End PulumiCodeChooser -->
106
109
  You can sort the results as well:
107
110
 
108
- <!--Start PulumiCodeChooser -->
109
111
  ```python
110
112
  import pulumi
111
113
  import pulumi_digitalocean as digitalocean
112
114
 
113
- nyc3 = digitalocean.get_spaces_buckets(filters=[digitalocean.GetSpacesBucketsFilterArgs(
114
- key="region",
115
- values=["nyc3"],
116
- )],
117
- sorts=[digitalocean.GetSpacesBucketsSortArgs(
118
- direction="desc",
119
- key="name",
120
- )])
115
+ nyc3 = digitalocean.get_spaces_buckets(filters=[{
116
+ "key": "region",
117
+ "values": ["nyc3"],
118
+ }],
119
+ sorts=[{
120
+ "key": "name",
121
+ "direction": "desc",
122
+ }])
121
123
  ```
122
- <!--End PulumiCodeChooser -->
123
124
 
124
125
 
125
- :param Sequence[pulumi.InputType['GetSpacesBucketsFilterArgs']] filters: Filter the results.
126
+ :param Sequence[Union['GetSpacesBucketsFilterArgs', 'GetSpacesBucketsFilterArgsDict']] filters: Filter the results.
126
127
  The `filter` block is documented below.
127
- :param Sequence[pulumi.InputType['GetSpacesBucketsSortArgs']] sorts: Sort the results.
128
+ :param Sequence[Union['GetSpacesBucketsSortArgs', 'GetSpacesBucketsSortArgsDict']] sorts: Sort the results.
128
129
  The `sort` block is documented below.
129
130
  """
130
131
  __args__ = dict()
@@ -138,12 +139,9 @@ def get_spaces_buckets(filters: Optional[Sequence[pulumi.InputType['GetSpacesBuc
138
139
  filters=pulumi.get(__ret__, 'filters'),
139
140
  id=pulumi.get(__ret__, 'id'),
140
141
  sorts=pulumi.get(__ret__, 'sorts'))
141
-
142
-
143
- @_utilities.lift_output_func(get_spaces_buckets)
144
- def get_spaces_buckets_output(filters: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetSpacesBucketsFilterArgs']]]]] = None,
145
- sorts: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetSpacesBucketsSortArgs']]]]] = None,
146
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSpacesBucketsResult]:
142
+ def get_spaces_buckets_output(filters: Optional[pulumi.Input[Optional[Sequence[Union['GetSpacesBucketsFilterArgs', 'GetSpacesBucketsFilterArgsDict']]]]] = None,
143
+ sorts: Optional[pulumi.Input[Optional[Sequence[Union['GetSpacesBucketsSortArgs', 'GetSpacesBucketsSortArgsDict']]]]] = None,
144
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetSpacesBucketsResult]:
147
145
  """
148
146
  Get information on Spaces buckets for use in other resources, with the ability to filter and sort the results.
149
147
  If no filters are specified, all Spaces buckets will be returned.
@@ -157,39 +155,44 @@ def get_spaces_buckets_output(filters: Optional[pulumi.Input[Optional[Sequence[p
157
155
 
158
156
  Get all buckets in a region:
159
157
 
160
- <!--Start PulumiCodeChooser -->
161
158
  ```python
162
159
  import pulumi
163
160
  import pulumi_digitalocean as digitalocean
164
161
 
165
- nyc3 = digitalocean.get_spaces_buckets(filters=[digitalocean.GetSpacesBucketsFilterArgs(
166
- key="region",
167
- values=["nyc3"],
168
- )])
162
+ nyc3 = digitalocean.get_spaces_buckets(filters=[{
163
+ "key": "region",
164
+ "values": ["nyc3"],
165
+ }])
169
166
  ```
170
- <!--End PulumiCodeChooser -->
171
167
  You can sort the results as well:
172
168
 
173
- <!--Start PulumiCodeChooser -->
174
169
  ```python
175
170
  import pulumi
176
171
  import pulumi_digitalocean as digitalocean
177
172
 
178
- nyc3 = digitalocean.get_spaces_buckets(filters=[digitalocean.GetSpacesBucketsFilterArgs(
179
- key="region",
180
- values=["nyc3"],
181
- )],
182
- sorts=[digitalocean.GetSpacesBucketsSortArgs(
183
- direction="desc",
184
- key="name",
185
- )])
173
+ nyc3 = digitalocean.get_spaces_buckets(filters=[{
174
+ "key": "region",
175
+ "values": ["nyc3"],
176
+ }],
177
+ sorts=[{
178
+ "key": "name",
179
+ "direction": "desc",
180
+ }])
186
181
  ```
187
- <!--End PulumiCodeChooser -->
188
182
 
189
183
 
190
- :param Sequence[pulumi.InputType['GetSpacesBucketsFilterArgs']] filters: Filter the results.
184
+ :param Sequence[Union['GetSpacesBucketsFilterArgs', 'GetSpacesBucketsFilterArgsDict']] filters: Filter the results.
191
185
  The `filter` block is documented below.
192
- :param Sequence[pulumi.InputType['GetSpacesBucketsSortArgs']] sorts: Sort the results.
186
+ :param Sequence[Union['GetSpacesBucketsSortArgs', 'GetSpacesBucketsSortArgsDict']] sorts: Sort the results.
193
187
  The `sort` block is documented below.
194
188
  """
195
- ...
189
+ __args__ = dict()
190
+ __args__['filters'] = filters
191
+ __args__['sorts'] = sorts
192
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
193
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getSpacesBuckets:getSpacesBuckets', __args__, opts=opts, typ=GetSpacesBucketsResult)
194
+ return __ret__.apply(lambda __response__: GetSpacesBucketsResult(
195
+ buckets=pulumi.get(__response__, 'buckets'),
196
+ filters=pulumi.get(__response__, 'filters'),
197
+ id=pulumi.get(__response__, 'id'),
198
+ sorts=pulumi.get(__response__, 'sorts')))