pulumi-hcloud 1.20.0a1721973531__py3-none-any.whl → 1.20.1__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 (38) hide show
  1. pulumi_hcloud/certificate.py +10 -10
  2. pulumi_hcloud/firewall.py +48 -48
  3. pulumi_hcloud/firewall_attachment.py +4 -4
  4. pulumi_hcloud/floating_ip.py +30 -30
  5. pulumi_hcloud/floating_ip_assignment.py +2 -2
  6. pulumi_hcloud/get_certificate.py +1 -1
  7. pulumi_hcloud/get_firewall.py +13 -13
  8. pulumi_hcloud/get_floating_ip.py +1 -1
  9. pulumi_hcloud/get_image.py +1 -1
  10. pulumi_hcloud/get_load_balancer.py +1 -1
  11. pulumi_hcloud/get_network.py +3 -3
  12. pulumi_hcloud/get_placement_group.py +5 -5
  13. pulumi_hcloud/get_primary_ip.py +9 -9
  14. pulumi_hcloud/get_server.py +1 -1
  15. pulumi_hcloud/get_server_type.py +4 -3
  16. pulumi_hcloud/get_server_types.py +1 -1
  17. pulumi_hcloud/get_volume.py +1 -1
  18. pulumi_hcloud/load_balancer.py +24 -24
  19. pulumi_hcloud/load_balancer_service.py +44 -44
  20. pulumi_hcloud/load_balancer_target.py +2 -2
  21. pulumi_hcloud/managed_certificate.py +14 -14
  22. pulumi_hcloud/network.py +14 -14
  23. pulumi_hcloud/outputs.py +21 -20
  24. pulumi_hcloud/placement_group.py +16 -16
  25. pulumi_hcloud/primary_ip.py +22 -22
  26. pulumi_hcloud/pulumi-plugin.json +1 -1
  27. pulumi_hcloud/rdns.py +2 -2
  28. pulumi_hcloud/server.py +68 -68
  29. pulumi_hcloud/server_network.py +2 -2
  30. pulumi_hcloud/snapshot.py +16 -16
  31. pulumi_hcloud/uploaded_certificate.py +14 -14
  32. pulumi_hcloud/volume.py +16 -16
  33. pulumi_hcloud/volume_attachment.py +2 -2
  34. {pulumi_hcloud-1.20.0a1721973531.dist-info → pulumi_hcloud-1.20.1.dist-info}/METADATA +1 -1
  35. pulumi_hcloud-1.20.1.dist-info/RECORD +65 -0
  36. {pulumi_hcloud-1.20.0a1721973531.dist-info → pulumi_hcloud-1.20.1.dist-info}/WHEEL +1 -1
  37. pulumi_hcloud-1.20.0a1721973531.dist-info/RECORD +0 -65
  38. {pulumi_hcloud-1.20.0a1721973531.dist-info → pulumi_hcloud-1.20.1.dist-info}/top_level.txt +0 -0
@@ -64,7 +64,7 @@ class GetFirewallResult:
64
64
 
65
65
  @property
66
66
  @pulumi.getter
67
- def labels(self) -> Optional[Mapping[str, Any]]:
67
+ def labels(self) -> Optional[Mapping[str, str]]:
68
68
  """
69
69
  (map) User-defined labels (key-value pairs)
70
70
  """
@@ -112,12 +112,12 @@ class AwaitableGetFirewallResult(GetFirewallResult):
112
112
  with_selector=self.with_selector)
113
113
 
114
114
 
115
- def get_firewall(apply_tos: Optional[Sequence[pulumi.InputType['GetFirewallApplyToArgs']]] = None,
115
+ def get_firewall(apply_tos: Optional[Sequence[Union['GetFirewallApplyToArgs', 'GetFirewallApplyToArgsDict']]] = None,
116
116
  id: Optional[int] = None,
117
- labels: Optional[Mapping[str, Any]] = None,
117
+ labels: Optional[Mapping[str, str]] = None,
118
118
  most_recent: Optional[bool] = None,
119
119
  name: Optional[str] = None,
120
- rules: Optional[Sequence[pulumi.InputType['GetFirewallRuleArgs']]] = None,
120
+ rules: Optional[Sequence[Union['GetFirewallRuleArgs', 'GetFirewallRuleArgsDict']]] = None,
121
121
  with_selector: Optional[str] = None,
122
122
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetFirewallResult:
123
123
  """
@@ -132,12 +132,12 @@ def get_firewall(apply_tos: Optional[Sequence[pulumi.InputType['GetFirewallApply
132
132
  ```
133
133
 
134
134
 
135
- :param Sequence[pulumi.InputType['GetFirewallApplyToArgs']] apply_tos: Configuration of the Applied Resources
135
+ :param Sequence[Union['GetFirewallApplyToArgs', 'GetFirewallApplyToArgsDict']] apply_tos: Configuration of the Applied Resources
136
136
  :param int id: ID of the firewall.
137
- :param Mapping[str, Any] labels: (map) User-defined labels (key-value pairs)
137
+ :param Mapping[str, str] labels: (map) User-defined labels (key-value pairs)
138
138
  :param bool most_recent: Return most recent firewall if multiple are found.
139
139
  :param str name: Name of the firewall.
140
- :param Sequence[pulumi.InputType['GetFirewallRuleArgs']] rules: (string) Configuration of a Rule from this Firewall.
140
+ :param Sequence[Union['GetFirewallRuleArgs', 'GetFirewallRuleArgsDict']] rules: (string) Configuration of a Rule from this Firewall.
141
141
  :param str with_selector: [Label selector](https://docs.hetzner.cloud/#overview-label-selector)
142
142
  """
143
143
  __args__ = dict()
@@ -162,12 +162,12 @@ def get_firewall(apply_tos: Optional[Sequence[pulumi.InputType['GetFirewallApply
162
162
 
163
163
 
164
164
  @_utilities.lift_output_func(get_firewall)
165
- def get_firewall_output(apply_tos: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetFirewallApplyToArgs']]]]] = None,
165
+ def get_firewall_output(apply_tos: Optional[pulumi.Input[Optional[Sequence[Union['GetFirewallApplyToArgs', 'GetFirewallApplyToArgsDict']]]]] = None,
166
166
  id: Optional[pulumi.Input[Optional[int]]] = None,
167
- labels: Optional[pulumi.Input[Optional[Mapping[str, Any]]]] = None,
167
+ labels: Optional[pulumi.Input[Optional[Mapping[str, str]]]] = None,
168
168
  most_recent: Optional[pulumi.Input[Optional[bool]]] = None,
169
169
  name: Optional[pulumi.Input[Optional[str]]] = None,
170
- rules: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetFirewallRuleArgs']]]]] = None,
170
+ rules: Optional[pulumi.Input[Optional[Sequence[Union['GetFirewallRuleArgs', 'GetFirewallRuleArgsDict']]]]] = None,
171
171
  with_selector: Optional[pulumi.Input[Optional[str]]] = None,
172
172
  opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetFirewallResult]:
173
173
  """
@@ -182,12 +182,12 @@ def get_firewall_output(apply_tos: Optional[pulumi.Input[Optional[Sequence[pulum
182
182
  ```
183
183
 
184
184
 
185
- :param Sequence[pulumi.InputType['GetFirewallApplyToArgs']] apply_tos: Configuration of the Applied Resources
185
+ :param Sequence[Union['GetFirewallApplyToArgs', 'GetFirewallApplyToArgsDict']] apply_tos: Configuration of the Applied Resources
186
186
  :param int id: ID of the firewall.
187
- :param Mapping[str, Any] labels: (map) User-defined labels (key-value pairs)
187
+ :param Mapping[str, str] labels: (map) User-defined labels (key-value pairs)
188
188
  :param bool most_recent: Return most recent firewall if multiple are found.
189
189
  :param str name: Name of the firewall.
190
- :param Sequence[pulumi.InputType['GetFirewallRuleArgs']] rules: (string) Configuration of a Rule from this Firewall.
190
+ :param Sequence[Union['GetFirewallRuleArgs', 'GetFirewallRuleArgsDict']] rules: (string) Configuration of a Rule from this Firewall.
191
191
  :param str with_selector: [Label selector](https://docs.hetzner.cloud/#overview-label-selector)
192
192
  """
193
193
  ...
@@ -109,7 +109,7 @@ class GetFloatingIpResult:
109
109
 
110
110
  @property
111
111
  @pulumi.getter
112
- def labels(self) -> Mapping[str, Any]:
112
+ def labels(self) -> Mapping[str, str]:
113
113
  """
114
114
  (map) User-defined labels (key-value pairs).
115
115
  """
@@ -121,7 +121,7 @@ class GetImageResult:
121
121
 
122
122
  @property
123
123
  @pulumi.getter
124
- def labels(self) -> Mapping[str, Any]:
124
+ def labels(self) -> Mapping[str, str]:
125
125
  return pulumi.get(self, "labels")
126
126
 
127
127
  @property
@@ -111,7 +111,7 @@ class GetLoadBalancerResult:
111
111
 
112
112
  @property
113
113
  @pulumi.getter
114
- def labels(self) -> Mapping[str, Any]:
114
+ def labels(self) -> Mapping[str, str]:
115
115
  """
116
116
  (map) User-defined labels (key-value pairs) .
117
117
  """
@@ -81,7 +81,7 @@ class GetNetworkResult:
81
81
 
82
82
  @property
83
83
  @pulumi.getter
84
- def labels(self) -> Mapping[str, Any]:
84
+ def labels(self) -> Mapping[str, str]:
85
85
  return pulumi.get(self, "labels")
86
86
 
87
87
  @property
@@ -122,7 +122,7 @@ class AwaitableGetNetworkResult(GetNetworkResult):
122
122
 
123
123
  def get_network(id: Optional[int] = None,
124
124
  ip_range: Optional[str] = None,
125
- labels: Optional[Mapping[str, Any]] = None,
125
+ labels: Optional[Mapping[str, str]] = None,
126
126
  most_recent: Optional[bool] = None,
127
127
  name: Optional[str] = None,
128
128
  with_selector: Optional[str] = None,
@@ -169,7 +169,7 @@ def get_network(id: Optional[int] = None,
169
169
  @_utilities.lift_output_func(get_network)
170
170
  def get_network_output(id: Optional[pulumi.Input[Optional[int]]] = None,
171
171
  ip_range: Optional[pulumi.Input[Optional[str]]] = None,
172
- labels: Optional[pulumi.Input[Optional[Mapping[str, Any]]]] = None,
172
+ labels: Optional[pulumi.Input[Optional[Mapping[str, str]]]] = None,
173
173
  most_recent: Optional[pulumi.Input[Optional[bool]]] = None,
174
174
  name: Optional[pulumi.Input[Optional[str]]] = None,
175
175
  with_selector: Optional[pulumi.Input[Optional[str]]] = None,
@@ -54,7 +54,7 @@ class GetPlacementGroupResult:
54
54
 
55
55
  @property
56
56
  @pulumi.getter
57
- def labels(self) -> Mapping[str, Any]:
57
+ def labels(self) -> Mapping[str, str]:
58
58
  """
59
59
  (map) User-defined labels (key-value pairs)
60
60
  """
@@ -108,7 +108,7 @@ class AwaitableGetPlacementGroupResult(GetPlacementGroupResult):
108
108
 
109
109
 
110
110
  def get_placement_group(id: Optional[int] = None,
111
- labels: Optional[Mapping[str, Any]] = None,
111
+ labels: Optional[Mapping[str, str]] = None,
112
112
  most_recent: Optional[bool] = None,
113
113
  name: Optional[str] = None,
114
114
  type: Optional[str] = None,
@@ -127,7 +127,7 @@ def get_placement_group(id: Optional[int] = None,
127
127
 
128
128
 
129
129
  :param int id: ID of the placement group.
130
- :param Mapping[str, Any] labels: (map) User-defined labels (key-value pairs)
130
+ :param Mapping[str, str] labels: (map) User-defined labels (key-value pairs)
131
131
  :param bool most_recent: Return most recent placement group if multiple are found.
132
132
  :param str name: Name of the placement group.
133
133
  :param str type: (string) Type of the Placement Group.
@@ -155,7 +155,7 @@ def get_placement_group(id: Optional[int] = None,
155
155
 
156
156
  @_utilities.lift_output_func(get_placement_group)
157
157
  def get_placement_group_output(id: Optional[pulumi.Input[Optional[int]]] = None,
158
- labels: Optional[pulumi.Input[Optional[Mapping[str, Any]]]] = None,
158
+ labels: Optional[pulumi.Input[Optional[Mapping[str, str]]]] = None,
159
159
  most_recent: Optional[pulumi.Input[Optional[bool]]] = None,
160
160
  name: Optional[pulumi.Input[Optional[str]]] = None,
161
161
  type: Optional[pulumi.Input[Optional[str]]] = None,
@@ -174,7 +174,7 @@ def get_placement_group_output(id: Optional[pulumi.Input[Optional[int]]] = None,
174
174
 
175
175
 
176
176
  :param int id: ID of the placement group.
177
- :param Mapping[str, Any] labels: (map) User-defined labels (key-value pairs)
177
+ :param Mapping[str, str] labels: (map) User-defined labels (key-value pairs)
178
178
  :param bool most_recent: Return most recent placement group if multiple are found.
179
179
  :param str name: Name of the placement group.
180
180
  :param str type: (string) Type of the Placement Group.
@@ -125,7 +125,7 @@ class GetPrimaryIpResult:
125
125
 
126
126
  @property
127
127
  @pulumi.getter
128
- def labels(self) -> Mapping[str, Any]:
128
+ def labels(self) -> Mapping[str, str]:
129
129
  """
130
130
  (string) Description of the Primary IP.
131
131
  """
@@ -209,14 +209,14 @@ def get_primary_ip(assignee_id: Optional[int] = None,
209
209
  server_test = hcloud.Server("server_test",
210
210
  name="test-server",
211
211
  image="ubuntu-20.04",
212
- server_type="cx11",
212
+ server_type="cx22",
213
213
  datacenter="fsn1-dc14",
214
214
  labels={
215
215
  "test": "tessst1",
216
216
  },
217
- public_nets=[hcloud.ServerPublicNetArgs(
218
- ipv4=ip1_hcloud_primary_ip["id"],
219
- )])
217
+ public_nets=[{
218
+ "ipv4": ip1_hcloud_primary_ip["id"],
219
+ }])
220
220
  ```
221
221
 
222
222
 
@@ -287,14 +287,14 @@ def get_primary_ip_output(assignee_id: Optional[pulumi.Input[Optional[int]]] = N
287
287
  server_test = hcloud.Server("server_test",
288
288
  name="test-server",
289
289
  image="ubuntu-20.04",
290
- server_type="cx11",
290
+ server_type="cx22",
291
291
  datacenter="fsn1-dc14",
292
292
  labels={
293
293
  "test": "tessst1",
294
294
  },
295
- public_nets=[hcloud.ServerPublicNetArgs(
296
- ipv4=ip1_hcloud_primary_ip["id"],
297
- )])
295
+ public_nets=[{
296
+ "ipv4": ip1_hcloud_primary_ip["id"],
297
+ }])
298
298
  ```
299
299
 
300
300
 
@@ -182,7 +182,7 @@ class GetServerResult:
182
182
 
183
183
  @property
184
184
  @pulumi.getter
185
- def labels(self) -> Mapping[str, Any]:
185
+ def labels(self) -> Mapping[str, str]:
186
186
  """
187
187
  (map) User-defined labels (key-value pairs)
188
188
  """
@@ -117,9 +117,10 @@ class GetServerTypeResult:
117
117
 
118
118
  @property
119
119
  @pulumi.getter(name="includedTraffic")
120
+ @_utilities.deprecated("""The field is deprecated and will always report 0 after 2024-08-05.""")
120
121
  def included_traffic(self) -> int:
121
122
  """
122
- (int) Free traffic per month in bytes.
123
+ (int) Free traffic per month in bytes. **Warning**: This field is deprecated and will report `0` after 2024-08-05.
123
124
  """
124
125
  return pulumi.get(self, "included_traffic")
125
126
 
@@ -197,7 +198,7 @@ def get_server_type(deprecation_announced: Optional[str] = None,
197
198
  import pulumi
198
199
  import pulumi_hcloud as hcloud
199
200
 
200
- ds1 = hcloud.get_server_type(name="cx11")
201
+ ds1 = hcloud.get_server_type(name="cx22")
201
202
  ds2 = hcloud.get_server_type(id=1)
202
203
  ```
203
204
 
@@ -247,7 +248,7 @@ def get_server_type_output(deprecation_announced: Optional[pulumi.Input[Optional
247
248
  import pulumi
248
249
  import pulumi_hcloud as hcloud
249
250
 
250
- ds1 = hcloud.get_server_type(name="cx11")
251
+ ds1 = hcloud.get_server_type(name="cx22")
251
252
  ds2 = hcloud.get_server_type(id=1)
252
253
  ```
253
254
 
@@ -69,7 +69,7 @@ class GetServerTypesResult:
69
69
  @pulumi.getter(name="serverTypes")
70
70
  def server_types(self) -> Sequence['outputs.GetServerTypesServerTypeResult']:
71
71
  """
72
- (list) List of all server types. See `data.hcloud_type` for schema.
72
+ (list) List of all server types. See `data.hcloud_server_type` for schema.
73
73
  """
74
74
  return pulumi.get(self, "server_types")
75
75
 
@@ -74,7 +74,7 @@ class GetVolumeResult:
74
74
 
75
75
  @property
76
76
  @pulumi.getter
77
- def labels(self) -> Mapping[str, Any]:
77
+ def labels(self) -> Mapping[str, str]:
78
78
  """
79
79
  (map) User-defined labels (key-value pairs).
80
80
  """
@@ -19,7 +19,7 @@ class LoadBalancerArgs:
19
19
  load_balancer_type: pulumi.Input[str],
20
20
  algorithm: Optional[pulumi.Input['LoadBalancerAlgorithmArgs']] = None,
21
21
  delete_protection: Optional[pulumi.Input[bool]] = None,
22
- labels: Optional[pulumi.Input[Mapping[str, Any]]] = None,
22
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
23
23
  location: Optional[pulumi.Input[str]] = None,
24
24
  name: Optional[pulumi.Input[str]] = None,
25
25
  network_zone: Optional[pulumi.Input[str]] = None,
@@ -29,7 +29,7 @@ class LoadBalancerArgs:
29
29
  :param pulumi.Input[str] load_balancer_type: Type of the Load Balancer.
30
30
  :param pulumi.Input['LoadBalancerAlgorithmArgs'] algorithm: Configuration of the algorithm the Load Balancer use.
31
31
  :param pulumi.Input[bool] delete_protection: Enable or disable delete protection. See "Delete Protection" in the Provider Docs for details.
32
- :param pulumi.Input[Mapping[str, Any]] labels: User-defined labels (key-value pairs) should be created with.
32
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: User-defined labels (key-value pairs) should be created with.
33
33
  :param pulumi.Input[str] location: The location name of the Load Balancer. Require when no network_zone is set.
34
34
  :param pulumi.Input[str] name: Name of the Load Balancer.
35
35
  :param pulumi.Input[str] network_zone: The Network Zone of the Load Balancer. Require when no location is set.
@@ -91,14 +91,14 @@ class LoadBalancerArgs:
91
91
 
92
92
  @property
93
93
  @pulumi.getter
94
- def labels(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
94
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
95
95
  """
96
96
  User-defined labels (key-value pairs) should be created with.
97
97
  """
98
98
  return pulumi.get(self, "labels")
99
99
 
100
100
  @labels.setter
101
- def labels(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
101
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
102
102
  pulumi.set(self, "labels", value)
103
103
 
104
104
  @property
@@ -155,7 +155,7 @@ class _LoadBalancerState:
155
155
  delete_protection: Optional[pulumi.Input[bool]] = None,
156
156
  ipv4: Optional[pulumi.Input[str]] = None,
157
157
  ipv6: Optional[pulumi.Input[str]] = None,
158
- labels: Optional[pulumi.Input[Mapping[str, Any]]] = None,
158
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
159
159
  load_balancer_type: Optional[pulumi.Input[str]] = None,
160
160
  location: Optional[pulumi.Input[str]] = None,
161
161
  name: Optional[pulumi.Input[str]] = None,
@@ -169,7 +169,7 @@ class _LoadBalancerState:
169
169
  :param pulumi.Input[bool] delete_protection: Enable or disable delete protection. See "Delete Protection" in the Provider Docs for details.
170
170
  :param pulumi.Input[str] ipv4: (string) IPv4 Address of the Load Balancer.
171
171
  :param pulumi.Input[str] ipv6: (string) IPv6 Address of the Load Balancer.
172
- :param pulumi.Input[Mapping[str, Any]] labels: User-defined labels (key-value pairs) should be created with.
172
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: User-defined labels (key-value pairs) should be created with.
173
173
  :param pulumi.Input[str] load_balancer_type: Type of the Load Balancer.
174
174
  :param pulumi.Input[str] location: The location name of the Load Balancer. Require when no network_zone is set.
175
175
  :param pulumi.Input[str] name: Name of the Load Balancer.
@@ -255,14 +255,14 @@ class _LoadBalancerState:
255
255
 
256
256
  @property
257
257
  @pulumi.getter
258
- def labels(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
258
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
259
259
  """
260
260
  User-defined labels (key-value pairs) should be created with.
261
261
  """
262
262
  return pulumi.get(self, "labels")
263
263
 
264
264
  @labels.setter
265
- def labels(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
265
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
266
266
  pulumi.set(self, "labels", value)
267
267
 
268
268
  @property
@@ -353,14 +353,14 @@ class LoadBalancer(pulumi.CustomResource):
353
353
  def __init__(__self__,
354
354
  resource_name: str,
355
355
  opts: Optional[pulumi.ResourceOptions] = None,
356
- algorithm: Optional[pulumi.Input[pulumi.InputType['LoadBalancerAlgorithmArgs']]] = None,
356
+ algorithm: Optional[pulumi.Input[Union['LoadBalancerAlgorithmArgs', 'LoadBalancerAlgorithmArgsDict']]] = None,
357
357
  delete_protection: Optional[pulumi.Input[bool]] = None,
358
- labels: Optional[pulumi.Input[Mapping[str, Any]]] = None,
358
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
359
359
  load_balancer_type: Optional[pulumi.Input[str]] = None,
360
360
  location: Optional[pulumi.Input[str]] = None,
361
361
  name: Optional[pulumi.Input[str]] = None,
362
362
  network_zone: Optional[pulumi.Input[str]] = None,
363
- targets: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['LoadBalancerTargetArgs']]]]] = None,
363
+ targets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['LoadBalancerTargetArgs', 'LoadBalancerTargetArgsDict']]]]] = None,
364
364
  __props__=None):
365
365
  """
366
366
  Provides a Hetzner Cloud Load Balancer to represent a Load Balancer in the Hetzner Cloud.
@@ -373,7 +373,7 @@ class LoadBalancer(pulumi.CustomResource):
373
373
 
374
374
  my_server = hcloud.Server("my_server",
375
375
  name="server-%d",
376
- server_type="cx11",
376
+ server_type="cx22",
377
377
  image="ubuntu-18.04")
378
378
  load_balancer = hcloud.LoadBalancer("load_balancer",
379
379
  name="my-load-balancer",
@@ -395,9 +395,9 @@ class LoadBalancer(pulumi.CustomResource):
395
395
 
396
396
  :param str resource_name: The name of the resource.
397
397
  :param pulumi.ResourceOptions opts: Options for the resource.
398
- :param pulumi.Input[pulumi.InputType['LoadBalancerAlgorithmArgs']] algorithm: Configuration of the algorithm the Load Balancer use.
398
+ :param pulumi.Input[Union['LoadBalancerAlgorithmArgs', 'LoadBalancerAlgorithmArgsDict']] algorithm: Configuration of the algorithm the Load Balancer use.
399
399
  :param pulumi.Input[bool] delete_protection: Enable or disable delete protection. See "Delete Protection" in the Provider Docs for details.
400
- :param pulumi.Input[Mapping[str, Any]] labels: User-defined labels (key-value pairs) should be created with.
400
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: User-defined labels (key-value pairs) should be created with.
401
401
  :param pulumi.Input[str] load_balancer_type: Type of the Load Balancer.
402
402
  :param pulumi.Input[str] location: The location name of the Load Balancer. Require when no network_zone is set.
403
403
  :param pulumi.Input[str] name: Name of the Load Balancer.
@@ -420,7 +420,7 @@ class LoadBalancer(pulumi.CustomResource):
420
420
 
421
421
  my_server = hcloud.Server("my_server",
422
422
  name="server-%d",
423
- server_type="cx11",
423
+ server_type="cx22",
424
424
  image="ubuntu-18.04")
425
425
  load_balancer = hcloud.LoadBalancer("load_balancer",
426
426
  name="my-load-balancer",
@@ -455,14 +455,14 @@ class LoadBalancer(pulumi.CustomResource):
455
455
  def _internal_init(__self__,
456
456
  resource_name: str,
457
457
  opts: Optional[pulumi.ResourceOptions] = None,
458
- algorithm: Optional[pulumi.Input[pulumi.InputType['LoadBalancerAlgorithmArgs']]] = None,
458
+ algorithm: Optional[pulumi.Input[Union['LoadBalancerAlgorithmArgs', 'LoadBalancerAlgorithmArgsDict']]] = None,
459
459
  delete_protection: Optional[pulumi.Input[bool]] = None,
460
- labels: Optional[pulumi.Input[Mapping[str, Any]]] = None,
460
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
461
461
  load_balancer_type: Optional[pulumi.Input[str]] = None,
462
462
  location: Optional[pulumi.Input[str]] = None,
463
463
  name: Optional[pulumi.Input[str]] = None,
464
464
  network_zone: Optional[pulumi.Input[str]] = None,
465
- targets: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['LoadBalancerTargetArgs']]]]] = None,
465
+ targets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['LoadBalancerTargetArgs', 'LoadBalancerTargetArgsDict']]]]] = None,
466
466
  __props__=None):
467
467
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
468
468
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -496,18 +496,18 @@ class LoadBalancer(pulumi.CustomResource):
496
496
  def get(resource_name: str,
497
497
  id: pulumi.Input[str],
498
498
  opts: Optional[pulumi.ResourceOptions] = None,
499
- algorithm: Optional[pulumi.Input[pulumi.InputType['LoadBalancerAlgorithmArgs']]] = None,
499
+ algorithm: Optional[pulumi.Input[Union['LoadBalancerAlgorithmArgs', 'LoadBalancerAlgorithmArgsDict']]] = None,
500
500
  delete_protection: Optional[pulumi.Input[bool]] = None,
501
501
  ipv4: Optional[pulumi.Input[str]] = None,
502
502
  ipv6: Optional[pulumi.Input[str]] = None,
503
- labels: Optional[pulumi.Input[Mapping[str, Any]]] = None,
503
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
504
504
  load_balancer_type: Optional[pulumi.Input[str]] = None,
505
505
  location: Optional[pulumi.Input[str]] = None,
506
506
  name: Optional[pulumi.Input[str]] = None,
507
507
  network_id: Optional[pulumi.Input[int]] = None,
508
508
  network_ip: Optional[pulumi.Input[str]] = None,
509
509
  network_zone: Optional[pulumi.Input[str]] = None,
510
- targets: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['LoadBalancerTargetArgs']]]]] = None) -> 'LoadBalancer':
510
+ targets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['LoadBalancerTargetArgs', 'LoadBalancerTargetArgsDict']]]]] = None) -> 'LoadBalancer':
511
511
  """
512
512
  Get an existing LoadBalancer resource's state with the given name, id, and optional extra
513
513
  properties used to qualify the lookup.
@@ -515,11 +515,11 @@ class LoadBalancer(pulumi.CustomResource):
515
515
  :param str resource_name: The unique name of the resulting resource.
516
516
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
517
517
  :param pulumi.ResourceOptions opts: Options for the resource.
518
- :param pulumi.Input[pulumi.InputType['LoadBalancerAlgorithmArgs']] algorithm: Configuration of the algorithm the Load Balancer use.
518
+ :param pulumi.Input[Union['LoadBalancerAlgorithmArgs', 'LoadBalancerAlgorithmArgsDict']] algorithm: Configuration of the algorithm the Load Balancer use.
519
519
  :param pulumi.Input[bool] delete_protection: Enable or disable delete protection. See "Delete Protection" in the Provider Docs for details.
520
520
  :param pulumi.Input[str] ipv4: (string) IPv4 Address of the Load Balancer.
521
521
  :param pulumi.Input[str] ipv6: (string) IPv6 Address of the Load Balancer.
522
- :param pulumi.Input[Mapping[str, Any]] labels: User-defined labels (key-value pairs) should be created with.
522
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: User-defined labels (key-value pairs) should be created with.
523
523
  :param pulumi.Input[str] load_balancer_type: Type of the Load Balancer.
524
524
  :param pulumi.Input[str] location: The location name of the Load Balancer. Require when no network_zone is set.
525
525
  :param pulumi.Input[str] name: Name of the Load Balancer.
@@ -579,7 +579,7 @@ class LoadBalancer(pulumi.CustomResource):
579
579
 
580
580
  @property
581
581
  @pulumi.getter
582
- def labels(self) -> pulumi.Output[Mapping[str, Any]]:
582
+ def labels(self) -> pulumi.Output[Mapping[str, str]]:
583
583
  """
584
584
  User-defined labels (key-value pairs) should be created with.
585
585
  """
@@ -257,8 +257,8 @@ class LoadBalancerService(pulumi.CustomResource):
257
257
  resource_name: str,
258
258
  opts: Optional[pulumi.ResourceOptions] = None,
259
259
  destination_port: Optional[pulumi.Input[int]] = None,
260
- health_check: Optional[pulumi.Input[pulumi.InputType['LoadBalancerServiceHealthCheckArgs']]] = None,
261
- http: Optional[pulumi.Input[pulumi.InputType['LoadBalancerServiceHttpArgs']]] = None,
260
+ health_check: Optional[pulumi.Input[Union['LoadBalancerServiceHealthCheckArgs', 'LoadBalancerServiceHealthCheckArgsDict']]] = None,
261
+ http: Optional[pulumi.Input[Union['LoadBalancerServiceHttpArgs', 'LoadBalancerServiceHttpArgsDict']]] = None,
262
262
  listen_port: Optional[pulumi.Input[int]] = None,
263
263
  load_balancer_id: Optional[pulumi.Input[str]] = None,
264
264
  protocol: Optional[pulumi.Input[str]] = None,
@@ -280,23 +280,23 @@ class LoadBalancerService(pulumi.CustomResource):
280
280
  load_balancer_service = hcloud.LoadBalancerService("load_balancer_service",
281
281
  load_balancer_id=load_balancer.id,
282
282
  protocol="http",
283
- http=hcloud.LoadBalancerServiceHttpArgs(
284
- sticky_sessions=True,
285
- cookie_name="EXAMPLE_STICKY",
286
- ),
287
- health_check=hcloud.LoadBalancerServiceHealthCheckArgs(
288
- protocol="http",
289
- port=80,
290
- interval=10,
291
- timeout=5,
292
- http=hcloud.LoadBalancerServiceHealthCheckHttpArgs(
293
- domain="example.com",
294
- path="/healthz",
295
- response="OK",
296
- tls=True,
297
- status_codes=["200"],
298
- ),
299
- ))
283
+ http={
284
+ "sticky_sessions": True,
285
+ "cookie_name": "EXAMPLE_STICKY",
286
+ },
287
+ health_check={
288
+ "protocol": "http",
289
+ "port": 80,
290
+ "interval": 10,
291
+ "timeout": 5,
292
+ "http": {
293
+ "domain": "example.com",
294
+ "path": "/healthz",
295
+ "response": "OK",
296
+ "tls": True,
297
+ "status_codes": ["200"],
298
+ },
299
+ })
300
300
  ```
301
301
 
302
302
  ## Import
@@ -312,8 +312,8 @@ class LoadBalancerService(pulumi.CustomResource):
312
312
  :param str resource_name: The name of the resource.
313
313
  :param pulumi.ResourceOptions opts: Options for the resource.
314
314
  :param pulumi.Input[int] destination_port: Port the service connects to the targets on, required if protocol is `tcp`. Can be everything between `1` and `65535`.
315
- :param pulumi.Input[pulumi.InputType['LoadBalancerServiceHealthCheckArgs']] health_check: Health Check configuration when `protocol` is `http` or `https`.
316
- :param pulumi.Input[pulumi.InputType['LoadBalancerServiceHttpArgs']] http: HTTP configuration when `protocol` is `http` or `https`.
315
+ :param pulumi.Input[Union['LoadBalancerServiceHealthCheckArgs', 'LoadBalancerServiceHealthCheckArgsDict']] health_check: Health Check configuration when `protocol` is `http` or `https`.
316
+ :param pulumi.Input[Union['LoadBalancerServiceHttpArgs', 'LoadBalancerServiceHttpArgsDict']] http: HTTP configuration when `protocol` is `http` or `https`.
317
317
  :param pulumi.Input[int] listen_port: Port the service listen on, required if protocol is `tcp`. Can be everything between `1` and `65535`. Must be unique per Load Balancer.
318
318
  :param pulumi.Input[str] load_balancer_id: Id of the load balancer this service belongs to.
319
319
  :param pulumi.Input[str] protocol: Protocol of the service. `http`, `https` or `tcp`
@@ -341,23 +341,23 @@ class LoadBalancerService(pulumi.CustomResource):
341
341
  load_balancer_service = hcloud.LoadBalancerService("load_balancer_service",
342
342
  load_balancer_id=load_balancer.id,
343
343
  protocol="http",
344
- http=hcloud.LoadBalancerServiceHttpArgs(
345
- sticky_sessions=True,
346
- cookie_name="EXAMPLE_STICKY",
347
- ),
348
- health_check=hcloud.LoadBalancerServiceHealthCheckArgs(
349
- protocol="http",
350
- port=80,
351
- interval=10,
352
- timeout=5,
353
- http=hcloud.LoadBalancerServiceHealthCheckHttpArgs(
354
- domain="example.com",
355
- path="/healthz",
356
- response="OK",
357
- tls=True,
358
- status_codes=["200"],
359
- ),
360
- ))
344
+ http={
345
+ "sticky_sessions": True,
346
+ "cookie_name": "EXAMPLE_STICKY",
347
+ },
348
+ health_check={
349
+ "protocol": "http",
350
+ "port": 80,
351
+ "interval": 10,
352
+ "timeout": 5,
353
+ "http": {
354
+ "domain": "example.com",
355
+ "path": "/healthz",
356
+ "response": "OK",
357
+ "tls": True,
358
+ "status_codes": ["200"],
359
+ },
360
+ })
361
361
  ```
362
362
 
363
363
  ## Import
@@ -386,8 +386,8 @@ class LoadBalancerService(pulumi.CustomResource):
386
386
  resource_name: str,
387
387
  opts: Optional[pulumi.ResourceOptions] = None,
388
388
  destination_port: Optional[pulumi.Input[int]] = None,
389
- health_check: Optional[pulumi.Input[pulumi.InputType['LoadBalancerServiceHealthCheckArgs']]] = None,
390
- http: Optional[pulumi.Input[pulumi.InputType['LoadBalancerServiceHttpArgs']]] = None,
389
+ health_check: Optional[pulumi.Input[Union['LoadBalancerServiceHealthCheckArgs', 'LoadBalancerServiceHealthCheckArgsDict']]] = None,
390
+ http: Optional[pulumi.Input[Union['LoadBalancerServiceHttpArgs', 'LoadBalancerServiceHttpArgsDict']]] = None,
391
391
  listen_port: Optional[pulumi.Input[int]] = None,
392
392
  load_balancer_id: Optional[pulumi.Input[str]] = None,
393
393
  protocol: Optional[pulumi.Input[str]] = None,
@@ -423,8 +423,8 @@ class LoadBalancerService(pulumi.CustomResource):
423
423
  id: pulumi.Input[str],
424
424
  opts: Optional[pulumi.ResourceOptions] = None,
425
425
  destination_port: Optional[pulumi.Input[int]] = None,
426
- health_check: Optional[pulumi.Input[pulumi.InputType['LoadBalancerServiceHealthCheckArgs']]] = None,
427
- http: Optional[pulumi.Input[pulumi.InputType['LoadBalancerServiceHttpArgs']]] = None,
426
+ health_check: Optional[pulumi.Input[Union['LoadBalancerServiceHealthCheckArgs', 'LoadBalancerServiceHealthCheckArgsDict']]] = None,
427
+ http: Optional[pulumi.Input[Union['LoadBalancerServiceHttpArgs', 'LoadBalancerServiceHttpArgsDict']]] = None,
428
428
  listen_port: Optional[pulumi.Input[int]] = None,
429
429
  load_balancer_id: Optional[pulumi.Input[str]] = None,
430
430
  protocol: Optional[pulumi.Input[str]] = None,
@@ -437,8 +437,8 @@ class LoadBalancerService(pulumi.CustomResource):
437
437
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
438
438
  :param pulumi.ResourceOptions opts: Options for the resource.
439
439
  :param pulumi.Input[int] destination_port: Port the service connects to the targets on, required if protocol is `tcp`. Can be everything between `1` and `65535`.
440
- :param pulumi.Input[pulumi.InputType['LoadBalancerServiceHealthCheckArgs']] health_check: Health Check configuration when `protocol` is `http` or `https`.
441
- :param pulumi.Input[pulumi.InputType['LoadBalancerServiceHttpArgs']] http: HTTP configuration when `protocol` is `http` or `https`.
440
+ :param pulumi.Input[Union['LoadBalancerServiceHealthCheckArgs', 'LoadBalancerServiceHealthCheckArgsDict']] health_check: Health Check configuration when `protocol` is `http` or `https`.
441
+ :param pulumi.Input[Union['LoadBalancerServiceHttpArgs', 'LoadBalancerServiceHttpArgsDict']] http: HTTP configuration when `protocol` is `http` or `https`.
442
442
  :param pulumi.Input[int] listen_port: Port the service listen on, required if protocol is `tcp`. Can be everything between `1` and `65535`. Must be unique per Load Balancer.
443
443
  :param pulumi.Input[str] load_balancer_id: Id of the load balancer this service belongs to.
444
444
  :param pulumi.Input[str] protocol: Protocol of the service. `http`, `https` or `tcp`
@@ -268,7 +268,7 @@ class LoadBalancerTarget(pulumi.CustomResource):
268
268
 
269
269
  my_server = hcloud.Server("my_server",
270
270
  name="my-server",
271
- server_type="cx11",
271
+ server_type="cx22",
272
272
  image="ubuntu-18.04")
273
273
  load_balancer = hcloud.LoadBalancer("load_balancer",
274
274
  name="my-load-balancer",
@@ -339,7 +339,7 @@ class LoadBalancerTarget(pulumi.CustomResource):
339
339
 
340
340
  my_server = hcloud.Server("my_server",
341
341
  name="my-server",
342
- server_type="cx11",
342
+ server_type="cx22",
343
343
  image="ubuntu-18.04")
344
344
  load_balancer = hcloud.LoadBalancer("load_balancer",
345
345
  name="my-load-balancer",