pulumi-hcloud 1.18.0a1709364097__py3-none-any.whl → 1.22.0a1736833581__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.
- pulumi_hcloud/__init__.py +2 -0
- pulumi_hcloud/_inputs.py +247 -15
- pulumi_hcloud/_utilities.py +41 -5
- pulumi_hcloud/certificate.py +15 -10
- pulumi_hcloud/config/__init__.pyi +5 -0
- pulumi_hcloud/config/vars.py +5 -0
- pulumi_hcloud/firewall.py +77 -66
- pulumi_hcloud/firewall_attachment.py +31 -18
- pulumi_hcloud/floating_ip.py +39 -32
- pulumi_hcloud/floating_ip_assignment.py +11 -4
- pulumi_hcloud/get_certificate.py +25 -6
- pulumi_hcloud/get_certificates.py +14 -5
- pulumi_hcloud/get_datacenter.py +38 -23
- pulumi_hcloud/get_datacenters.py +28 -53
- pulumi_hcloud/get_firewall.py +38 -19
- pulumi_hcloud/get_firewalls.py +16 -5
- pulumi_hcloud/get_floating_ip.py +39 -13
- pulumi_hcloud/get_floating_ips.py +14 -5
- pulumi_hcloud/get_image.py +37 -9
- pulumi_hcloud/get_images.py +22 -5
- pulumi_hcloud/get_load_balancer.py +30 -7
- pulumi_hcloud/get_load_balancer_type.py +202 -0
- pulumi_hcloud/get_load_balancer_types.py +100 -0
- pulumi_hcloud/get_load_balancers.py +14 -5
- pulumi_hcloud/get_location.py +42 -25
- pulumi_hcloud/get_locations.py +28 -53
- pulumi_hcloud/get_network.py +28 -11
- pulumi_hcloud/get_networks.py +14 -5
- pulumi_hcloud/get_placement_group.py +31 -13
- pulumi_hcloud/get_placement_groups.py +16 -5
- pulumi_hcloud/get_primary_ip.py +44 -18
- pulumi_hcloud/get_primary_ips.py +14 -5
- pulumi_hcloud/get_server.py +43 -11
- pulumi_hcloud/get_server_type.py +75 -49
- pulumi_hcloud/get_server_types.py +39 -23
- pulumi_hcloud/get_servers.py +16 -5
- pulumi_hcloud/get_ssh_key.py +58 -32
- pulumi_hcloud/get_ssh_keys.py +35 -20
- pulumi_hcloud/get_volume.py +33 -12
- pulumi_hcloud/get_volumes.py +18 -7
- pulumi_hcloud/load_balancer.py +63 -60
- pulumi_hcloud/load_balancer_network.py +28 -15
- pulumi_hcloud/load_balancer_service.py +59 -52
- pulumi_hcloud/load_balancer_target.py +33 -24
- pulumi_hcloud/managed_certificate.py +57 -20
- pulumi_hcloud/network.py +27 -18
- pulumi_hcloud/network_route.py +15 -6
- pulumi_hcloud/network_subnet.py +15 -6
- pulumi_hcloud/outputs.py +265 -46
- pulumi_hcloud/placement_group.py +27 -18
- pulumi_hcloud/primary_ip.py +66 -43
- pulumi_hcloud/provider.py +5 -0
- pulumi_hcloud/pulumi-plugin.json +2 -1
- pulumi_hcloud/rdns.py +51 -34
- pulumi_hcloud/server.py +185 -130
- pulumi_hcloud/server_network.py +26 -15
- pulumi_hcloud/snapshot.py +25 -18
- pulumi_hcloud/ssh_key.py +52 -47
- pulumi_hcloud/uploaded_certificate.py +73 -20
- pulumi_hcloud/volume.py +37 -28
- pulumi_hcloud/volume_attachment.py +11 -4
- {pulumi_hcloud-1.18.0a1709364097.dist-info → pulumi_hcloud-1.22.0a1736833581.dist-info}/METADATA +7 -6
- pulumi_hcloud-1.22.0a1736833581.dist-info/RECORD +67 -0
- {pulumi_hcloud-1.18.0a1709364097.dist-info → pulumi_hcloud-1.22.0a1736833581.dist-info}/WHEEL +1 -1
- pulumi_hcloud-1.18.0a1709364097.dist-info/RECORD +0 -65
- {pulumi_hcloud-1.18.0a1709364097.dist-info → pulumi_hcloud-1.22.0a1736833581.dist-info}/top_level.txt +0 -0
pulumi_hcloud/get_floating_ip.py
CHANGED
|
@@ -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__ = [
|
|
@@ -109,7 +114,7 @@ class GetFloatingIpResult:
|
|
|
109
114
|
|
|
110
115
|
@property
|
|
111
116
|
@pulumi.getter
|
|
112
|
-
def labels(self) -> Mapping[str,
|
|
117
|
+
def labels(self) -> Mapping[str, str]:
|
|
113
118
|
"""
|
|
114
119
|
(map) User-defined labels (key-value pairs).
|
|
115
120
|
"""
|
|
@@ -125,10 +130,8 @@ class GetFloatingIpResult:
|
|
|
125
130
|
|
|
126
131
|
@property
|
|
127
132
|
@pulumi.getter
|
|
133
|
+
@_utilities.deprecated("""Please use the with_selector property instead.""")
|
|
128
134
|
def selector(self) -> Optional[str]:
|
|
129
|
-
warnings.warn("""Please use the with_selector property instead.""", DeprecationWarning)
|
|
130
|
-
pulumi.log.warn("""selector is deprecated: Please use the with_selector property instead.""")
|
|
131
|
-
|
|
132
135
|
return pulumi.get(self, "selector")
|
|
133
136
|
|
|
134
137
|
@property
|
|
@@ -187,9 +190,12 @@ def get_floating_ip(id: Optional[int] = None,
|
|
|
187
190
|
## Example Usage
|
|
188
191
|
|
|
189
192
|
# Data Source: FloatingIp
|
|
193
|
+
|
|
190
194
|
Provides details about a Hetzner Cloud Floating IP.
|
|
191
195
|
This resource can be useful when you need to determine a Floating IP ID based on the IP address.
|
|
196
|
+
|
|
192
197
|
### Additional Examples
|
|
198
|
+
|
|
193
199
|
```python
|
|
194
200
|
import pulumi
|
|
195
201
|
import pulumi_hcloud as hcloud
|
|
@@ -197,10 +203,10 @@ def get_floating_ip(id: Optional[int] = None,
|
|
|
197
203
|
ip1 = hcloud.get_floating_ip(ip_address="1.2.3.4")
|
|
198
204
|
ip2 = hcloud.get_floating_ip(with_selector="key=value")
|
|
199
205
|
main = []
|
|
200
|
-
for range in [{"value": i} for i in range(0,
|
|
206
|
+
for range in [{"value": i} for i in range(0, counter)]:
|
|
201
207
|
main.append(hcloud.FloatingIpAssignment(f"main-{range['value']}",
|
|
202
208
|
floating_ip_id=ip1.id,
|
|
203
|
-
server_id=
|
|
209
|
+
server_id=main_hcloud_server["id"]))
|
|
204
210
|
```
|
|
205
211
|
|
|
206
212
|
|
|
@@ -231,15 +237,12 @@ def get_floating_ip(id: Optional[int] = None,
|
|
|
231
237
|
server_id=pulumi.get(__ret__, 'server_id'),
|
|
232
238
|
type=pulumi.get(__ret__, 'type'),
|
|
233
239
|
with_selector=pulumi.get(__ret__, 'with_selector'))
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
@_utilities.lift_output_func(get_floating_ip)
|
|
237
240
|
def get_floating_ip_output(id: Optional[pulumi.Input[Optional[int]]] = None,
|
|
238
241
|
ip_address: Optional[pulumi.Input[Optional[str]]] = None,
|
|
239
242
|
name: Optional[pulumi.Input[Optional[str]]] = None,
|
|
240
243
|
selector: Optional[pulumi.Input[Optional[str]]] = None,
|
|
241
244
|
with_selector: Optional[pulumi.Input[Optional[str]]] = None,
|
|
242
|
-
opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetFloatingIpResult]:
|
|
245
|
+
opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetFloatingIpResult]:
|
|
243
246
|
"""
|
|
244
247
|
Provides details about a Hetzner Cloud Floating IP.
|
|
245
248
|
|
|
@@ -248,9 +251,12 @@ def get_floating_ip_output(id: Optional[pulumi.Input[Optional[int]]] = None,
|
|
|
248
251
|
## Example Usage
|
|
249
252
|
|
|
250
253
|
# Data Source: FloatingIp
|
|
254
|
+
|
|
251
255
|
Provides details about a Hetzner Cloud Floating IP.
|
|
252
256
|
This resource can be useful when you need to determine a Floating IP ID based on the IP address.
|
|
257
|
+
|
|
253
258
|
### Additional Examples
|
|
259
|
+
|
|
254
260
|
```python
|
|
255
261
|
import pulumi
|
|
256
262
|
import pulumi_hcloud as hcloud
|
|
@@ -258,10 +264,10 @@ def get_floating_ip_output(id: Optional[pulumi.Input[Optional[int]]] = None,
|
|
|
258
264
|
ip1 = hcloud.get_floating_ip(ip_address="1.2.3.4")
|
|
259
265
|
ip2 = hcloud.get_floating_ip(with_selector="key=value")
|
|
260
266
|
main = []
|
|
261
|
-
for range in [{"value": i} for i in range(0,
|
|
267
|
+
for range in [{"value": i} for i in range(0, counter)]:
|
|
262
268
|
main.append(hcloud.FloatingIpAssignment(f"main-{range['value']}",
|
|
263
269
|
floating_ip_id=ip1.id,
|
|
264
|
-
server_id=
|
|
270
|
+
server_id=main_hcloud_server["id"]))
|
|
265
271
|
```
|
|
266
272
|
|
|
267
273
|
|
|
@@ -270,4 +276,24 @@ def get_floating_ip_output(id: Optional[pulumi.Input[Optional[int]]] = None,
|
|
|
270
276
|
:param str name: Name of the Floating IP.
|
|
271
277
|
:param str with_selector: [Label selector](https://docs.hetzner.cloud/#overview-label-selector)
|
|
272
278
|
"""
|
|
273
|
-
|
|
279
|
+
__args__ = dict()
|
|
280
|
+
__args__['id'] = id
|
|
281
|
+
__args__['ipAddress'] = ip_address
|
|
282
|
+
__args__['name'] = name
|
|
283
|
+
__args__['selector'] = selector
|
|
284
|
+
__args__['withSelector'] = with_selector
|
|
285
|
+
opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
286
|
+
__ret__ = pulumi.runtime.invoke_output('hcloud:index/getFloatingIp:getFloatingIp', __args__, opts=opts, typ=GetFloatingIpResult)
|
|
287
|
+
return __ret__.apply(lambda __response__: GetFloatingIpResult(
|
|
288
|
+
delete_protection=pulumi.get(__response__, 'delete_protection'),
|
|
289
|
+
description=pulumi.get(__response__, 'description'),
|
|
290
|
+
home_location=pulumi.get(__response__, 'home_location'),
|
|
291
|
+
id=pulumi.get(__response__, 'id'),
|
|
292
|
+
ip_address=pulumi.get(__response__, 'ip_address'),
|
|
293
|
+
ip_network=pulumi.get(__response__, 'ip_network'),
|
|
294
|
+
labels=pulumi.get(__response__, 'labels'),
|
|
295
|
+
name=pulumi.get(__response__, 'name'),
|
|
296
|
+
selector=pulumi.get(__response__, 'selector'),
|
|
297
|
+
server_id=pulumi.get(__response__, 'server_id'),
|
|
298
|
+
type=pulumi.get(__response__, 'type'),
|
|
299
|
+
with_selector=pulumi.get(__response__, 'with_selector')))
|
|
@@ -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
|
|
|
@@ -92,11 +97,8 @@ def get_floating_ips(with_selector: Optional[str] = None,
|
|
|
92
97
|
floating_ips=pulumi.get(__ret__, 'floating_ips'),
|
|
93
98
|
id=pulumi.get(__ret__, 'id'),
|
|
94
99
|
with_selector=pulumi.get(__ret__, 'with_selector'))
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
@_utilities.lift_output_func(get_floating_ips)
|
|
98
100
|
def get_floating_ips_output(with_selector: Optional[pulumi.Input[Optional[str]]] = None,
|
|
99
|
-
opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetFloatingIpsResult]:
|
|
101
|
+
opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetFloatingIpsResult]:
|
|
100
102
|
"""
|
|
101
103
|
Provides details about multiple Hetzner Cloud Floating IPs.
|
|
102
104
|
|
|
@@ -112,4 +114,11 @@ def get_floating_ips_output(with_selector: Optional[pulumi.Input[Optional[str]]]
|
|
|
112
114
|
|
|
113
115
|
:param str with_selector: [Label selector](https://docs.hetzner.cloud/#overview-label-selector)
|
|
114
116
|
"""
|
|
115
|
-
|
|
117
|
+
__args__ = dict()
|
|
118
|
+
__args__['withSelector'] = with_selector
|
|
119
|
+
opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
120
|
+
__ret__ = pulumi.runtime.invoke_output('hcloud:index/getFloatingIps:getFloatingIps', __args__, opts=opts, typ=GetFloatingIpsResult)
|
|
121
|
+
return __ret__.apply(lambda __response__: GetFloatingIpsResult(
|
|
122
|
+
floating_ips=pulumi.get(__response__, 'floating_ips'),
|
|
123
|
+
id=pulumi.get(__response__, 'id'),
|
|
124
|
+
with_selector=pulumi.get(__response__, 'with_selector')))
|
pulumi_hcloud/get_image.py
CHANGED
|
@@ -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__ = [
|
|
@@ -121,7 +126,7 @@ class GetImageResult:
|
|
|
121
126
|
|
|
122
127
|
@property
|
|
123
128
|
@pulumi.getter
|
|
124
|
-
def labels(self) -> Mapping[str,
|
|
129
|
+
def labels(self) -> Mapping[str, str]:
|
|
125
130
|
return pulumi.get(self, "labels")
|
|
126
131
|
|
|
127
132
|
@property
|
|
@@ -163,10 +168,8 @@ class GetImageResult:
|
|
|
163
168
|
|
|
164
169
|
@property
|
|
165
170
|
@pulumi.getter
|
|
171
|
+
@_utilities.deprecated("""Please use the with_selector property instead.""")
|
|
166
172
|
def selector(self) -> Optional[str]:
|
|
167
|
-
warnings.warn("""Please use the with_selector property instead.""", DeprecationWarning)
|
|
168
|
-
pulumi.log.warn("""selector is deprecated: Please use the with_selector property instead.""")
|
|
169
|
-
|
|
170
173
|
return pulumi.get(self, "selector")
|
|
171
174
|
|
|
172
175
|
@property
|
|
@@ -280,9 +283,6 @@ def get_image(id: Optional[int] = None,
|
|
|
280
283
|
with_architecture=pulumi.get(__ret__, 'with_architecture'),
|
|
281
284
|
with_selector=pulumi.get(__ret__, 'with_selector'),
|
|
282
285
|
with_statuses=pulumi.get(__ret__, 'with_statuses'))
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
@_utilities.lift_output_func(get_image)
|
|
286
286
|
def get_image_output(id: Optional[pulumi.Input[Optional[int]]] = None,
|
|
287
287
|
include_deprecated: Optional[pulumi.Input[Optional[bool]]] = None,
|
|
288
288
|
most_recent: Optional[pulumi.Input[Optional[bool]]] = None,
|
|
@@ -291,7 +291,7 @@ def get_image_output(id: Optional[pulumi.Input[Optional[int]]] = None,
|
|
|
291
291
|
with_architecture: Optional[pulumi.Input[Optional[str]]] = None,
|
|
292
292
|
with_selector: Optional[pulumi.Input[Optional[str]]] = None,
|
|
293
293
|
with_statuses: Optional[pulumi.Input[Optional[Sequence[str]]]] = None,
|
|
294
|
-
opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetImageResult]:
|
|
294
|
+
opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetImageResult]:
|
|
295
295
|
"""
|
|
296
296
|
## Example Usage
|
|
297
297
|
|
|
@@ -315,4 +315,32 @@ def get_image_output(id: Optional[pulumi.Input[Optional[int]]] = None,
|
|
|
315
315
|
:param str with_selector: [Label selector](https://docs.hetzner.cloud/#overview-label-selector)
|
|
316
316
|
:param Sequence[str] with_statuses: Select only images with the specified status, could contain `creating` or `available`.
|
|
317
317
|
"""
|
|
318
|
-
|
|
318
|
+
__args__ = dict()
|
|
319
|
+
__args__['id'] = id
|
|
320
|
+
__args__['includeDeprecated'] = include_deprecated
|
|
321
|
+
__args__['mostRecent'] = most_recent
|
|
322
|
+
__args__['name'] = name
|
|
323
|
+
__args__['selector'] = selector
|
|
324
|
+
__args__['withArchitecture'] = with_architecture
|
|
325
|
+
__args__['withSelector'] = with_selector
|
|
326
|
+
__args__['withStatuses'] = with_statuses
|
|
327
|
+
opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
328
|
+
__ret__ = pulumi.runtime.invoke_output('hcloud:index/getImage:getImage', __args__, opts=opts, typ=GetImageResult)
|
|
329
|
+
return __ret__.apply(lambda __response__: GetImageResult(
|
|
330
|
+
architecture=pulumi.get(__response__, 'architecture'),
|
|
331
|
+
created=pulumi.get(__response__, 'created'),
|
|
332
|
+
deprecated=pulumi.get(__response__, 'deprecated'),
|
|
333
|
+
description=pulumi.get(__response__, 'description'),
|
|
334
|
+
id=pulumi.get(__response__, 'id'),
|
|
335
|
+
include_deprecated=pulumi.get(__response__, 'include_deprecated'),
|
|
336
|
+
labels=pulumi.get(__response__, 'labels'),
|
|
337
|
+
most_recent=pulumi.get(__response__, 'most_recent'),
|
|
338
|
+
name=pulumi.get(__response__, 'name'),
|
|
339
|
+
os_flavor=pulumi.get(__response__, 'os_flavor'),
|
|
340
|
+
os_version=pulumi.get(__response__, 'os_version'),
|
|
341
|
+
rapid_deploy=pulumi.get(__response__, 'rapid_deploy'),
|
|
342
|
+
selector=pulumi.get(__response__, 'selector'),
|
|
343
|
+
type=pulumi.get(__response__, 'type'),
|
|
344
|
+
with_architecture=pulumi.get(__response__, 'with_architecture'),
|
|
345
|
+
with_selector=pulumi.get(__response__, 'with_selector'),
|
|
346
|
+
with_statuses=pulumi.get(__response__, 'with_statuses')))
|
pulumi_hcloud/get_images.py
CHANGED
|
@@ -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
|
|
|
@@ -145,15 +150,12 @@ def get_images(include_deprecated: Optional[bool] = None,
|
|
|
145
150
|
with_architectures=pulumi.get(__ret__, 'with_architectures'),
|
|
146
151
|
with_selector=pulumi.get(__ret__, 'with_selector'),
|
|
147
152
|
with_statuses=pulumi.get(__ret__, 'with_statuses'))
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
@_utilities.lift_output_func(get_images)
|
|
151
153
|
def get_images_output(include_deprecated: Optional[pulumi.Input[Optional[bool]]] = None,
|
|
152
154
|
most_recent: Optional[pulumi.Input[Optional[bool]]] = None,
|
|
153
155
|
with_architectures: Optional[pulumi.Input[Optional[Sequence[str]]]] = None,
|
|
154
156
|
with_selector: Optional[pulumi.Input[Optional[str]]] = None,
|
|
155
157
|
with_statuses: Optional[pulumi.Input[Optional[Sequence[str]]]] = None,
|
|
156
|
-
opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetImagesResult]:
|
|
158
|
+
opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetImagesResult]:
|
|
157
159
|
"""
|
|
158
160
|
Provides details about multiple Hetzner Cloud Images.
|
|
159
161
|
|
|
@@ -174,4 +176,19 @@ def get_images_output(include_deprecated: Optional[pulumi.Input[Optional[bool]]]
|
|
|
174
176
|
:param str with_selector: [Label selector](https://docs.hetzner.cloud/#overview-label-selector)
|
|
175
177
|
:param Sequence[str] with_statuses: List only images with the specified status, could contain `creating` or `available`.
|
|
176
178
|
"""
|
|
177
|
-
|
|
179
|
+
__args__ = dict()
|
|
180
|
+
__args__['includeDeprecated'] = include_deprecated
|
|
181
|
+
__args__['mostRecent'] = most_recent
|
|
182
|
+
__args__['withArchitectures'] = with_architectures
|
|
183
|
+
__args__['withSelector'] = with_selector
|
|
184
|
+
__args__['withStatuses'] = with_statuses
|
|
185
|
+
opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
186
|
+
__ret__ = pulumi.runtime.invoke_output('hcloud:index/getImages:getImages', __args__, opts=opts, typ=GetImagesResult)
|
|
187
|
+
return __ret__.apply(lambda __response__: GetImagesResult(
|
|
188
|
+
id=pulumi.get(__response__, 'id'),
|
|
189
|
+
images=pulumi.get(__response__, 'images'),
|
|
190
|
+
include_deprecated=pulumi.get(__response__, 'include_deprecated'),
|
|
191
|
+
most_recent=pulumi.get(__response__, 'most_recent'),
|
|
192
|
+
with_architectures=pulumi.get(__response__, 'with_architectures'),
|
|
193
|
+
with_selector=pulumi.get(__response__, 'with_selector'),
|
|
194
|
+
with_statuses=pulumi.get(__response__, 'with_statuses')))
|
|
@@ -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
|
|
|
@@ -111,7 +116,7 @@ class GetLoadBalancerResult:
|
|
|
111
116
|
|
|
112
117
|
@property
|
|
113
118
|
@pulumi.getter
|
|
114
|
-
def labels(self) -> Mapping[str,
|
|
119
|
+
def labels(self) -> Mapping[str, str]:
|
|
115
120
|
"""
|
|
116
121
|
(map) User-defined labels (key-value pairs) .
|
|
117
122
|
"""
|
|
@@ -129,7 +134,7 @@ class GetLoadBalancerResult:
|
|
|
129
134
|
@pulumi.getter
|
|
130
135
|
def location(self) -> str:
|
|
131
136
|
"""
|
|
132
|
-
(string) Name of the location the Load Balancer is in.
|
|
137
|
+
(string) Name of the location the Load Balancer is in. See the [Hetzner Docs](https://docs.hetzner.com/cloud/general/locations/#what-locations-are-there) for more details about locations.
|
|
133
138
|
"""
|
|
134
139
|
return pulumi.get(self, "location")
|
|
135
140
|
|
|
@@ -253,13 +258,10 @@ def get_load_balancer(id: Optional[int] = None,
|
|
|
253
258
|
services=pulumi.get(__ret__, 'services'),
|
|
254
259
|
targets=pulumi.get(__ret__, 'targets'),
|
|
255
260
|
with_selector=pulumi.get(__ret__, 'with_selector'))
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
@_utilities.lift_output_func(get_load_balancer)
|
|
259
261
|
def get_load_balancer_output(id: Optional[pulumi.Input[Optional[int]]] = None,
|
|
260
262
|
name: Optional[pulumi.Input[Optional[str]]] = None,
|
|
261
263
|
with_selector: Optional[pulumi.Input[Optional[str]]] = None,
|
|
262
|
-
opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetLoadBalancerResult]:
|
|
264
|
+
opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetLoadBalancerResult]:
|
|
263
265
|
"""
|
|
264
266
|
Provides details about a specific Hetzner Cloud Load Balancer.
|
|
265
267
|
|
|
@@ -279,4 +281,25 @@ def get_load_balancer_output(id: Optional[pulumi.Input[Optional[int]]] = None,
|
|
|
279
281
|
:param str name: Name of the Load Balancer.
|
|
280
282
|
:param str with_selector: Label Selector. For more information about possible values, visit the [Hetzner Cloud Documentation](https://docs.hetzner.cloud/#overview-label-selector).
|
|
281
283
|
"""
|
|
282
|
-
|
|
284
|
+
__args__ = dict()
|
|
285
|
+
__args__['id'] = id
|
|
286
|
+
__args__['name'] = name
|
|
287
|
+
__args__['withSelector'] = with_selector
|
|
288
|
+
opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
289
|
+
__ret__ = pulumi.runtime.invoke_output('hcloud:index/getLoadBalancer:getLoadBalancer', __args__, opts=opts, typ=GetLoadBalancerResult)
|
|
290
|
+
return __ret__.apply(lambda __response__: GetLoadBalancerResult(
|
|
291
|
+
algorithms=pulumi.get(__response__, 'algorithms'),
|
|
292
|
+
delete_protection=pulumi.get(__response__, 'delete_protection'),
|
|
293
|
+
id=pulumi.get(__response__, 'id'),
|
|
294
|
+
ipv4=pulumi.get(__response__, 'ipv4'),
|
|
295
|
+
ipv6=pulumi.get(__response__, 'ipv6'),
|
|
296
|
+
labels=pulumi.get(__response__, 'labels'),
|
|
297
|
+
load_balancer_type=pulumi.get(__response__, 'load_balancer_type'),
|
|
298
|
+
location=pulumi.get(__response__, 'location'),
|
|
299
|
+
name=pulumi.get(__response__, 'name'),
|
|
300
|
+
network_id=pulumi.get(__response__, 'network_id'),
|
|
301
|
+
network_ip=pulumi.get(__response__, 'network_ip'),
|
|
302
|
+
network_zone=pulumi.get(__response__, 'network_zone'),
|
|
303
|
+
services=pulumi.get(__response__, 'services'),
|
|
304
|
+
targets=pulumi.get(__response__, 'targets'),
|
|
305
|
+
with_selector=pulumi.get(__response__, 'with_selector')))
|
|
@@ -0,0 +1,202 @@
|
|
|
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
|
+
'GetLoadBalancerTypeResult',
|
|
19
|
+
'AwaitableGetLoadBalancerTypeResult',
|
|
20
|
+
'get_load_balancer_type',
|
|
21
|
+
'get_load_balancer_type_output',
|
|
22
|
+
]
|
|
23
|
+
|
|
24
|
+
@pulumi.output_type
|
|
25
|
+
class GetLoadBalancerTypeResult:
|
|
26
|
+
"""
|
|
27
|
+
A collection of values returned by getLoadBalancerType.
|
|
28
|
+
"""
|
|
29
|
+
def __init__(__self__, description=None, id=None, max_assigned_certificates=None, max_connections=None, max_services=None, max_targets=None, name=None):
|
|
30
|
+
if description and not isinstance(description, str):
|
|
31
|
+
raise TypeError("Expected argument 'description' to be a str")
|
|
32
|
+
pulumi.set(__self__, "description", description)
|
|
33
|
+
if id and not isinstance(id, int):
|
|
34
|
+
raise TypeError("Expected argument 'id' to be a int")
|
|
35
|
+
pulumi.set(__self__, "id", id)
|
|
36
|
+
if max_assigned_certificates and not isinstance(max_assigned_certificates, int):
|
|
37
|
+
raise TypeError("Expected argument 'max_assigned_certificates' to be a int")
|
|
38
|
+
pulumi.set(__self__, "max_assigned_certificates", max_assigned_certificates)
|
|
39
|
+
if max_connections and not isinstance(max_connections, int):
|
|
40
|
+
raise TypeError("Expected argument 'max_connections' to be a int")
|
|
41
|
+
pulumi.set(__self__, "max_connections", max_connections)
|
|
42
|
+
if max_services and not isinstance(max_services, int):
|
|
43
|
+
raise TypeError("Expected argument 'max_services' to be a int")
|
|
44
|
+
pulumi.set(__self__, "max_services", max_services)
|
|
45
|
+
if max_targets and not isinstance(max_targets, int):
|
|
46
|
+
raise TypeError("Expected argument 'max_targets' to be a int")
|
|
47
|
+
pulumi.set(__self__, "max_targets", max_targets)
|
|
48
|
+
if name and not isinstance(name, str):
|
|
49
|
+
raise TypeError("Expected argument 'name' to be a str")
|
|
50
|
+
pulumi.set(__self__, "name", name)
|
|
51
|
+
|
|
52
|
+
@property
|
|
53
|
+
@pulumi.getter
|
|
54
|
+
def description(self) -> str:
|
|
55
|
+
"""
|
|
56
|
+
Description of the Load Balancer Type.
|
|
57
|
+
"""
|
|
58
|
+
return pulumi.get(self, "description")
|
|
59
|
+
|
|
60
|
+
@property
|
|
61
|
+
@pulumi.getter
|
|
62
|
+
def id(self) -> int:
|
|
63
|
+
"""
|
|
64
|
+
ID of the Load Balancer Type.
|
|
65
|
+
"""
|
|
66
|
+
return pulumi.get(self, "id")
|
|
67
|
+
|
|
68
|
+
@property
|
|
69
|
+
@pulumi.getter(name="maxAssignedCertificates")
|
|
70
|
+
def max_assigned_certificates(self) -> int:
|
|
71
|
+
"""
|
|
72
|
+
Maximum number of certificates that can be assigned for the Load Balancer of this type.
|
|
73
|
+
"""
|
|
74
|
+
return pulumi.get(self, "max_assigned_certificates")
|
|
75
|
+
|
|
76
|
+
@property
|
|
77
|
+
@pulumi.getter(name="maxConnections")
|
|
78
|
+
def max_connections(self) -> int:
|
|
79
|
+
"""
|
|
80
|
+
Maximum number of simultaneous open connections for the Load Balancer of this type.
|
|
81
|
+
"""
|
|
82
|
+
return pulumi.get(self, "max_connections")
|
|
83
|
+
|
|
84
|
+
@property
|
|
85
|
+
@pulumi.getter(name="maxServices")
|
|
86
|
+
def max_services(self) -> int:
|
|
87
|
+
"""
|
|
88
|
+
Maximum number of services for the Load Balancer of this type.
|
|
89
|
+
"""
|
|
90
|
+
return pulumi.get(self, "max_services")
|
|
91
|
+
|
|
92
|
+
@property
|
|
93
|
+
@pulumi.getter(name="maxTargets")
|
|
94
|
+
def max_targets(self) -> int:
|
|
95
|
+
"""
|
|
96
|
+
Maximum number of targets for the Load Balancer of this type.
|
|
97
|
+
"""
|
|
98
|
+
return pulumi.get(self, "max_targets")
|
|
99
|
+
|
|
100
|
+
@property
|
|
101
|
+
@pulumi.getter
|
|
102
|
+
def name(self) -> str:
|
|
103
|
+
"""
|
|
104
|
+
Name of the Load Balancer Type.
|
|
105
|
+
"""
|
|
106
|
+
return pulumi.get(self, "name")
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
class AwaitableGetLoadBalancerTypeResult(GetLoadBalancerTypeResult):
|
|
110
|
+
# pylint: disable=using-constant-test
|
|
111
|
+
def __await__(self):
|
|
112
|
+
if False:
|
|
113
|
+
yield self
|
|
114
|
+
return GetLoadBalancerTypeResult(
|
|
115
|
+
description=self.description,
|
|
116
|
+
id=self.id,
|
|
117
|
+
max_assigned_certificates=self.max_assigned_certificates,
|
|
118
|
+
max_connections=self.max_connections,
|
|
119
|
+
max_services=self.max_services,
|
|
120
|
+
max_targets=self.max_targets,
|
|
121
|
+
name=self.name)
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
def get_load_balancer_type(id: Optional[int] = None,
|
|
125
|
+
name: Optional[str] = None,
|
|
126
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetLoadBalancerTypeResult:
|
|
127
|
+
"""
|
|
128
|
+
Provides details about a specific Hetzner Cloud Load Balancer Type.
|
|
129
|
+
|
|
130
|
+
Use this resource to get detailed information about a specific Load Balancer Type.
|
|
131
|
+
|
|
132
|
+
## Example Usage
|
|
133
|
+
|
|
134
|
+
```python
|
|
135
|
+
import pulumi
|
|
136
|
+
import pulumi_hcloud as hcloud
|
|
137
|
+
|
|
138
|
+
by_id = hcloud.get_load_balancer_type(id=1)
|
|
139
|
+
by_name = hcloud.get_load_balancer_type(name="lb11")
|
|
140
|
+
main = hcloud.LoadBalancer("main",
|
|
141
|
+
name="my-load-balancer",
|
|
142
|
+
load_balancer_type=name,
|
|
143
|
+
location="fsn1")
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
:param int id: ID of the Load Balancer Type.
|
|
148
|
+
:param str name: Name of the Load Balancer Type.
|
|
149
|
+
"""
|
|
150
|
+
__args__ = dict()
|
|
151
|
+
__args__['id'] = id
|
|
152
|
+
__args__['name'] = name
|
|
153
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
154
|
+
__ret__ = pulumi.runtime.invoke('hcloud:index/getLoadBalancerType:getLoadBalancerType', __args__, opts=opts, typ=GetLoadBalancerTypeResult).value
|
|
155
|
+
|
|
156
|
+
return AwaitableGetLoadBalancerTypeResult(
|
|
157
|
+
description=pulumi.get(__ret__, 'description'),
|
|
158
|
+
id=pulumi.get(__ret__, 'id'),
|
|
159
|
+
max_assigned_certificates=pulumi.get(__ret__, 'max_assigned_certificates'),
|
|
160
|
+
max_connections=pulumi.get(__ret__, 'max_connections'),
|
|
161
|
+
max_services=pulumi.get(__ret__, 'max_services'),
|
|
162
|
+
max_targets=pulumi.get(__ret__, 'max_targets'),
|
|
163
|
+
name=pulumi.get(__ret__, 'name'))
|
|
164
|
+
def get_load_balancer_type_output(id: Optional[pulumi.Input[Optional[int]]] = None,
|
|
165
|
+
name: Optional[pulumi.Input[Optional[str]]] = None,
|
|
166
|
+
opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetLoadBalancerTypeResult]:
|
|
167
|
+
"""
|
|
168
|
+
Provides details about a specific Hetzner Cloud Load Balancer Type.
|
|
169
|
+
|
|
170
|
+
Use this resource to get detailed information about a specific Load Balancer Type.
|
|
171
|
+
|
|
172
|
+
## Example Usage
|
|
173
|
+
|
|
174
|
+
```python
|
|
175
|
+
import pulumi
|
|
176
|
+
import pulumi_hcloud as hcloud
|
|
177
|
+
|
|
178
|
+
by_id = hcloud.get_load_balancer_type(id=1)
|
|
179
|
+
by_name = hcloud.get_load_balancer_type(name="lb11")
|
|
180
|
+
main = hcloud.LoadBalancer("main",
|
|
181
|
+
name="my-load-balancer",
|
|
182
|
+
load_balancer_type=name,
|
|
183
|
+
location="fsn1")
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
:param int id: ID of the Load Balancer Type.
|
|
188
|
+
:param str name: Name of the Load Balancer Type.
|
|
189
|
+
"""
|
|
190
|
+
__args__ = dict()
|
|
191
|
+
__args__['id'] = id
|
|
192
|
+
__args__['name'] = name
|
|
193
|
+
opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
|
194
|
+
__ret__ = pulumi.runtime.invoke_output('hcloud:index/getLoadBalancerType:getLoadBalancerType', __args__, opts=opts, typ=GetLoadBalancerTypeResult)
|
|
195
|
+
return __ret__.apply(lambda __response__: GetLoadBalancerTypeResult(
|
|
196
|
+
description=pulumi.get(__response__, 'description'),
|
|
197
|
+
id=pulumi.get(__response__, 'id'),
|
|
198
|
+
max_assigned_certificates=pulumi.get(__response__, 'max_assigned_certificates'),
|
|
199
|
+
max_connections=pulumi.get(__response__, 'max_connections'),
|
|
200
|
+
max_services=pulumi.get(__response__, 'max_services'),
|
|
201
|
+
max_targets=pulumi.get(__response__, 'max_targets'),
|
|
202
|
+
name=pulumi.get(__response__, 'name')))
|