pulumi-digitalocean 4.27.0a1710332933__py3-none-any.whl → 4.39.0a1736849637__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.0a1736849637.dist-info}/METADATA +7 -6
  104. pulumi_digitalocean-4.39.0a1736849637.dist-info/RECORD +108 -0
  105. {pulumi_digitalocean-4.27.0a1710332933.dist-info → pulumi_digitalocean-4.39.0a1736849637.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.0a1736849637.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__ = [
@@ -86,7 +91,6 @@ def get_kubernetes_versions(version_prefix: Optional[str] = None,
86
91
 
87
92
  ### Output a list of all available versions
88
93
 
89
- <!--Start PulumiCodeChooser -->
90
94
  ```python
91
95
  import pulumi
92
96
  import pulumi_digitalocean as digitalocean
@@ -94,45 +98,42 @@ def get_kubernetes_versions(version_prefix: Optional[str] = None,
94
98
  example = digitalocean.get_kubernetes_versions()
95
99
  pulumi.export("k8s-versions", example.valid_versions)
96
100
  ```
97
- <!--End PulumiCodeChooser -->
98
101
 
99
102
  ### Create a Kubernetes cluster using the most recent version available
100
103
 
101
- <!--Start PulumiCodeChooser -->
102
104
  ```python
103
105
  import pulumi
104
106
  import pulumi_digitalocean as digitalocean
105
107
 
106
108
  example = digitalocean.get_kubernetes_versions()
107
109
  example_cluster = digitalocean.KubernetesCluster("example-cluster",
108
- region="lon1",
110
+ name="example-cluster",
111
+ region=digitalocean.Region.LON1,
109
112
  version=example.latest_version,
110
- node_pool=digitalocean.KubernetesClusterNodePoolArgs(
111
- name="default",
112
- size="s-1vcpu-2gb",
113
- node_count=3,
114
- ))
113
+ node_pool={
114
+ "name": "default",
115
+ "size": "s-1vcpu-2gb",
116
+ "node_count": 3,
117
+ })
115
118
  ```
116
- <!--End PulumiCodeChooser -->
117
119
 
118
120
  ### Pin a Kubernetes cluster to a specific minor version
119
121
 
120
- <!--Start PulumiCodeChooser -->
121
122
  ```python
122
123
  import pulumi
123
124
  import pulumi_digitalocean as digitalocean
124
125
 
125
126
  example = digitalocean.get_kubernetes_versions(version_prefix="1.22.")
126
127
  example_cluster = digitalocean.KubernetesCluster("example-cluster",
127
- region="lon1",
128
+ name="example-cluster",
129
+ region=digitalocean.Region.LON1,
128
130
  version=example.latest_version,
129
- node_pool=digitalocean.KubernetesClusterNodePoolArgs(
130
- name="default",
131
- size="s-1vcpu-2gb",
132
- node_count=3,
133
- ))
131
+ node_pool={
132
+ "name": "default",
133
+ "size": "s-1vcpu-2gb",
134
+ "node_count": 3,
135
+ })
134
136
  ```
135
- <!--End PulumiCodeChooser -->
136
137
 
137
138
 
138
139
  :param str version_prefix: If provided, the provider will only return versions that match the string prefix. For example, `1.15.` will match all 1.15.x series releases.
@@ -147,11 +148,8 @@ def get_kubernetes_versions(version_prefix: Optional[str] = None,
147
148
  latest_version=pulumi.get(__ret__, 'latest_version'),
148
149
  valid_versions=pulumi.get(__ret__, 'valid_versions'),
149
150
  version_prefix=pulumi.get(__ret__, 'version_prefix'))
150
-
151
-
152
- @_utilities.lift_output_func(get_kubernetes_versions)
153
151
  def get_kubernetes_versions_output(version_prefix: Optional[pulumi.Input[Optional[str]]] = None,
154
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetKubernetesVersionsResult]:
152
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetKubernetesVersionsResult]:
155
153
  """
156
154
  Provides access to the available DigitalOcean Kubernetes Service versions.
157
155
 
@@ -159,7 +157,6 @@ def get_kubernetes_versions_output(version_prefix: Optional[pulumi.Input[Optiona
159
157
 
160
158
  ### Output a list of all available versions
161
159
 
162
- <!--Start PulumiCodeChooser -->
163
160
  ```python
164
161
  import pulumi
165
162
  import pulumi_digitalocean as digitalocean
@@ -167,47 +164,52 @@ def get_kubernetes_versions_output(version_prefix: Optional[pulumi.Input[Optiona
167
164
  example = digitalocean.get_kubernetes_versions()
168
165
  pulumi.export("k8s-versions", example.valid_versions)
169
166
  ```
170
- <!--End PulumiCodeChooser -->
171
167
 
172
168
  ### Create a Kubernetes cluster using the most recent version available
173
169
 
174
- <!--Start PulumiCodeChooser -->
175
170
  ```python
176
171
  import pulumi
177
172
  import pulumi_digitalocean as digitalocean
178
173
 
179
174
  example = digitalocean.get_kubernetes_versions()
180
175
  example_cluster = digitalocean.KubernetesCluster("example-cluster",
181
- region="lon1",
176
+ name="example-cluster",
177
+ region=digitalocean.Region.LON1,
182
178
  version=example.latest_version,
183
- node_pool=digitalocean.KubernetesClusterNodePoolArgs(
184
- name="default",
185
- size="s-1vcpu-2gb",
186
- node_count=3,
187
- ))
179
+ node_pool={
180
+ "name": "default",
181
+ "size": "s-1vcpu-2gb",
182
+ "node_count": 3,
183
+ })
188
184
  ```
189
- <!--End PulumiCodeChooser -->
190
185
 
191
186
  ### Pin a Kubernetes cluster to a specific minor version
192
187
 
193
- <!--Start PulumiCodeChooser -->
194
188
  ```python
195
189
  import pulumi
196
190
  import pulumi_digitalocean as digitalocean
197
191
 
198
192
  example = digitalocean.get_kubernetes_versions(version_prefix="1.22.")
199
193
  example_cluster = digitalocean.KubernetesCluster("example-cluster",
200
- region="lon1",
194
+ name="example-cluster",
195
+ region=digitalocean.Region.LON1,
201
196
  version=example.latest_version,
202
- node_pool=digitalocean.KubernetesClusterNodePoolArgs(
203
- name="default",
204
- size="s-1vcpu-2gb",
205
- node_count=3,
206
- ))
197
+ node_pool={
198
+ "name": "default",
199
+ "size": "s-1vcpu-2gb",
200
+ "node_count": 3,
201
+ })
207
202
  ```
208
- <!--End PulumiCodeChooser -->
209
203
 
210
204
 
211
205
  :param str version_prefix: If provided, the provider will only return versions that match the string prefix. For example, `1.15.` will match all 1.15.x series releases.
212
206
  """
213
- ...
207
+ __args__ = dict()
208
+ __args__['versionPrefix'] = version_prefix
209
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
210
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getKubernetesVersions:getKubernetesVersions', __args__, opts=opts, typ=GetKubernetesVersionsResult)
211
+ return __ret__.apply(lambda __response__: GetKubernetesVersionsResult(
212
+ id=pulumi.get(__response__, 'id'),
213
+ latest_version=pulumi.get(__response__, 'latest_version'),
214
+ valid_versions=pulumi.get(__response__, 'valid_versions'),
215
+ version_prefix=pulumi.get(__response__, 'version_prefix')))
@@ -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
 
@@ -22,13 +27,16 @@ class GetLoadBalancerResult:
22
27
  """
23
28
  A collection of values returned by getLoadBalancer.
24
29
  """
25
- def __init__(__self__, algorithm=None, disable_lets_encrypt_dns_records=None, droplet_ids=None, droplet_tag=None, enable_backend_keepalive=None, enable_proxy_protocol=None, firewalls=None, forwarding_rules=None, healthchecks=None, http_idle_timeout_seconds=None, id=None, ip=None, load_balancer_urn=None, name=None, project_id=None, redirect_http_to_https=None, region=None, size=None, size_unit=None, status=None, sticky_sessions=None, type=None, vpc_uuid=None):
30
+ def __init__(__self__, algorithm=None, disable_lets_encrypt_dns_records=None, domains=None, droplet_ids=None, droplet_tag=None, enable_backend_keepalive=None, enable_proxy_protocol=None, firewalls=None, forwarding_rules=None, glb_settings=None, healthchecks=None, http_idle_timeout_seconds=None, id=None, ip=None, load_balancer_urn=None, name=None, network=None, project_id=None, redirect_http_to_https=None, region=None, size=None, size_unit=None, status=None, sticky_sessions=None, target_load_balancer_ids=None, type=None, vpc_uuid=None):
26
31
  if algorithm and not isinstance(algorithm, str):
27
32
  raise TypeError("Expected argument 'algorithm' to be a str")
28
33
  pulumi.set(__self__, "algorithm", algorithm)
29
34
  if disable_lets_encrypt_dns_records and not isinstance(disable_lets_encrypt_dns_records, bool):
30
35
  raise TypeError("Expected argument 'disable_lets_encrypt_dns_records' to be a bool")
31
36
  pulumi.set(__self__, "disable_lets_encrypt_dns_records", disable_lets_encrypt_dns_records)
37
+ if domains and not isinstance(domains, list):
38
+ raise TypeError("Expected argument 'domains' to be a list")
39
+ pulumi.set(__self__, "domains", domains)
32
40
  if droplet_ids and not isinstance(droplet_ids, list):
33
41
  raise TypeError("Expected argument 'droplet_ids' to be a list")
34
42
  pulumi.set(__self__, "droplet_ids", droplet_ids)
@@ -47,6 +55,9 @@ class GetLoadBalancerResult:
47
55
  if forwarding_rules and not isinstance(forwarding_rules, list):
48
56
  raise TypeError("Expected argument 'forwarding_rules' to be a list")
49
57
  pulumi.set(__self__, "forwarding_rules", forwarding_rules)
58
+ if glb_settings and not isinstance(glb_settings, list):
59
+ raise TypeError("Expected argument 'glb_settings' to be a list")
60
+ pulumi.set(__self__, "glb_settings", glb_settings)
50
61
  if healthchecks and not isinstance(healthchecks, list):
51
62
  raise TypeError("Expected argument 'healthchecks' to be a list")
52
63
  pulumi.set(__self__, "healthchecks", healthchecks)
@@ -65,6 +76,9 @@ class GetLoadBalancerResult:
65
76
  if name and not isinstance(name, str):
66
77
  raise TypeError("Expected argument 'name' to be a str")
67
78
  pulumi.set(__self__, "name", name)
79
+ if network and not isinstance(network, str):
80
+ raise TypeError("Expected argument 'network' to be a str")
81
+ pulumi.set(__self__, "network", network)
68
82
  if project_id and not isinstance(project_id, str):
69
83
  raise TypeError("Expected argument 'project_id' to be a str")
70
84
  pulumi.set(__self__, "project_id", project_id)
@@ -86,6 +100,9 @@ class GetLoadBalancerResult:
86
100
  if sticky_sessions and not isinstance(sticky_sessions, list):
87
101
  raise TypeError("Expected argument 'sticky_sessions' to be a list")
88
102
  pulumi.set(__self__, "sticky_sessions", sticky_sessions)
103
+ if target_load_balancer_ids and not isinstance(target_load_balancer_ids, list):
104
+ raise TypeError("Expected argument 'target_load_balancer_ids' to be a list")
105
+ pulumi.set(__self__, "target_load_balancer_ids", target_load_balancer_ids)
89
106
  if type and not isinstance(type, str):
90
107
  raise TypeError("Expected argument 'type' to be a str")
91
108
  pulumi.set(__self__, "type", type)
@@ -95,6 +112,7 @@ class GetLoadBalancerResult:
95
112
 
96
113
  @property
97
114
  @pulumi.getter
115
+ @_utilities.deprecated("""This field has been deprecated. You can no longer specify an algorithm for load balancers.""")
98
116
  def algorithm(self) -> str:
99
117
  return pulumi.get(self, "algorithm")
100
118
 
@@ -103,6 +121,11 @@ class GetLoadBalancerResult:
103
121
  def disable_lets_encrypt_dns_records(self) -> bool:
104
122
  return pulumi.get(self, "disable_lets_encrypt_dns_records")
105
123
 
124
+ @property
125
+ @pulumi.getter
126
+ def domains(self) -> Sequence['outputs.GetLoadBalancerDomainResult']:
127
+ return pulumi.get(self, "domains")
128
+
106
129
  @property
107
130
  @pulumi.getter(name="dropletIds")
108
131
  def droplet_ids(self) -> Sequence[int]:
@@ -133,6 +156,11 @@ class GetLoadBalancerResult:
133
156
  def forwarding_rules(self) -> Sequence['outputs.GetLoadBalancerForwardingRuleResult']:
134
157
  return pulumi.get(self, "forwarding_rules")
135
158
 
159
+ @property
160
+ @pulumi.getter(name="glbSettings")
161
+ def glb_settings(self) -> Sequence['outputs.GetLoadBalancerGlbSettingResult']:
162
+ return pulumi.get(self, "glb_settings")
163
+
136
164
  @property
137
165
  @pulumi.getter
138
166
  def healthchecks(self) -> Sequence['outputs.GetLoadBalancerHealthcheckResult']:
@@ -163,6 +191,11 @@ class GetLoadBalancerResult:
163
191
  def name(self) -> Optional[str]:
164
192
  return pulumi.get(self, "name")
165
193
 
194
+ @property
195
+ @pulumi.getter
196
+ def network(self) -> str:
197
+ return pulumi.get(self, "network")
198
+
166
199
  @property
167
200
  @pulumi.getter(name="projectId")
168
201
  def project_id(self) -> str:
@@ -198,6 +231,11 @@ class GetLoadBalancerResult:
198
231
  def sticky_sessions(self) -> Sequence['outputs.GetLoadBalancerStickySessionResult']:
199
232
  return pulumi.get(self, "sticky_sessions")
200
233
 
234
+ @property
235
+ @pulumi.getter(name="targetLoadBalancerIds")
236
+ def target_load_balancer_ids(self) -> Sequence[str]:
237
+ return pulumi.get(self, "target_load_balancer_ids")
238
+
201
239
  @property
202
240
  @pulumi.getter
203
241
  def type(self) -> str:
@@ -217,18 +255,21 @@ class AwaitableGetLoadBalancerResult(GetLoadBalancerResult):
217
255
  return GetLoadBalancerResult(
218
256
  algorithm=self.algorithm,
219
257
  disable_lets_encrypt_dns_records=self.disable_lets_encrypt_dns_records,
258
+ domains=self.domains,
220
259
  droplet_ids=self.droplet_ids,
221
260
  droplet_tag=self.droplet_tag,
222
261
  enable_backend_keepalive=self.enable_backend_keepalive,
223
262
  enable_proxy_protocol=self.enable_proxy_protocol,
224
263
  firewalls=self.firewalls,
225
264
  forwarding_rules=self.forwarding_rules,
265
+ glb_settings=self.glb_settings,
226
266
  healthchecks=self.healthchecks,
227
267
  http_idle_timeout_seconds=self.http_idle_timeout_seconds,
228
268
  id=self.id,
229
269
  ip=self.ip,
230
270
  load_balancer_urn=self.load_balancer_urn,
231
271
  name=self.name,
272
+ network=self.network,
232
273
  project_id=self.project_id,
233
274
  redirect_http_to_https=self.redirect_http_to_https,
234
275
  region=self.region,
@@ -236,13 +277,13 @@ class AwaitableGetLoadBalancerResult(GetLoadBalancerResult):
236
277
  size_unit=self.size_unit,
237
278
  status=self.status,
238
279
  sticky_sessions=self.sticky_sessions,
280
+ target_load_balancer_ids=self.target_load_balancer_ids,
239
281
  type=self.type,
240
282
  vpc_uuid=self.vpc_uuid)
241
283
 
242
284
 
243
285
  def get_load_balancer(id: Optional[str] = None,
244
286
  name: Optional[str] = None,
245
- type: Optional[str] = None,
246
287
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetLoadBalancerResult:
247
288
  """
248
289
  Get information on a load balancer for use in other resources. This data source
@@ -256,7 +297,6 @@ def get_load_balancer(id: Optional[str] = None,
256
297
 
257
298
  Get the load balancer by name:
258
299
 
259
- <!--Start PulumiCodeChooser -->
260
300
  ```python
261
301
  import pulumi
262
302
  import pulumi_digitalocean as digitalocean
@@ -264,18 +304,15 @@ def get_load_balancer(id: Optional[str] = None,
264
304
  example = digitalocean.get_load_balancer(name="app")
265
305
  pulumi.export("lbOutput", example.ip)
266
306
  ```
267
- <!--End PulumiCodeChooser -->
268
307
 
269
308
  Get the load balancer by ID:
270
309
 
271
- <!--Start PulumiCodeChooser -->
272
310
  ```python
273
311
  import pulumi
274
312
  import pulumi_digitalocean as digitalocean
275
313
 
276
314
  example = digitalocean.get_load_balancer(id="loadbalancer_id")
277
315
  ```
278
- <!--End PulumiCodeChooser -->
279
316
 
280
317
 
281
318
  :param str id: The ID of load balancer.
@@ -284,25 +321,27 @@ def get_load_balancer(id: Optional[str] = None,
284
321
  __args__ = dict()
285
322
  __args__['id'] = id
286
323
  __args__['name'] = name
287
- __args__['type'] = type
288
324
  opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
289
325
  __ret__ = pulumi.runtime.invoke('digitalocean:index/getLoadBalancer:getLoadBalancer', __args__, opts=opts, typ=GetLoadBalancerResult).value
290
326
 
291
327
  return AwaitableGetLoadBalancerResult(
292
328
  algorithm=pulumi.get(__ret__, 'algorithm'),
293
329
  disable_lets_encrypt_dns_records=pulumi.get(__ret__, 'disable_lets_encrypt_dns_records'),
330
+ domains=pulumi.get(__ret__, 'domains'),
294
331
  droplet_ids=pulumi.get(__ret__, 'droplet_ids'),
295
332
  droplet_tag=pulumi.get(__ret__, 'droplet_tag'),
296
333
  enable_backend_keepalive=pulumi.get(__ret__, 'enable_backend_keepalive'),
297
334
  enable_proxy_protocol=pulumi.get(__ret__, 'enable_proxy_protocol'),
298
335
  firewalls=pulumi.get(__ret__, 'firewalls'),
299
336
  forwarding_rules=pulumi.get(__ret__, 'forwarding_rules'),
337
+ glb_settings=pulumi.get(__ret__, 'glb_settings'),
300
338
  healthchecks=pulumi.get(__ret__, 'healthchecks'),
301
339
  http_idle_timeout_seconds=pulumi.get(__ret__, 'http_idle_timeout_seconds'),
302
340
  id=pulumi.get(__ret__, 'id'),
303
341
  ip=pulumi.get(__ret__, 'ip'),
304
342
  load_balancer_urn=pulumi.get(__ret__, 'load_balancer_urn'),
305
343
  name=pulumi.get(__ret__, 'name'),
344
+ network=pulumi.get(__ret__, 'network'),
306
345
  project_id=pulumi.get(__ret__, 'project_id'),
307
346
  redirect_http_to_https=pulumi.get(__ret__, 'redirect_http_to_https'),
308
347
  region=pulumi.get(__ret__, 'region'),
@@ -310,15 +349,12 @@ def get_load_balancer(id: Optional[str] = None,
310
349
  size_unit=pulumi.get(__ret__, 'size_unit'),
311
350
  status=pulumi.get(__ret__, 'status'),
312
351
  sticky_sessions=pulumi.get(__ret__, 'sticky_sessions'),
352
+ target_load_balancer_ids=pulumi.get(__ret__, 'target_load_balancer_ids'),
313
353
  type=pulumi.get(__ret__, 'type'),
314
354
  vpc_uuid=pulumi.get(__ret__, 'vpc_uuid'))
315
-
316
-
317
- @_utilities.lift_output_func(get_load_balancer)
318
355
  def get_load_balancer_output(id: Optional[pulumi.Input[Optional[str]]] = None,
319
356
  name: Optional[pulumi.Input[Optional[str]]] = None,
320
- type: Optional[pulumi.Input[Optional[str]]] = None,
321
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetLoadBalancerResult]:
357
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetLoadBalancerResult]:
322
358
  """
323
359
  Get information on a load balancer for use in other resources. This data source
324
360
  provides all of the load balancers properties as configured on your DigitalOcean
@@ -331,7 +367,6 @@ def get_load_balancer_output(id: Optional[pulumi.Input[Optional[str]]] = None,
331
367
 
332
368
  Get the load balancer by name:
333
369
 
334
- <!--Start PulumiCodeChooser -->
335
370
  ```python
336
371
  import pulumi
337
372
  import pulumi_digitalocean as digitalocean
@@ -339,21 +374,50 @@ def get_load_balancer_output(id: Optional[pulumi.Input[Optional[str]]] = None,
339
374
  example = digitalocean.get_load_balancer(name="app")
340
375
  pulumi.export("lbOutput", example.ip)
341
376
  ```
342
- <!--End PulumiCodeChooser -->
343
377
 
344
378
  Get the load balancer by ID:
345
379
 
346
- <!--Start PulumiCodeChooser -->
347
380
  ```python
348
381
  import pulumi
349
382
  import pulumi_digitalocean as digitalocean
350
383
 
351
384
  example = digitalocean.get_load_balancer(id="loadbalancer_id")
352
385
  ```
353
- <!--End PulumiCodeChooser -->
354
386
 
355
387
 
356
388
  :param str id: The ID of load balancer.
357
389
  :param str name: The name of load balancer.
358
390
  """
359
- ...
391
+ __args__ = dict()
392
+ __args__['id'] = id
393
+ __args__['name'] = name
394
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
395
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getLoadBalancer:getLoadBalancer', __args__, opts=opts, typ=GetLoadBalancerResult)
396
+ return __ret__.apply(lambda __response__: GetLoadBalancerResult(
397
+ algorithm=pulumi.get(__response__, 'algorithm'),
398
+ disable_lets_encrypt_dns_records=pulumi.get(__response__, 'disable_lets_encrypt_dns_records'),
399
+ domains=pulumi.get(__response__, 'domains'),
400
+ droplet_ids=pulumi.get(__response__, 'droplet_ids'),
401
+ droplet_tag=pulumi.get(__response__, 'droplet_tag'),
402
+ enable_backend_keepalive=pulumi.get(__response__, 'enable_backend_keepalive'),
403
+ enable_proxy_protocol=pulumi.get(__response__, 'enable_proxy_protocol'),
404
+ firewalls=pulumi.get(__response__, 'firewalls'),
405
+ forwarding_rules=pulumi.get(__response__, 'forwarding_rules'),
406
+ glb_settings=pulumi.get(__response__, 'glb_settings'),
407
+ healthchecks=pulumi.get(__response__, 'healthchecks'),
408
+ http_idle_timeout_seconds=pulumi.get(__response__, 'http_idle_timeout_seconds'),
409
+ id=pulumi.get(__response__, 'id'),
410
+ ip=pulumi.get(__response__, 'ip'),
411
+ load_balancer_urn=pulumi.get(__response__, 'load_balancer_urn'),
412
+ name=pulumi.get(__response__, 'name'),
413
+ network=pulumi.get(__response__, 'network'),
414
+ project_id=pulumi.get(__response__, 'project_id'),
415
+ redirect_http_to_https=pulumi.get(__response__, 'redirect_http_to_https'),
416
+ region=pulumi.get(__response__, 'region'),
417
+ size=pulumi.get(__response__, 'size'),
418
+ size_unit=pulumi.get(__response__, 'size_unit'),
419
+ status=pulumi.get(__response__, 'status'),
420
+ sticky_sessions=pulumi.get(__response__, 'sticky_sessions'),
421
+ target_load_balancer_ids=pulumi.get(__response__, 'target_load_balancer_ids'),
422
+ type=pulumi.get(__response__, 'type'),
423
+ vpc_uuid=pulumi.get(__response__, 'vpc_uuid')))
@@ -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__ = [
@@ -164,7 +169,6 @@ def get_project(id: Optional[str] = None,
164
169
 
165
170
  ## Example Usage
166
171
 
167
- <!--Start PulumiCodeChooser -->
168
172
  ```python
169
173
  import pulumi
170
174
  import pulumi_digitalocean as digitalocean
@@ -172,7 +176,6 @@ def get_project(id: Optional[str] = None,
172
176
  default = digitalocean.get_project()
173
177
  staging = digitalocean.get_project(name="My Staging Project")
174
178
  ```
175
- <!--End PulumiCodeChooser -->
176
179
 
177
180
 
178
181
  :param str id: the ID of the project to retrieve
@@ -197,19 +200,15 @@ def get_project(id: Optional[str] = None,
197
200
  purpose=pulumi.get(__ret__, 'purpose'),
198
201
  resources=pulumi.get(__ret__, 'resources'),
199
202
  updated_at=pulumi.get(__ret__, 'updated_at'))
200
-
201
-
202
- @_utilities.lift_output_func(get_project)
203
203
  def get_project_output(id: Optional[pulumi.Input[Optional[str]]] = None,
204
204
  name: Optional[pulumi.Input[Optional[str]]] = None,
205
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetProjectResult]:
205
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetProjectResult]:
206
206
  """
207
207
  Get information on a single DigitalOcean project. If neither the `id` nor `name` attributes are provided,
208
208
  then this data source returns the default project.
209
209
 
210
210
  ## Example Usage
211
211
 
212
- <!--Start PulumiCodeChooser -->
213
212
  ```python
214
213
  import pulumi
215
214
  import pulumi_digitalocean as digitalocean
@@ -217,11 +216,26 @@ def get_project_output(id: Optional[pulumi.Input[Optional[str]]] = None,
217
216
  default = digitalocean.get_project()
218
217
  staging = digitalocean.get_project(name="My Staging Project")
219
218
  ```
220
- <!--End PulumiCodeChooser -->
221
219
 
222
220
 
223
221
  :param str id: the ID of the project to retrieve
224
222
  :param str name: the name of the project to retrieve. The data source will raise an error if more than
225
223
  one project has the provided name or if no project has that name.
226
224
  """
227
- ...
225
+ __args__ = dict()
226
+ __args__['id'] = id
227
+ __args__['name'] = name
228
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
229
+ __ret__ = pulumi.runtime.invoke_output('digitalocean:index/getProject:getProject', __args__, opts=opts, typ=GetProjectResult)
230
+ return __ret__.apply(lambda __response__: GetProjectResult(
231
+ created_at=pulumi.get(__response__, 'created_at'),
232
+ description=pulumi.get(__response__, 'description'),
233
+ environment=pulumi.get(__response__, 'environment'),
234
+ id=pulumi.get(__response__, 'id'),
235
+ is_default=pulumi.get(__response__, 'is_default'),
236
+ name=pulumi.get(__response__, 'name'),
237
+ owner_id=pulumi.get(__response__, 'owner_id'),
238
+ owner_uuid=pulumi.get(__response__, 'owner_uuid'),
239
+ purpose=pulumi.get(__response__, 'purpose'),
240
+ resources=pulumi.get(__response__, 'resources'),
241
+ updated_at=pulumi.get(__response__, 'updated_at')))