pulumi-hcloud 1.20.4__py3-none-any.whl → 1.21.0__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.
Files changed (66) hide show
  1. pulumi_hcloud/__init__.py +2 -0
  2. pulumi_hcloud/_inputs.py +234 -0
  3. pulumi_hcloud/_utilities.py +1 -1
  4. pulumi_hcloud/certificate.py +5 -0
  5. pulumi_hcloud/config/__init__.pyi +5 -0
  6. pulumi_hcloud/config/vars.py +5 -0
  7. pulumi_hcloud/firewall.py +5 -0
  8. pulumi_hcloud/firewall_attachment.py +7 -2
  9. pulumi_hcloud/floating_ip.py +5 -0
  10. pulumi_hcloud/floating_ip_assignment.py +5 -0
  11. pulumi_hcloud/get_certificate.py +23 -4
  12. pulumi_hcloud/get_certificates.py +13 -4
  13. pulumi_hcloud/get_datacenter.py +18 -5
  14. pulumi_hcloud/get_datacenters.py +18 -4
  15. pulumi_hcloud/get_firewall.py +26 -7
  16. pulumi_hcloud/get_firewalls.py +15 -4
  17. pulumi_hcloud/get_floating_ip.py +30 -4
  18. pulumi_hcloud/get_floating_ips.py +13 -4
  19. pulumi_hcloud/get_image.py +34 -4
  20. pulumi_hcloud/get_images.py +21 -4
  21. pulumi_hcloud/get_load_balancer.py +28 -5
  22. pulumi_hcloud/get_load_balancer_type.py +200 -0
  23. pulumi_hcloud/get_load_balancer_types.py +100 -0
  24. pulumi_hcloud/get_load_balancers.py +13 -4
  25. pulumi_hcloud/get_location.py +19 -4
  26. pulumi_hcloud/get_locations.py +18 -4
  27. pulumi_hcloud/get_network.py +23 -4
  28. pulumi_hcloud/get_networks.py +13 -4
  29. pulumi_hcloud/get_placement_group.py +25 -7
  30. pulumi_hcloud/get_placement_groups.py +15 -4
  31. pulumi_hcloud/get_primary_ip.py +28 -6
  32. pulumi_hcloud/get_primary_ips.py +13 -4
  33. pulumi_hcloud/get_server.py +40 -6
  34. pulumi_hcloud/get_server_type.py +35 -13
  35. pulumi_hcloud/get_server_types.py +32 -12
  36. pulumi_hcloud/get_servers.py +15 -4
  37. pulumi_hcloud/get_ssh_key.py +23 -4
  38. pulumi_hcloud/get_ssh_keys.py +14 -4
  39. pulumi_hcloud/get_volume.py +30 -7
  40. pulumi_hcloud/get_volumes.py +17 -6
  41. pulumi_hcloud/load_balancer.py +12 -7
  42. pulumi_hcloud/load_balancer_network.py +12 -7
  43. pulumi_hcloud/load_balancer_service.py +5 -0
  44. pulumi_hcloud/load_balancer_target.py +5 -0
  45. pulumi_hcloud/managed_certificate.py +5 -0
  46. pulumi_hcloud/network.py +5 -0
  47. pulumi_hcloud/network_route.py +5 -0
  48. pulumi_hcloud/network_subnet.py +5 -0
  49. pulumi_hcloud/outputs.py +68 -8
  50. pulumi_hcloud/placement_group.py +5 -0
  51. pulumi_hcloud/primary_ip.py +40 -21
  52. pulumi_hcloud/provider.py +5 -0
  53. pulumi_hcloud/pulumi-plugin.json +1 -1
  54. pulumi_hcloud/rdns.py +5 -0
  55. pulumi_hcloud/server.py +25 -14
  56. pulumi_hcloud/server_network.py +12 -7
  57. pulumi_hcloud/snapshot.py +5 -0
  58. pulumi_hcloud/ssh_key.py +5 -0
  59. pulumi_hcloud/uploaded_certificate.py +5 -0
  60. pulumi_hcloud/volume.py +19 -14
  61. pulumi_hcloud/volume_attachment.py +5 -0
  62. {pulumi_hcloud-1.20.4.dist-info → pulumi_hcloud-1.21.0.dist-info}/METADATA +3 -2
  63. pulumi_hcloud-1.21.0.dist-info/RECORD +67 -0
  64. {pulumi_hcloud-1.20.4.dist-info → pulumi_hcloud-1.21.0.dist-info}/WHEEL +1 -1
  65. pulumi_hcloud-1.20.4.dist-info/RECORD +0 -65
  66. {pulumi_hcloud-1.20.4.dist-info → pulumi_hcloud-1.21.0.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__ = [
@@ -25,8 +30,8 @@ class GetServerTypeResult:
25
30
  if architecture and not isinstance(architecture, str):
26
31
  raise TypeError("Expected argument 'architecture' to be a str")
27
32
  pulumi.set(__self__, "architecture", architecture)
28
- if cores and not isinstance(cores, int):
29
- raise TypeError("Expected argument 'cores' to be a int")
33
+ if cores and not isinstance(cores, float):
34
+ raise TypeError("Expected argument 'cores' to be a float")
30
35
  pulumi.set(__self__, "cores", cores)
31
36
  if cpu_type and not isinstance(cpu_type, str):
32
37
  raise TypeError("Expected argument 'cpu_type' to be a str")
@@ -37,8 +42,8 @@ class GetServerTypeResult:
37
42
  if description and not isinstance(description, str):
38
43
  raise TypeError("Expected argument 'description' to be a str")
39
44
  pulumi.set(__self__, "description", description)
40
- if disk and not isinstance(disk, int):
41
- raise TypeError("Expected argument 'disk' to be a int")
45
+ if disk and not isinstance(disk, float):
46
+ raise TypeError("Expected argument 'disk' to be a float")
42
47
  pulumi.set(__self__, "disk", disk)
43
48
  if id and not isinstance(id, int):
44
49
  raise TypeError("Expected argument 'id' to be a int")
@@ -49,8 +54,8 @@ class GetServerTypeResult:
49
54
  if is_deprecated and not isinstance(is_deprecated, bool):
50
55
  raise TypeError("Expected argument 'is_deprecated' to be a bool")
51
56
  pulumi.set(__self__, "is_deprecated", is_deprecated)
52
- if memory and not isinstance(memory, int):
53
- raise TypeError("Expected argument 'memory' to be a int")
57
+ if memory and not isinstance(memory, float):
58
+ raise TypeError("Expected argument 'memory' to be a float")
54
59
  pulumi.set(__self__, "memory", memory)
55
60
  if name and not isinstance(name, str):
56
61
  raise TypeError("Expected argument 'name' to be a str")
@@ -72,7 +77,7 @@ class GetServerTypeResult:
72
77
 
73
78
  @property
74
79
  @pulumi.getter
75
- def cores(self) -> int:
80
+ def cores(self) -> float:
76
81
  """
77
82
  (int) Number of cpu cores a Server of this type will have.
78
83
  """
@@ -101,7 +106,7 @@ class GetServerTypeResult:
101
106
 
102
107
  @property
103
108
  @pulumi.getter
104
- def disk(self) -> int:
109
+ def disk(self) -> float:
105
110
  """
106
111
  (int) Disk size a Server of this type will have in GB.
107
112
  """
@@ -134,7 +139,7 @@ class GetServerTypeResult:
134
139
 
135
140
  @property
136
141
  @pulumi.getter
137
- def memory(self) -> int:
142
+ def memory(self) -> float:
138
143
  """
139
144
  (int) Memory a Server of this type will have in GB.
140
145
  """
@@ -230,9 +235,6 @@ def get_server_type(deprecation_announced: Optional[str] = None,
230
235
  name=pulumi.get(__ret__, 'name'),
231
236
  storage_type=pulumi.get(__ret__, 'storage_type'),
232
237
  unavailable_after=pulumi.get(__ret__, 'unavailable_after'))
233
-
234
-
235
- @_utilities.lift_output_func(get_server_type)
236
238
  def get_server_type_output(deprecation_announced: Optional[pulumi.Input[Optional[str]]] = None,
237
239
  id: Optional[pulumi.Input[Optional[int]]] = None,
238
240
  name: Optional[pulumi.Input[Optional[str]]] = None,
@@ -258,4 +260,24 @@ def get_server_type_output(deprecation_announced: Optional[pulumi.Input[Optional
258
260
  :param str name: Name of the server_type.
259
261
  :param str unavailable_after: (Optional, string) Date when the server type will not be available for new servers. Only set when the server type is deprecated.
260
262
  """
261
- ...
263
+ __args__ = dict()
264
+ __args__['deprecationAnnounced'] = deprecation_announced
265
+ __args__['id'] = id
266
+ __args__['name'] = name
267
+ __args__['unavailableAfter'] = unavailable_after
268
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
269
+ __ret__ = pulumi.runtime.invoke_output('hcloud:index/getServerType:getServerType', __args__, opts=opts, typ=GetServerTypeResult)
270
+ return __ret__.apply(lambda __response__: GetServerTypeResult(
271
+ architecture=pulumi.get(__response__, 'architecture'),
272
+ cores=pulumi.get(__response__, 'cores'),
273
+ cpu_type=pulumi.get(__response__, 'cpu_type'),
274
+ deprecation_announced=pulumi.get(__response__, 'deprecation_announced'),
275
+ description=pulumi.get(__response__, 'description'),
276
+ disk=pulumi.get(__response__, 'disk'),
277
+ id=pulumi.get(__response__, 'id'),
278
+ included_traffic=pulumi.get(__response__, 'included_traffic'),
279
+ is_deprecated=pulumi.get(__response__, 'is_deprecated'),
280
+ memory=pulumi.get(__response__, 'memory'),
281
+ name=pulumi.get(__response__, 'name'),
282
+ storage_type=pulumi.get(__response__, 'storage_type'),
283
+ unavailable_after=pulumi.get(__response__, 'unavailable_after')))
@@ -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
 
@@ -42,21 +47,18 @@ class GetServerTypesResult:
42
47
  @property
43
48
  @pulumi.getter
44
49
  @_utilities.deprecated("""Use server_types list instead""")
45
- def descriptions(self) -> Sequence[str]:
50
+ def descriptions(self) -> Optional[Sequence[str]]:
46
51
  return pulumi.get(self, "descriptions")
47
52
 
48
53
  @property
49
54
  @pulumi.getter
50
- def id(self) -> str:
51
- """
52
- The provider-assigned unique ID for this managed resource.
53
- """
55
+ def id(self) -> Optional[str]:
54
56
  return pulumi.get(self, "id")
55
57
 
56
58
  @property
57
59
  @pulumi.getter
58
60
  @_utilities.deprecated("""Use server_types list instead""")
59
- def names(self) -> Sequence[str]:
61
+ def names(self) -> Optional[Sequence[str]]:
60
62
  return pulumi.get(self, "names")
61
63
 
62
64
  @property
@@ -87,12 +89,18 @@ class AwaitableGetServerTypesResult(GetServerTypesResult):
87
89
  server_types=self.server_types)
88
90
 
89
91
 
90
- def get_server_types(server_type_ids: Optional[Sequence[str]] = None,
92
+ def get_server_types(descriptions: Optional[Sequence[str]] = None,
93
+ id: Optional[str] = None,
94
+ names: Optional[Sequence[str]] = None,
95
+ server_type_ids: Optional[Sequence[str]] = None,
91
96
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetServerTypesResult:
92
97
  """
93
98
  Provides a list of available Hetzner Cloud Server Types.
94
99
  """
95
100
  __args__ = dict()
101
+ __args__['descriptions'] = descriptions
102
+ __args__['id'] = id
103
+ __args__['names'] = names
96
104
  __args__['serverTypeIds'] = server_type_ids
97
105
  opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
98
106
  __ret__ = pulumi.runtime.invoke('hcloud:index/getServerTypes:getServerTypes', __args__, opts=opts, typ=GetServerTypesResult).value
@@ -103,12 +111,24 @@ def get_server_types(server_type_ids: Optional[Sequence[str]] = None,
103
111
  names=pulumi.get(__ret__, 'names'),
104
112
  server_type_ids=pulumi.get(__ret__, 'server_type_ids'),
105
113
  server_types=pulumi.get(__ret__, 'server_types'))
106
-
107
-
108
- @_utilities.lift_output_func(get_server_types)
109
- def get_server_types_output(server_type_ids: Optional[pulumi.Input[Optional[Sequence[str]]]] = None,
114
+ def get_server_types_output(descriptions: Optional[pulumi.Input[Optional[Sequence[str]]]] = None,
115
+ id: Optional[pulumi.Input[Optional[str]]] = None,
116
+ names: Optional[pulumi.Input[Optional[Sequence[str]]]] = None,
117
+ server_type_ids: Optional[pulumi.Input[Optional[Sequence[str]]]] = None,
110
118
  opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetServerTypesResult]:
111
119
  """
112
120
  Provides a list of available Hetzner Cloud Server Types.
113
121
  """
114
- ...
122
+ __args__ = dict()
123
+ __args__['descriptions'] = descriptions
124
+ __args__['id'] = id
125
+ __args__['names'] = names
126
+ __args__['serverTypeIds'] = server_type_ids
127
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
128
+ __ret__ = pulumi.runtime.invoke_output('hcloud:index/getServerTypes:getServerTypes', __args__, opts=opts, typ=GetServerTypesResult)
129
+ return __ret__.apply(lambda __response__: GetServerTypesResult(
130
+ descriptions=pulumi.get(__response__, 'descriptions'),
131
+ id=pulumi.get(__response__, 'id'),
132
+ names=pulumi.get(__response__, 'names'),
133
+ server_type_ids=pulumi.get(__response__, 'server_type_ids'),
134
+ server_types=pulumi.get(__response__, 'server_types')))
@@ -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
 
@@ -103,9 +108,6 @@ def get_servers(with_selector: Optional[str] = None,
103
108
  servers=pulumi.get(__ret__, 'servers'),
104
109
  with_selector=pulumi.get(__ret__, 'with_selector'),
105
110
  with_statuses=pulumi.get(__ret__, 'with_statuses'))
106
-
107
-
108
- @_utilities.lift_output_func(get_servers)
109
111
  def get_servers_output(with_selector: Optional[pulumi.Input[Optional[str]]] = None,
110
112
  with_statuses: Optional[pulumi.Input[Optional[Sequence[str]]]] = None,
111
113
  opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetServersResult]:
@@ -123,4 +125,13 @@ def get_servers_output(with_selector: Optional[pulumi.Input[Optional[str]]] = No
123
125
  :param str with_selector: Label Selector. For more information about possible values, visit the [Hetzner Cloud Documentation](https://docs.hetzner.cloud/#overview-label-selector).
124
126
  :param Sequence[str] with_statuses: List only servers with the specified status, could contain `initializing`, `starting`, `running`, `stopping`, `off`, `deleting`, `rebuilding`, `migrating`, `unknown`.
125
127
  """
126
- ...
128
+ __args__ = dict()
129
+ __args__['withSelector'] = with_selector
130
+ __args__['withStatuses'] = with_statuses
131
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
132
+ __ret__ = pulumi.runtime.invoke_output('hcloud:index/getServers:getServers', __args__, opts=opts, typ=GetServersResult)
133
+ return __ret__.apply(lambda __response__: GetServersResult(
134
+ id=pulumi.get(__response__, 'id'),
135
+ servers=pulumi.get(__response__, 'servers'),
136
+ with_selector=pulumi.get(__response__, 'with_selector'),
137
+ 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
 
12
17
  __all__ = [
@@ -160,9 +165,6 @@ def get_ssh_key(fingerprint: Optional[str] = None,
160
165
  public_key=pulumi.get(__ret__, 'public_key'),
161
166
  selector=pulumi.get(__ret__, 'selector'),
162
167
  with_selector=pulumi.get(__ret__, 'with_selector'))
163
-
164
-
165
- @_utilities.lift_output_func(get_ssh_key)
166
168
  def get_ssh_key_output(fingerprint: Optional[pulumi.Input[Optional[str]]] = None,
167
169
  id: Optional[pulumi.Input[Optional[int]]] = None,
168
170
  labels: Optional[pulumi.Input[Optional[Mapping[str, str]]]] = None,
@@ -196,4 +198,21 @@ def get_ssh_key_output(fingerprint: Optional[pulumi.Input[Optional[str]]] = None
196
198
  :param str public_key: (string) Public Key of the SSH Key.
197
199
  :param str with_selector: [Label selector](https://docs.hetzner.cloud/#overview-label-selector)
198
200
  """
199
- ...
201
+ __args__ = dict()
202
+ __args__['fingerprint'] = fingerprint
203
+ __args__['id'] = id
204
+ __args__['labels'] = labels
205
+ __args__['name'] = name
206
+ __args__['publicKey'] = public_key
207
+ __args__['selector'] = selector
208
+ __args__['withSelector'] = with_selector
209
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
210
+ __ret__ = pulumi.runtime.invoke_output('hcloud:index/getSshKey:getSshKey', __args__, opts=opts, typ=GetSshKeyResult)
211
+ return __ret__.apply(lambda __response__: GetSshKeyResult(
212
+ fingerprint=pulumi.get(__response__, 'fingerprint'),
213
+ id=pulumi.get(__response__, 'id'),
214
+ labels=pulumi.get(__response__, 'labels'),
215
+ name=pulumi.get(__response__, 'name'),
216
+ public_key=pulumi.get(__response__, 'public_key'),
217
+ selector=pulumi.get(__response__, 'selector'),
218
+ 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
 
@@ -91,9 +96,6 @@ def get_ssh_keys(id: Optional[str] = None,
91
96
  id=pulumi.get(__ret__, 'id'),
92
97
  ssh_keys=pulumi.get(__ret__, 'ssh_keys'),
93
98
  with_selector=pulumi.get(__ret__, 'with_selector'))
94
-
95
-
96
- @_utilities.lift_output_func(get_ssh_keys)
97
99
  def get_ssh_keys_output(id: Optional[pulumi.Input[Optional[str]]] = None,
98
100
  with_selector: Optional[pulumi.Input[Optional[str]]] = None,
99
101
  opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSshKeysResult]:
@@ -112,4 +114,12 @@ def get_ssh_keys_output(id: Optional[pulumi.Input[Optional[str]]] = None,
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__['id'] = id
119
+ __args__['withSelector'] = with_selector
120
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
121
+ __ret__ = pulumi.runtime.invoke_output('hcloud:index/getSshKeys:getSshKeys', __args__, opts=opts, typ=GetSshKeysResult)
122
+ return __ret__.apply(lambda __response__: GetSshKeysResult(
123
+ id=pulumi.get(__response__, 'id'),
124
+ ssh_keys=pulumi.get(__response__, 'ssh_keys'),
125
+ 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
 
12
17
  __all__ = [
@@ -92,7 +97,7 @@ class GetVolumeResult:
92
97
  @pulumi.getter
93
98
  def location(self) -> Optional[str]:
94
99
  """
95
- (string) The location name.
100
+ (string) The location name. See the [Hetzner Docs](https://docs.hetzner.com/cloud/general/locations/#what-locations-are-there) for more details about locations.
96
101
  """
97
102
  return pulumi.get(self, "location")
98
103
 
@@ -178,7 +183,7 @@ def get_volume(id: Optional[int] = None,
178
183
 
179
184
 
180
185
  :param int id: ID of the volume.
181
- :param str location: (string) The location name.
186
+ :param str location: (string) The location name. See the [Hetzner Docs](https://docs.hetzner.com/cloud/general/locations/#what-locations-are-there) for more details about locations.
182
187
  :param str name: Name of the volume.
183
188
  :param int server_id: (Optional, int) Server ID the volume is attached to
184
189
  :param str with_selector: Label Selector. For more information about possible values, visit the [Hetzner Cloud Documentation](https://docs.hetzner.cloud/#overview-label-selector).
@@ -207,9 +212,6 @@ def get_volume(id: Optional[int] = None,
207
212
  size=pulumi.get(__ret__, 'size'),
208
213
  with_selector=pulumi.get(__ret__, 'with_selector'),
209
214
  with_statuses=pulumi.get(__ret__, 'with_statuses'))
210
-
211
-
212
- @_utilities.lift_output_func(get_volume)
213
215
  def get_volume_output(id: Optional[pulumi.Input[Optional[int]]] = None,
214
216
  location: Optional[pulumi.Input[Optional[str]]] = None,
215
217
  name: Optional[pulumi.Input[Optional[str]]] = None,
@@ -232,10 +234,31 @@ def get_volume_output(id: Optional[pulumi.Input[Optional[int]]] = None,
232
234
 
233
235
 
234
236
  :param int id: ID of the volume.
235
- :param str location: (string) The location name.
237
+ :param str location: (string) The location name. See the [Hetzner Docs](https://docs.hetzner.com/cloud/general/locations/#what-locations-are-there) for more details about locations.
236
238
  :param str name: Name of the volume.
237
239
  :param int server_id: (Optional, int) Server ID the volume is attached to
238
240
  :param str with_selector: Label Selector. For more information about possible values, visit the [Hetzner Cloud Documentation](https://docs.hetzner.cloud/#overview-label-selector).
239
241
  :param Sequence[str] with_statuses: List only volumes with the specified status, could contain `creating` or `available`.
240
242
  """
241
- ...
243
+ __args__ = dict()
244
+ __args__['id'] = id
245
+ __args__['location'] = location
246
+ __args__['name'] = name
247
+ __args__['selector'] = selector
248
+ __args__['serverId'] = server_id
249
+ __args__['withSelector'] = with_selector
250
+ __args__['withStatuses'] = with_statuses
251
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
252
+ __ret__ = pulumi.runtime.invoke_output('hcloud:index/getVolume:getVolume', __args__, opts=opts, typ=GetVolumeResult)
253
+ return __ret__.apply(lambda __response__: GetVolumeResult(
254
+ delete_protection=pulumi.get(__response__, 'delete_protection'),
255
+ id=pulumi.get(__response__, 'id'),
256
+ labels=pulumi.get(__response__, 'labels'),
257
+ linux_device=pulumi.get(__response__, 'linux_device'),
258
+ location=pulumi.get(__response__, 'location'),
259
+ name=pulumi.get(__response__, 'name'),
260
+ selector=pulumi.get(__response__, 'selector'),
261
+ server_id=pulumi.get(__response__, 'server_id'),
262
+ size=pulumi.get(__response__, 'size'),
263
+ with_selector=pulumi.get(__response__, 'with_selector'),
264
+ 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
 
@@ -79,7 +84,7 @@ def get_volumes(with_selector: Optional[str] = None,
79
84
  with_statuses: Optional[Sequence[str]] = None,
80
85
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetVolumesResult:
81
86
  """
82
- Provides details about multiple Hetzner Cloud volumes.
87
+ Provides details about multiple Hetzner Cloud Volumes.
83
88
 
84
89
  ## Example Usage
85
90
 
@@ -106,14 +111,11 @@ def get_volumes(with_selector: Optional[str] = None,
106
111
  volumes=pulumi.get(__ret__, 'volumes'),
107
112
  with_selector=pulumi.get(__ret__, 'with_selector'),
108
113
  with_statuses=pulumi.get(__ret__, 'with_statuses'))
109
-
110
-
111
- @_utilities.lift_output_func(get_volumes)
112
114
  def get_volumes_output(with_selector: Optional[pulumi.Input[Optional[str]]] = None,
113
115
  with_statuses: Optional[pulumi.Input[Optional[Sequence[str]]]] = None,
114
116
  opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetVolumesResult]:
115
117
  """
116
- Provides details about multiple Hetzner Cloud volumes.
118
+ Provides details about multiple Hetzner Cloud Volumes.
117
119
 
118
120
  ## Example Usage
119
121
 
@@ -129,4 +131,13 @@ def get_volumes_output(with_selector: Optional[pulumi.Input[Optional[str]]] = No
129
131
  :param str with_selector: [Label selector](https://docs.hetzner.cloud/#overview-label-selector)
130
132
  :param Sequence[str] with_statuses: List only volumes with the specified status, could contain `creating` or `available`.
131
133
  """
132
- ...
134
+ __args__ = dict()
135
+ __args__['withSelector'] = with_selector
136
+ __args__['withStatuses'] = with_statuses
137
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
138
+ __ret__ = pulumi.runtime.invoke_output('hcloud:index/getVolumes:getVolumes', __args__, opts=opts, typ=GetVolumesResult)
139
+ return __ret__.apply(lambda __response__: GetVolumesResult(
140
+ id=pulumi.get(__response__, 'id'),
141
+ volumes=pulumi.get(__response__, 'volumes'),
142
+ with_selector=pulumi.get(__response__, 'with_selector'),
143
+ 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
  from ._inputs import *
@@ -30,7 +35,7 @@ class LoadBalancerArgs:
30
35
  :param pulumi.Input['LoadBalancerAlgorithmArgs'] algorithm: Configuration of the algorithm the Load Balancer use.
31
36
  :param pulumi.Input[bool] delete_protection: Enable or disable delete protection. See "Delete Protection" in the Provider Docs for details.
32
37
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: User-defined labels (key-value pairs) should be created with.
33
- :param pulumi.Input[str] location: The location name of the Load Balancer. Require when no network_zone is set.
38
+ :param pulumi.Input[str] location: The location name of the Load Balancer. Require when no network_zone is set. See the [Hetzner Docs](https://docs.hetzner.com/cloud/general/locations/#what-locations-are-there) for more details about locations.
34
39
  :param pulumi.Input[str] name: Name of the Load Balancer.
35
40
  :param pulumi.Input[str] network_zone: The Network Zone of the Load Balancer. Require when no location is set.
36
41
  """
@@ -105,7 +110,7 @@ class LoadBalancerArgs:
105
110
  @pulumi.getter
106
111
  def location(self) -> Optional[pulumi.Input[str]]:
107
112
  """
108
- The location name of the Load Balancer. Require when no network_zone is set.
113
+ The location name of the Load Balancer. Require when no network_zone is set. See the [Hetzner Docs](https://docs.hetzner.com/cloud/general/locations/#what-locations-are-there) for more details about locations.
109
114
  """
110
115
  return pulumi.get(self, "location")
111
116
 
@@ -171,7 +176,7 @@ class _LoadBalancerState:
171
176
  :param pulumi.Input[str] ipv6: (string) IPv6 Address of the Load Balancer.
172
177
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: User-defined labels (key-value pairs) should be created with.
173
178
  :param pulumi.Input[str] load_balancer_type: Type of the Load Balancer.
174
- :param pulumi.Input[str] location: The location name of the Load Balancer. Require when no network_zone is set.
179
+ :param pulumi.Input[str] location: The location name of the Load Balancer. Require when no network_zone is set. See the [Hetzner Docs](https://docs.hetzner.com/cloud/general/locations/#what-locations-are-there) for more details about locations.
175
180
  :param pulumi.Input[str] name: Name of the Load Balancer.
176
181
  :param pulumi.Input[int] network_id: (int) ID of the first private network that this Load Balancer is connected to.
177
182
  :param pulumi.Input[str] network_ip: (string) IP of the Load Balancer in the first private network that it is connected to.
@@ -281,7 +286,7 @@ class _LoadBalancerState:
281
286
  @pulumi.getter
282
287
  def location(self) -> Optional[pulumi.Input[str]]:
283
288
  """
284
- The location name of the Load Balancer. Require when no network_zone is set.
289
+ The location name of the Load Balancer. Require when no network_zone is set. See the [Hetzner Docs](https://docs.hetzner.com/cloud/general/locations/#what-locations-are-there) for more details about locations.
285
290
  """
286
291
  return pulumi.get(self, "location")
287
292
 
@@ -399,7 +404,7 @@ class LoadBalancer(pulumi.CustomResource):
399
404
  :param pulumi.Input[bool] delete_protection: Enable or disable delete protection. See "Delete Protection" in the Provider Docs for details.
400
405
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: User-defined labels (key-value pairs) should be created with.
401
406
  :param pulumi.Input[str] load_balancer_type: Type of the Load Balancer.
402
- :param pulumi.Input[str] location: The location name of the Load Balancer. Require when no network_zone is set.
407
+ :param pulumi.Input[str] location: The location name of the Load Balancer. Require when no network_zone is set. See the [Hetzner Docs](https://docs.hetzner.com/cloud/general/locations/#what-locations-are-there) for more details about locations.
403
408
  :param pulumi.Input[str] name: Name of the Load Balancer.
404
409
  :param pulumi.Input[str] network_zone: The Network Zone of the Load Balancer. Require when no location is set.
405
410
  """
@@ -521,7 +526,7 @@ class LoadBalancer(pulumi.CustomResource):
521
526
  :param pulumi.Input[str] ipv6: (string) IPv6 Address of the Load Balancer.
522
527
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: User-defined labels (key-value pairs) should be created with.
523
528
  :param pulumi.Input[str] load_balancer_type: Type of the Load Balancer.
524
- :param pulumi.Input[str] location: The location name of the Load Balancer. Require when no network_zone is set.
529
+ :param pulumi.Input[str] location: The location name of the Load Balancer. Require when no network_zone is set. See the [Hetzner Docs](https://docs.hetzner.com/cloud/general/locations/#what-locations-are-there) for more details about locations.
525
530
  :param pulumi.Input[str] name: Name of the Load Balancer.
526
531
  :param pulumi.Input[int] network_id: (int) ID of the first private network that this Load Balancer is connected to.
527
532
  :param pulumi.Input[str] network_ip: (string) IP of the Load Balancer in the first private network that it is connected to.
@@ -597,7 +602,7 @@ class LoadBalancer(pulumi.CustomResource):
597
602
  @pulumi.getter
598
603
  def location(self) -> pulumi.Output[str]:
599
604
  """
600
- The location name of the Load Balancer. Require when no network_zone is set.
605
+ The location name of the Load Balancer. Require when no network_zone is set. See the [Hetzner Docs](https://docs.hetzner.com/cloud/general/locations/#what-locations-are-there) for more details about locations.
601
606
  """
602
607
  return pulumi.get(self, "location")
603
608
 
@@ -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__ = ['LoadBalancerNetworkArgs', 'LoadBalancerNetwork']
@@ -37,7 +42,7 @@ class LoadBalancerNetworkArgs:
37
42
  `LoadBalancerNetwork` and the existence of a subnet.
38
43
  :param pulumi.Input[str] subnet_id: ID of the sub-network which should be
39
44
  added to the Load Balancer. Required if `network_id` is not set.
40
- *Note*: if the `ip` property is missing, the Load Balancer is
45
+ _Note_: if the `ip` property is missing, the Load Balancer is
41
46
  currently added to the last created subnet.
42
47
  """
43
48
  pulumi.set(__self__, "load_balancer_id", load_balancer_id)
@@ -114,7 +119,7 @@ class LoadBalancerNetworkArgs:
114
119
  """
115
120
  ID of the sub-network which should be
116
121
  added to the Load Balancer. Required if `network_id` is not set.
117
- *Note*: if the `ip` property is missing, the Load Balancer is
122
+ _Note_: if the `ip` property is missing, the Load Balancer is
118
123
  currently added to the last created subnet.
119
124
  """
120
125
  return pulumi.get(self, "subnet_id")
@@ -150,7 +155,7 @@ class _LoadBalancerNetworkState:
150
155
  `LoadBalancerNetwork` and the existence of a subnet.
151
156
  :param pulumi.Input[str] subnet_id: ID of the sub-network which should be
152
157
  added to the Load Balancer. Required if `network_id` is not set.
153
- *Note*: if the `ip` property is missing, the Load Balancer is
158
+ _Note_: if the `ip` property is missing, the Load Balancer is
154
159
  currently added to the last created subnet.
155
160
  """
156
161
  if enable_public_interface is not None:
@@ -228,7 +233,7 @@ class _LoadBalancerNetworkState:
228
233
  """
229
234
  ID of the sub-network which should be
230
235
  added to the Load Balancer. Required if `network_id` is not set.
231
- *Note*: if the `ip` property is missing, the Load Balancer is
236
+ _Note_: if the `ip` property is missing, the Load Balancer is
232
237
  currently added to the last created subnet.
233
238
  """
234
239
  return pulumi.get(self, "subnet_id")
@@ -305,7 +310,7 @@ class LoadBalancerNetwork(pulumi.CustomResource):
305
310
  `LoadBalancerNetwork` and the existence of a subnet.
306
311
  :param pulumi.Input[str] subnet_id: ID of the sub-network which should be
307
312
  added to the Load Balancer. Required if `network_id` is not set.
308
- *Note*: if the `ip` property is missing, the Load Balancer is
313
+ _Note_: if the `ip` property is missing, the Load Balancer is
309
314
  currently added to the last created subnet.
310
315
  """
311
316
  ...
@@ -426,7 +431,7 @@ class LoadBalancerNetwork(pulumi.CustomResource):
426
431
  `LoadBalancerNetwork` and the existence of a subnet.
427
432
  :param pulumi.Input[str] subnet_id: ID of the sub-network which should be
428
433
  added to the Load Balancer. Required if `network_id` is not set.
429
- *Note*: if the `ip` property is missing, the Load Balancer is
434
+ _Note_: if the `ip` property is missing, the Load Balancer is
430
435
  currently added to the last created subnet.
431
436
  """
432
437
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
@@ -488,7 +493,7 @@ class LoadBalancerNetwork(pulumi.CustomResource):
488
493
  """
489
494
  ID of the sub-network which should be
490
495
  added to the Load Balancer. Required if `network_id` is not set.
491
- *Note*: if the `ip` property is missing, the Load Balancer is
496
+ _Note_: if the `ip` property is missing, the Load Balancer is
492
497
  currently added to the last created subnet.
493
498
  """
494
499
  return pulumi.get(self, "subnet_id")
@@ -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 *
@@ -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__ = ['LoadBalancerTargetInitArgs', 'LoadBalancerTarget']
@@ -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__ = ['ManagedCertificateArgs', 'ManagedCertificate']