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__ = [
@@ -91,19 +96,18 @@ def get_ssh_key(name: Optional[str] = None,
91
96
 
92
97
  Get the ssh key:
93
98
 
94
- <!--Start PulumiCodeChooser -->
95
99
  ```python
96
100
  import pulumi
97
101
  import pulumi_digitalocean as digitalocean
98
102
 
99
- example_ssh_key = digitalocean.get_ssh_key(name="example")
100
- example_droplet = digitalocean.Droplet("exampleDroplet",
103
+ example = digitalocean.get_ssh_key(name="example")
104
+ example_droplet = digitalocean.Droplet("example",
101
105
  image="ubuntu-18-04-x64",
102
- region="nyc2",
103
- size="s-1vcpu-1gb",
104
- ssh_keys=[example_ssh_key.id])
106
+ name="example-1",
107
+ region=digitalocean.Region.NYC2,
108
+ size=digitalocean.DropletSlug.DROPLET_S1_VCPU1_GB,
109
+ ssh_keys=[example.id])
105
110
  ```
106
- <!--End PulumiCodeChooser -->
107
111
 
108
112
 
109
113
  :param str name: The name of the ssh key.
@@ -118,11 +122,8 @@ def get_ssh_key(name: Optional[str] = None,
118
122
  id=pulumi.get(__ret__, 'id'),
119
123
  name=pulumi.get(__ret__, 'name'),
120
124
  public_key=pulumi.get(__ret__, 'public_key'))
121
-
122
-
123
- @_utilities.lift_output_func(get_ssh_key)
124
125
  def get_ssh_key_output(name: Optional[pulumi.Input[str]] = None,
125
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSshKeyResult]:
126
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetSshKeyResult]:
126
127
  """
127
128
  Get information on a ssh key. This data source provides the name, public key,
128
129
  and fingerprint as configured on your DigitalOcean account. This is useful if
@@ -135,21 +136,28 @@ def get_ssh_key_output(name: Optional[pulumi.Input[str]] = None,
135
136
 
136
137
  Get the ssh key:
137
138
 
138
- <!--Start PulumiCodeChooser -->
139
139
  ```python
140
140
  import pulumi
141
141
  import pulumi_digitalocean as digitalocean
142
142
 
143
- example_ssh_key = digitalocean.get_ssh_key(name="example")
144
- example_droplet = digitalocean.Droplet("exampleDroplet",
143
+ example = digitalocean.get_ssh_key(name="example")
144
+ example_droplet = digitalocean.Droplet("example",
145
145
  image="ubuntu-18-04-x64",
146
- region="nyc2",
147
- size="s-1vcpu-1gb",
148
- ssh_keys=[example_ssh_key.id])
146
+ name="example-1",
147
+ region=digitalocean.Region.NYC2,
148
+ size=digitalocean.DropletSlug.DROPLET_S1_VCPU1_GB,
149
+ ssh_keys=[example.id])
149
150
  ```
150
- <!--End PulumiCodeChooser -->
151
151
 
152
152
 
153
153
  :param str name: The name of the ssh key.
154
154
  """
155
- ...
155
+ __args__ = dict()
156
+ __args__['name'] = name
157
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
158
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getSshKey:getSshKey', __args__, opts=opts, typ=GetSshKeyResult)
159
+ return __ret__.apply(lambda __response__: GetSshKeyResult(
160
+ fingerprint=pulumi.get(__response__, 'fingerprint'),
161
+ id=pulumi.get(__response__, 'id'),
162
+ name=pulumi.get(__response__, 'name'),
163
+ public_key=pulumi.get(__response__, 'public_key')))
@@ -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 AwaitableGetSshKeysResult(GetSshKeysResult):
76
81
  ssh_keys=self.ssh_keys)
77
82
 
78
83
 
79
- def get_ssh_keys(filters: Optional[Sequence[pulumi.InputType['GetSshKeysFilterArgs']]] = None,
80
- sorts: Optional[Sequence[pulumi.InputType['GetSshKeysSortArgs']]] = None,
84
+ def get_ssh_keys(filters: Optional[Sequence[Union['GetSshKeysFilterArgs', 'GetSshKeysFilterArgsDict']]] = None,
85
+ sorts: Optional[Sequence[Union['GetSshKeysSortArgs', 'GetSshKeysSortArgsDict']]] = None,
81
86
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSshKeysResult:
82
87
  """
83
88
  Get information on SSH Keys for use in other resources.
@@ -92,39 +97,35 @@ def get_ssh_keys(filters: Optional[Sequence[pulumi.InputType['GetSshKeysFilterAr
92
97
 
93
98
  For example, to find all SSH keys:
94
99
 
95
- <!--Start PulumiCodeChooser -->
96
100
  ```python
97
101
  import pulumi
98
102
  import pulumi_digitalocean as digitalocean
99
103
 
100
- keys = digitalocean.get_ssh_keys(sorts=[digitalocean.GetSshKeysSortArgs(
101
- direction="asc",
102
- key="name",
103
- )])
104
+ keys = digitalocean.get_ssh_keys(sorts=[{
105
+ "key": "name",
106
+ "direction": "asc",
107
+ }])
104
108
  ```
105
- <!--End PulumiCodeChooser -->
106
109
 
107
110
  Or to find ones matching specific values:
108
111
 
109
- <!--Start PulumiCodeChooser -->
110
112
  ```python
111
113
  import pulumi
112
114
  import pulumi_digitalocean as digitalocean
113
115
 
114
- keys = digitalocean.get_ssh_keys(filters=[digitalocean.GetSshKeysFilterArgs(
115
- key="name",
116
- values=[
116
+ keys = digitalocean.get_ssh_keys(filters=[{
117
+ "key": "name",
118
+ "values": [
117
119
  "laptop",
118
120
  "desktop",
119
121
  ],
120
- )])
122
+ }])
121
123
  ```
122
- <!--End PulumiCodeChooser -->
123
124
 
124
125
 
125
- :param Sequence[pulumi.InputType['GetSshKeysFilterArgs']] filters: Filter the results.
126
+ :param Sequence[Union['GetSshKeysFilterArgs', 'GetSshKeysFilterArgsDict']] filters: Filter the results.
126
127
  The `filter` block is documented below.
127
- :param Sequence[pulumi.InputType['GetSshKeysSortArgs']] sorts: Sort the results.
128
+ :param Sequence[Union['GetSshKeysSortArgs', 'GetSshKeysSortArgsDict']] sorts: Sort the results.
128
129
  The `sort` block is documented below.
129
130
  """
130
131
  __args__ = dict()
@@ -138,12 +139,9 @@ def get_ssh_keys(filters: Optional[Sequence[pulumi.InputType['GetSshKeysFilterAr
138
139
  id=pulumi.get(__ret__, 'id'),
139
140
  sorts=pulumi.get(__ret__, 'sorts'),
140
141
  ssh_keys=pulumi.get(__ret__, 'ssh_keys'))
141
-
142
-
143
- @_utilities.lift_output_func(get_ssh_keys)
144
- def get_ssh_keys_output(filters: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetSshKeysFilterArgs']]]]] = None,
145
- sorts: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetSshKeysSortArgs']]]]] = None,
146
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSshKeysResult]:
142
+ def get_ssh_keys_output(filters: Optional[pulumi.Input[Optional[Sequence[Union['GetSshKeysFilterArgs', 'GetSshKeysFilterArgsDict']]]]] = None,
143
+ sorts: Optional[pulumi.Input[Optional[Sequence[Union['GetSshKeysSortArgs', 'GetSshKeysSortArgsDict']]]]] = None,
144
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetSshKeysResult]:
147
145
  """
148
146
  Get information on SSH Keys for use in other resources.
149
147
 
@@ -157,39 +155,44 @@ def get_ssh_keys_output(filters: Optional[pulumi.Input[Optional[Sequence[pulumi.
157
155
 
158
156
  For example, to find all SSH keys:
159
157
 
160
- <!--Start PulumiCodeChooser -->
161
158
  ```python
162
159
  import pulumi
163
160
  import pulumi_digitalocean as digitalocean
164
161
 
165
- keys = digitalocean.get_ssh_keys(sorts=[digitalocean.GetSshKeysSortArgs(
166
- direction="asc",
167
- key="name",
168
- )])
162
+ keys = digitalocean.get_ssh_keys(sorts=[{
163
+ "key": "name",
164
+ "direction": "asc",
165
+ }])
169
166
  ```
170
- <!--End PulumiCodeChooser -->
171
167
 
172
168
  Or to find ones matching specific values:
173
169
 
174
- <!--Start PulumiCodeChooser -->
175
170
  ```python
176
171
  import pulumi
177
172
  import pulumi_digitalocean as digitalocean
178
173
 
179
- keys = digitalocean.get_ssh_keys(filters=[digitalocean.GetSshKeysFilterArgs(
180
- key="name",
181
- values=[
174
+ keys = digitalocean.get_ssh_keys(filters=[{
175
+ "key": "name",
176
+ "values": [
182
177
  "laptop",
183
178
  "desktop",
184
179
  ],
185
- )])
180
+ }])
186
181
  ```
187
- <!--End PulumiCodeChooser -->
188
182
 
189
183
 
190
- :param Sequence[pulumi.InputType['GetSshKeysFilterArgs']] filters: Filter the results.
184
+ :param Sequence[Union['GetSshKeysFilterArgs', 'GetSshKeysFilterArgsDict']] filters: Filter the results.
191
185
  The `filter` block is documented below.
192
- :param Sequence[pulumi.InputType['GetSshKeysSortArgs']] sorts: Sort the results.
186
+ :param Sequence[Union['GetSshKeysSortArgs', 'GetSshKeysSortArgsDict']] 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/getSshKeys:getSshKeys', __args__, opts=opts, typ=GetSshKeysResult)
194
+ return __ret__.apply(lambda __response__: GetSshKeysResult(
195
+ filters=pulumi.get(__response__, 'filters'),
196
+ id=pulumi.get(__response__, 'id'),
197
+ sorts=pulumi.get(__response__, 'sorts'),
198
+ ssh_keys=pulumi.get(__response__, 'ssh_keys')))
@@ -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__ = [
@@ -138,19 +143,18 @@ def get_tag(name: Optional[str] = None,
138
143
 
139
144
  Get the tag:
140
145
 
141
- <!--Start PulumiCodeChooser -->
142
146
  ```python
143
147
  import pulumi
144
148
  import pulumi_digitalocean as digitalocean
145
149
 
146
- example_tag = digitalocean.get_tag(name="example")
147
- example_droplet = digitalocean.Droplet("exampleDroplet",
150
+ example = digitalocean.get_tag(name="example")
151
+ example_droplet = digitalocean.Droplet("example",
148
152
  image="ubuntu-18-04-x64",
149
- region="nyc2",
150
- size="s-1vcpu-1gb",
151
- tags=[example_tag.name])
153
+ name="example-1",
154
+ region=digitalocean.Region.NYC2,
155
+ size=digitalocean.DropletSlug.DROPLET_S1_VCPU1_GB,
156
+ tags=[example.name])
152
157
  ```
153
- <!--End PulumiCodeChooser -->
154
158
 
155
159
 
156
160
  :param str name: The name of the tag.
@@ -169,11 +173,8 @@ def get_tag(name: Optional[str] = None,
169
173
  total_resource_count=pulumi.get(__ret__, 'total_resource_count'),
170
174
  volume_snapshots_count=pulumi.get(__ret__, 'volume_snapshots_count'),
171
175
  volumes_count=pulumi.get(__ret__, 'volumes_count'))
172
-
173
-
174
- @_utilities.lift_output_func(get_tag)
175
176
  def get_tag_output(name: Optional[pulumi.Input[str]] = None,
176
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetTagResult]:
177
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetTagResult]:
177
178
  """
178
179
  Get information on a tag. This data source provides the name as configured on
179
180
  your DigitalOcean account. This is useful if the tag name in question is not
@@ -185,21 +186,32 @@ def get_tag_output(name: Optional[pulumi.Input[str]] = None,
185
186
 
186
187
  Get the tag:
187
188
 
188
- <!--Start PulumiCodeChooser -->
189
189
  ```python
190
190
  import pulumi
191
191
  import pulumi_digitalocean as digitalocean
192
192
 
193
- example_tag = digitalocean.get_tag(name="example")
194
- example_droplet = digitalocean.Droplet("exampleDroplet",
193
+ example = digitalocean.get_tag(name="example")
194
+ example_droplet = digitalocean.Droplet("example",
195
195
  image="ubuntu-18-04-x64",
196
- region="nyc2",
197
- size="s-1vcpu-1gb",
198
- tags=[example_tag.name])
196
+ name="example-1",
197
+ region=digitalocean.Region.NYC2,
198
+ size=digitalocean.DropletSlug.DROPLET_S1_VCPU1_GB,
199
+ tags=[example.name])
199
200
  ```
200
- <!--End PulumiCodeChooser -->
201
201
 
202
202
 
203
203
  :param str name: The name of the tag.
204
204
  """
205
- ...
205
+ __args__ = dict()
206
+ __args__['name'] = name
207
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
208
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getTag:getTag', __args__, opts=opts, typ=GetTagResult)
209
+ return __ret__.apply(lambda __response__: GetTagResult(
210
+ databases_count=pulumi.get(__response__, 'databases_count'),
211
+ droplets_count=pulumi.get(__response__, 'droplets_count'),
212
+ id=pulumi.get(__response__, 'id'),
213
+ images_count=pulumi.get(__response__, 'images_count'),
214
+ name=pulumi.get(__response__, 'name'),
215
+ total_resource_count=pulumi.get(__response__, 'total_resource_count'),
216
+ volume_snapshots_count=pulumi.get(__response__, 'volume_snapshots_count'),
217
+ volumes_count=pulumi.get(__response__, 'volumes_count')))
@@ -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 AwaitableGetTagsResult(GetTagsResult):
73
78
  tags=self.tags)
74
79
 
75
80
 
76
- def get_tags(filters: Optional[Sequence[pulumi.InputType['GetTagsFilterArgs']]] = None,
77
- sorts: Optional[Sequence[pulumi.InputType['GetTagsSortArgs']]] = None,
81
+ def get_tags(filters: Optional[Sequence[Union['GetTagsFilterArgs', 'GetTagsFilterArgsDict']]] = None,
82
+ sorts: Optional[Sequence[Union['GetTagsSortArgs', 'GetTagsSortArgsDict']]] = None,
78
83
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetTagsResult:
79
84
  """
80
85
  Returns a list of tags in your DigitalOcean account, with the ability to
@@ -83,23 +88,21 @@ def get_tags(filters: Optional[Sequence[pulumi.InputType['GetTagsFilterArgs']]]
83
88
 
84
89
  ## Example Usage
85
90
 
86
- <!--Start PulumiCodeChooser -->
87
91
  ```python
88
92
  import pulumi
89
93
  import pulumi_digitalocean as digitalocean
90
94
 
91
- list = digitalocean.get_tags(sorts=[digitalocean.GetTagsSortArgs(
92
- key="total_resource_count",
93
- direction="asc",
94
- )])
95
+ list = digitalocean.get_tags(sorts=[{
96
+ "key": "total_resource_count",
97
+ "direction": "asc",
98
+ }])
95
99
  pulumi.export("sortedTags", list.tags)
96
100
  ```
97
- <!--End PulumiCodeChooser -->
98
101
 
99
102
 
100
- :param Sequence[pulumi.InputType['GetTagsFilterArgs']] filters: Filter the results.
103
+ :param Sequence[Union['GetTagsFilterArgs', 'GetTagsFilterArgsDict']] filters: Filter the results.
101
104
  The `filter` block is documented below.
102
- :param Sequence[pulumi.InputType['GetTagsSortArgs']] sorts: Sort the results.
105
+ :param Sequence[Union['GetTagsSortArgs', 'GetTagsSortArgsDict']] sorts: Sort the results.
103
106
  The `sort` block is documented below.
104
107
  """
105
108
  __args__ = dict()
@@ -113,12 +116,9 @@ def get_tags(filters: Optional[Sequence[pulumi.InputType['GetTagsFilterArgs']]]
113
116
  id=pulumi.get(__ret__, 'id'),
114
117
  sorts=pulumi.get(__ret__, 'sorts'),
115
118
  tags=pulumi.get(__ret__, 'tags'))
116
-
117
-
118
- @_utilities.lift_output_func(get_tags)
119
- def get_tags_output(filters: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetTagsFilterArgs']]]]] = None,
120
- sorts: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetTagsSortArgs']]]]] = None,
121
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetTagsResult]:
119
+ def get_tags_output(filters: Optional[pulumi.Input[Optional[Sequence[Union['GetTagsFilterArgs', 'GetTagsFilterArgsDict']]]]] = None,
120
+ sorts: Optional[pulumi.Input[Optional[Sequence[Union['GetTagsSortArgs', 'GetTagsSortArgsDict']]]]] = None,
121
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetTagsResult]:
122
122
  """
123
123
  Returns a list of tags in your DigitalOcean account, with the ability to
124
124
  filter and sort the results. If no filters are specified, all tags will be
@@ -126,23 +126,30 @@ def get_tags_output(filters: Optional[pulumi.Input[Optional[Sequence[pulumi.Inpu
126
126
 
127
127
  ## Example Usage
128
128
 
129
- <!--Start PulumiCodeChooser -->
130
129
  ```python
131
130
  import pulumi
132
131
  import pulumi_digitalocean as digitalocean
133
132
 
134
- list = digitalocean.get_tags(sorts=[digitalocean.GetTagsSortArgs(
135
- key="total_resource_count",
136
- direction="asc",
137
- )])
133
+ list = digitalocean.get_tags(sorts=[{
134
+ "key": "total_resource_count",
135
+ "direction": "asc",
136
+ }])
138
137
  pulumi.export("sortedTags", list.tags)
139
138
  ```
140
- <!--End PulumiCodeChooser -->
141
139
 
142
140
 
143
- :param Sequence[pulumi.InputType['GetTagsFilterArgs']] filters: Filter the results.
141
+ :param Sequence[Union['GetTagsFilterArgs', 'GetTagsFilterArgsDict']] filters: Filter the results.
144
142
  The `filter` block is documented below.
145
- :param Sequence[pulumi.InputType['GetTagsSortArgs']] sorts: Sort the results.
143
+ :param Sequence[Union['GetTagsSortArgs', 'GetTagsSortArgsDict']] sorts: Sort the results.
146
144
  The `sort` block is documented below.
147
145
  """
148
- ...
146
+ __args__ = dict()
147
+ __args__['filters'] = filters
148
+ __args__['sorts'] = sorts
149
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
150
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getTags:getTags', __args__, opts=opts, typ=GetTagsResult)
151
+ return __ret__.apply(lambda __response__: GetTagsResult(
152
+ filters=pulumi.get(__response__, 'filters'),
153
+ id=pulumi.get(__response__, 'id'),
154
+ sorts=pulumi.get(__response__, 'sorts'),
155
+ tags=pulumi.get(__response__, 'tags')))
@@ -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__ = [
@@ -162,7 +167,6 @@ def get_volume(description: Optional[str] = None,
162
167
 
163
168
  Get the volume:
164
169
 
165
- <!--Start PulumiCodeChooser -->
166
170
  ```python
167
171
  import pulumi
168
172
  import pulumi_digitalocean as digitalocean
@@ -170,26 +174,24 @@ def get_volume(description: Optional[str] = None,
170
174
  example = digitalocean.get_volume(name="app-data",
171
175
  region="nyc3")
172
176
  ```
173
- <!--End PulumiCodeChooser -->
174
177
 
175
178
  Reuse the data about a volume to attach it to a Droplet:
176
179
 
177
- <!--Start PulumiCodeChooser -->
178
180
  ```python
179
181
  import pulumi
180
182
  import pulumi_digitalocean as digitalocean
181
183
 
182
- example_volume = digitalocean.get_volume(name="app-data",
184
+ example = digitalocean.get_volume(name="app-data",
183
185
  region="nyc3")
184
- example_droplet = digitalocean.Droplet("exampleDroplet",
185
- size="s-1vcpu-1gb",
186
+ example_droplet = digitalocean.Droplet("example",
187
+ name="foo",
188
+ size=digitalocean.DropletSlug.DROPLET_S1_VCPU1_GB,
186
189
  image="ubuntu-18-04-x64",
187
- region="nyc3")
190
+ region=digitalocean.Region.NYC3)
188
191
  foobar = digitalocean.VolumeAttachment("foobar",
189
192
  droplet_id=example_droplet.id,
190
- volume_id=example_volume.id)
193
+ volume_id=example.id)
191
194
  ```
192
- <!--End PulumiCodeChooser -->
193
195
 
194
196
 
195
197
  :param str description: Text describing a block storage volume.
@@ -214,13 +216,10 @@ def get_volume(description: Optional[str] = None,
214
216
  size=pulumi.get(__ret__, 'size'),
215
217
  tags=pulumi.get(__ret__, 'tags'),
216
218
  urn=pulumi.get(__ret__, 'urn'))
217
-
218
-
219
- @_utilities.lift_output_func(get_volume)
220
219
  def get_volume_output(description: Optional[pulumi.Input[Optional[str]]] = None,
221
220
  name: Optional[pulumi.Input[str]] = None,
222
221
  region: Optional[pulumi.Input[Optional[str]]] = None,
223
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetVolumeResult]:
222
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetVolumeResult]:
224
223
  """
225
224
  Get information on a volume for use in other resources. This data source provides
226
225
  all of the volumes properties as configured on your DigitalOcean account. This is
@@ -233,7 +232,6 @@ def get_volume_output(description: Optional[pulumi.Input[Optional[str]]] = None,
233
232
 
234
233
  Get the volume:
235
234
 
236
- <!--Start PulumiCodeChooser -->
237
235
  ```python
238
236
  import pulumi
239
237
  import pulumi_digitalocean as digitalocean
@@ -241,30 +239,44 @@ def get_volume_output(description: Optional[pulumi.Input[Optional[str]]] = None,
241
239
  example = digitalocean.get_volume(name="app-data",
242
240
  region="nyc3")
243
241
  ```
244
- <!--End PulumiCodeChooser -->
245
242
 
246
243
  Reuse the data about a volume to attach it to a Droplet:
247
244
 
248
- <!--Start PulumiCodeChooser -->
249
245
  ```python
250
246
  import pulumi
251
247
  import pulumi_digitalocean as digitalocean
252
248
 
253
- example_volume = digitalocean.get_volume(name="app-data",
249
+ example = digitalocean.get_volume(name="app-data",
254
250
  region="nyc3")
255
- example_droplet = digitalocean.Droplet("exampleDroplet",
256
- size="s-1vcpu-1gb",
251
+ example_droplet = digitalocean.Droplet("example",
252
+ name="foo",
253
+ size=digitalocean.DropletSlug.DROPLET_S1_VCPU1_GB,
257
254
  image="ubuntu-18-04-x64",
258
- region="nyc3")
255
+ region=digitalocean.Region.NYC3)
259
256
  foobar = digitalocean.VolumeAttachment("foobar",
260
257
  droplet_id=example_droplet.id,
261
- volume_id=example_volume.id)
258
+ volume_id=example.id)
262
259
  ```
263
- <!--End PulumiCodeChooser -->
264
260
 
265
261
 
266
262
  :param str description: Text describing a block storage volume.
267
263
  :param str name: The name of block storage volume.
268
264
  :param str region: The region the block storage volume is provisioned in.
269
265
  """
270
- ...
266
+ __args__ = dict()
267
+ __args__['description'] = description
268
+ __args__['name'] = name
269
+ __args__['region'] = region
270
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
271
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getVolume:getVolume', __args__, opts=opts, typ=GetVolumeResult)
272
+ return __ret__.apply(lambda __response__: GetVolumeResult(
273
+ description=pulumi.get(__response__, 'description'),
274
+ droplet_ids=pulumi.get(__response__, 'droplet_ids'),
275
+ filesystem_label=pulumi.get(__response__, 'filesystem_label'),
276
+ filesystem_type=pulumi.get(__response__, 'filesystem_type'),
277
+ id=pulumi.get(__response__, 'id'),
278
+ name=pulumi.get(__response__, 'name'),
279
+ region=pulumi.get(__response__, 'region'),
280
+ size=pulumi.get(__response__, 'size'),
281
+ tags=pulumi.get(__response__, 'tags'),
282
+ urn=pulumi.get(__response__, 'urn')))