cdktf-cdktf-provider-upcloud 11.0.2__py3-none-any.whl → 11.1.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.

Potentially problematic release.


This version of cdktf-cdktf-provider-upcloud might be problematic. Click here for more details.

Files changed (55) hide show
  1. cdktf_cdktf_provider_upcloud/__init__.py +13 -15
  2. cdktf_cdktf_provider_upcloud/_jsii/__init__.py +2 -2
  3. cdktf_cdktf_provider_upcloud/_jsii/provider-upcloud@11.1.0.jsii.tgz +0 -0
  4. cdktf_cdktf_provider_upcloud/data_upcloud_hosts/__init__.py +7 -7
  5. cdktf_cdktf_provider_upcloud/data_upcloud_ip_addresses/__init__.py +7 -7
  6. cdktf_cdktf_provider_upcloud/data_upcloud_kubernetes_cluster/__init__.py +7 -7
  7. cdktf_cdktf_provider_upcloud/data_upcloud_managed_database_mysql_sessions/__init__.py +22 -22
  8. cdktf_cdktf_provider_upcloud/data_upcloud_managed_database_opensearch_indices/__init__.py +13 -13
  9. cdktf_cdktf_provider_upcloud/data_upcloud_managed_database_postgresql_sessions/__init__.py +30 -30
  10. cdktf_cdktf_provider_upcloud/data_upcloud_managed_database_redis_sessions/__init__.py +22 -22
  11. cdktf_cdktf_provider_upcloud/data_upcloud_managed_object_storage_regions/__init__.py +7 -7
  12. cdktf_cdktf_provider_upcloud/data_upcloud_networks/__init__.py +13 -13
  13. cdktf_cdktf_provider_upcloud/data_upcloud_storage/__init__.py +25 -25
  14. cdktf_cdktf_provider_upcloud/data_upcloud_tags/__init__.py +7 -7
  15. cdktf_cdktf_provider_upcloud/data_upcloud_zone/__init__.py +10 -10
  16. cdktf_cdktf_provider_upcloud/data_upcloud_zones/__init__.py +10 -10
  17. cdktf_cdktf_provider_upcloud/firewall_rules/__init__.py +41 -41
  18. cdktf_cdktf_provider_upcloud/floating_ip_address/__init__.py +19 -19
  19. cdktf_cdktf_provider_upcloud/gateway/__init__.py +28 -28
  20. cdktf_cdktf_provider_upcloud/kubernetes_cluster/__init__.py +28 -28
  21. cdktf_cdktf_provider_upcloud/kubernetes_node_group/__init__.py +47 -47
  22. cdktf_cdktf_provider_upcloud/loadbalancer/__init__.py +36 -36
  23. cdktf_cdktf_provider_upcloud/loadbalancer_backend/__init__.py +280 -52
  24. cdktf_cdktf_provider_upcloud/loadbalancer_backend_tls_config/__init__.py +463 -0
  25. cdktf_cdktf_provider_upcloud/loadbalancer_dynamic_backend_member/__init__.py +28 -28
  26. cdktf_cdktf_provider_upcloud/loadbalancer_dynamic_certificate_bundle/__init__.py +16 -16
  27. cdktf_cdktf_provider_upcloud/loadbalancer_frontend/__init__.py +89 -36
  28. cdktf_cdktf_provider_upcloud/loadbalancer_frontend_rule/__init__.py +165 -165
  29. cdktf_cdktf_provider_upcloud/loadbalancer_frontend_tls_config/__init__.py +16 -16
  30. cdktf_cdktf_provider_upcloud/loadbalancer_manual_certificate_bundle/__init__.py +19 -19
  31. cdktf_cdktf_provider_upcloud/loadbalancer_resolver/__init__.py +31 -31
  32. cdktf_cdktf_provider_upcloud/loadbalancer_static_backend_member/__init__.py +28 -28
  33. cdktf_cdktf_provider_upcloud/managed_database_logical_database/__init__.py +19 -19
  34. cdktf_cdktf_provider_upcloud/managed_database_mysql/__init__.py +225 -172
  35. cdktf_cdktf_provider_upcloud/managed_database_opensearch/__init__.py +73 -73
  36. cdktf_cdktf_provider_upcloud/managed_database_postgresql/__init__.py +342 -289
  37. cdktf_cdktf_provider_upcloud/managed_database_redis/__init__.py +150 -97
  38. cdktf_cdktf_provider_upcloud/managed_database_user/__init__.py +50 -50
  39. cdktf_cdktf_provider_upcloud/managed_object_storage/__init__.py +73 -30
  40. cdktf_cdktf_provider_upcloud/managed_object_storage_user_access_key/__init__.py +19 -19
  41. cdktf_cdktf_provider_upcloud/network/__init__.py +40 -40
  42. cdktf_cdktf_provider_upcloud/object_storage/__init__.py +30 -30
  43. cdktf_cdktf_provider_upcloud/provider/__init__.py +71 -22
  44. cdktf_cdktf_provider_upcloud/router/__init__.py +19 -19
  45. cdktf_cdktf_provider_upcloud/server/__init__.py +282 -138
  46. cdktf_cdktf_provider_upcloud/server_group/__init__.py +19 -19
  47. cdktf_cdktf_provider_upcloud/storage/__init__.py +55 -55
  48. cdktf_cdktf_provider_upcloud/tag/__init__.py +16 -16
  49. {cdktf_cdktf_provider_upcloud-11.0.2.dist-info → cdktf_cdktf_provider_upcloud-11.1.0.dist-info}/METADATA +14 -18
  50. cdktf_cdktf_provider_upcloud-11.1.0.dist-info/RECORD +54 -0
  51. {cdktf_cdktf_provider_upcloud-11.0.2.dist-info → cdktf_cdktf_provider_upcloud-11.1.0.dist-info}/WHEEL +1 -1
  52. cdktf_cdktf_provider_upcloud/_jsii/provider-upcloud@11.0.2.jsii.tgz +0 -0
  53. cdktf_cdktf_provider_upcloud-11.0.2.dist-info/RECORD +0 -53
  54. {cdktf_cdktf_provider_upcloud-11.0.2.dist-info → cdktf_cdktf_provider_upcloud-11.1.0.dist-info}/LICENSE +0 -0
  55. {cdktf_cdktf_provider_upcloud-11.0.2.dist-info → cdktf_cdktf_provider_upcloud-11.1.0.dist-info}/top_level.txt +0 -0
@@ -1,7 +1,7 @@
1
1
  '''
2
2
  # `upcloud_loadbalancer_backend`
3
3
 
4
- Refer to the Terraform Registory for docs: [`upcloud_loadbalancer_backend`](https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend).
4
+ Refer to the Terraform Registory for docs: [`upcloud_loadbalancer_backend`](https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend).
5
5
  '''
6
6
  import abc
7
7
  import builtins
@@ -26,7 +26,7 @@ class LoadbalancerBackend(
26
26
  metaclass=jsii.JSIIMeta,
27
27
  jsii_type="@cdktf/provider-upcloud.loadbalancerBackend.LoadbalancerBackend",
28
28
  ):
29
- '''Represents a {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend upcloud_loadbalancer_backend}.'''
29
+ '''Represents a {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend upcloud_loadbalancer_backend}.'''
30
30
 
31
31
  def __init__(
32
32
  self,
@@ -46,15 +46,15 @@ class LoadbalancerBackend(
46
46
  provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
47
47
  provisioners: typing.Optional[typing.Sequence[typing.Union[typing.Union[_cdktf_9a9027ec.FileProvisioner, typing.Dict[builtins.str, typing.Any]], typing.Union[_cdktf_9a9027ec.LocalExecProvisioner, typing.Dict[builtins.str, typing.Any]], typing.Union[_cdktf_9a9027ec.RemoteExecProvisioner, typing.Dict[builtins.str, typing.Any]]]]] = None,
48
48
  ) -> None:
49
- '''Create a new {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend upcloud_loadbalancer_backend} Resource.
49
+ '''Create a new {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend upcloud_loadbalancer_backend} Resource.
50
50
 
51
51
  :param scope: The scope in which to define this construct.
52
52
  :param id_: The scoped construct ID. Must be unique amongst siblings in the same scope
53
- :param loadbalancer: ID of the load balancer to which the backend is connected. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#loadbalancer LoadbalancerBackend#loadbalancer}
54
- :param name: The name of the backend must be unique within the load balancer service. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#name LoadbalancerBackend#name}
55
- :param id: Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#id LoadbalancerBackend#id}. Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
56
- :param properties: properties block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#properties LoadbalancerBackend#properties}
57
- :param resolver_name: Domain Name Resolver used with dynamic type members. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#resolver_name LoadbalancerBackend#resolver_name}
53
+ :param loadbalancer: ID of the load balancer to which the backend is connected. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#loadbalancer LoadbalancerBackend#loadbalancer}
54
+ :param name: The name of the backend must be unique within the load balancer service. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#name LoadbalancerBackend#name}
55
+ :param id: Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#id LoadbalancerBackend#id}. Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
56
+ :param properties: properties block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#properties LoadbalancerBackend#properties}
57
+ :param resolver_name: Domain Name Resolver used with dynamic type members. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#resolver_name LoadbalancerBackend#resolver_name}
58
58
  :param connection:
59
59
  :param count:
60
60
  :param depends_on:
@@ -97,7 +97,7 @@ class LoadbalancerBackend(
97
97
 
98
98
  :param scope: The scope in which to define this construct.
99
99
  :param import_to_id: The construct id used in the generated config for the LoadbalancerBackend to import.
100
- :param import_from_id: The id of the existing LoadbalancerBackend that should be imported. Refer to the {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#import import section} in the documentation of this resource for the id to use
100
+ :param import_from_id: The id of the existing LoadbalancerBackend that should be imported. Refer to the {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#import import section} in the documentation of this resource for the id to use
101
101
  :param provider: ? Optional instance of the provider where the LoadbalancerBackend to import is found.
102
102
  '''
103
103
  if __debug__:
@@ -119,23 +119,31 @@ class LoadbalancerBackend(
119
119
  health_check_tls_verify: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
120
120
  health_check_type: typing.Optional[builtins.str] = None,
121
121
  health_check_url: typing.Optional[builtins.str] = None,
122
+ http2_enabled: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
122
123
  outbound_proxy_protocol: typing.Optional[builtins.str] = None,
123
124
  sticky_session_cookie_name: typing.Optional[builtins.str] = None,
124
125
  timeout_server: typing.Optional[jsii.Number] = None,
125
126
  timeout_tunnel: typing.Optional[jsii.Number] = None,
127
+ tls_enabled: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
128
+ tls_use_system_ca: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
129
+ tls_verify: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
126
130
  ) -> None:
127
131
  '''
128
- :param health_check_expected_status: Expected HTTP status code returned by the customer application to mark server as healthy. Ignored for tcp type. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_expected_status LoadbalancerBackend#health_check_expected_status}
129
- :param health_check_fall: Sets how many failed health checks are allowed until the backend member is taken off from the rotation. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_fall LoadbalancerBackend#health_check_fall}
130
- :param health_check_interval: Interval between health checks. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_interval LoadbalancerBackend#health_check_interval}
131
- :param health_check_rise: Sets how many passing checks there must be before returning the backend member to the rotation. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_rise LoadbalancerBackend#health_check_rise}
132
- :param health_check_tls_verify: Enables certificate verification with the system CA certificate bundle. Works with https scheme in health_check_url, otherwise ignored. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_tls_verify LoadbalancerBackend#health_check_tls_verify}
133
- :param health_check_type: Health check type. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_type LoadbalancerBackend#health_check_type}
134
- :param health_check_url: Target path for health check HTTP GET requests. Ignored for tcp type. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_url LoadbalancerBackend#health_check_url}
135
- :param outbound_proxy_protocol: Enable outbound proxy protocol by setting the desired version. Empty string disables proxy protocol. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#outbound_proxy_protocol LoadbalancerBackend#outbound_proxy_protocol}
136
- :param sticky_session_cookie_name: Sets sticky session cookie name. Empty string disables sticky session. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#sticky_session_cookie_name LoadbalancerBackend#sticky_session_cookie_name}
137
- :param timeout_server: Backend server timeout in seconds. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#timeout_server LoadbalancerBackend#timeout_server}
138
- :param timeout_tunnel: Maximum inactivity time on the client and server side for tunnels in seconds. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#timeout_tunnel LoadbalancerBackend#timeout_tunnel}
132
+ :param health_check_expected_status: Expected HTTP status code returned by the customer application to mark server as healthy. Ignored for tcp type. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_expected_status LoadbalancerBackend#health_check_expected_status}
133
+ :param health_check_fall: Sets how many failed health checks are allowed until the backend member is taken off from the rotation. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_fall LoadbalancerBackend#health_check_fall}
134
+ :param health_check_interval: Interval between health checks. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_interval LoadbalancerBackend#health_check_interval}
135
+ :param health_check_rise: Sets how many passing checks there must be before returning the backend member to the rotation. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_rise LoadbalancerBackend#health_check_rise}
136
+ :param health_check_tls_verify: Enables certificate verification with the system CA certificate bundle. Works with https scheme in health_check_url, otherwise ignored. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_tls_verify LoadbalancerBackend#health_check_tls_verify}
137
+ :param health_check_type: Health check type. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_type LoadbalancerBackend#health_check_type}
138
+ :param health_check_url: Target path for health check HTTP GET requests. Ignored for tcp type. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_url LoadbalancerBackend#health_check_url}
139
+ :param http2_enabled: Allow HTTP/2 connections to backend members by utilizing ALPN extension of TLS protocol, therefore it can only be enabled when tls_enabled is set to true. Note: members should support HTTP/2 for this setting to work. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#http2_enabled LoadbalancerBackend#http2_enabled}
140
+ :param outbound_proxy_protocol: Enable outbound proxy protocol by setting the desired version. Empty string disables proxy protocol. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#outbound_proxy_protocol LoadbalancerBackend#outbound_proxy_protocol}
141
+ :param sticky_session_cookie_name: Sets sticky session cookie name. Empty string disables sticky session. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#sticky_session_cookie_name LoadbalancerBackend#sticky_session_cookie_name}
142
+ :param timeout_server: Backend server timeout in seconds. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#timeout_server LoadbalancerBackend#timeout_server}
143
+ :param timeout_tunnel: Maximum inactivity time on the client and server side for tunnels in seconds. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#timeout_tunnel LoadbalancerBackend#timeout_tunnel}
144
+ :param tls_enabled: Enables TLS connection from the load balancer to backend servers. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#tls_enabled LoadbalancerBackend#tls_enabled}
145
+ :param tls_use_system_ca: If enabled, then the system CA certificate bundle will be used for the certificate verification. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#tls_use_system_ca LoadbalancerBackend#tls_use_system_ca}
146
+ :param tls_verify: Enables backend servers certificate verification. Please make sure that TLS config with the certificate bundle of type authority attached to the backend or ``tls_use_system_ca`` enabled. Note: ``tls_verify`` has preference over ``health_check_tls_verify`` when ``tls_enabled`` in true. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#tls_verify LoadbalancerBackend#tls_verify}
139
147
  '''
140
148
  value = LoadbalancerBackendProperties(
141
149
  health_check_expected_status=health_check_expected_status,
@@ -145,10 +153,14 @@ class LoadbalancerBackend(
145
153
  health_check_tls_verify=health_check_tls_verify,
146
154
  health_check_type=health_check_type,
147
155
  health_check_url=health_check_url,
156
+ http2_enabled=http2_enabled,
148
157
  outbound_proxy_protocol=outbound_proxy_protocol,
149
158
  sticky_session_cookie_name=sticky_session_cookie_name,
150
159
  timeout_server=timeout_server,
151
160
  timeout_tunnel=timeout_tunnel,
161
+ tls_enabled=tls_enabled,
162
+ tls_use_system_ca=tls_use_system_ca,
163
+ tls_verify=tls_verify,
152
164
  )
153
165
 
154
166
  return typing.cast(None, jsii.invoke(self, "putProperties", [value]))
@@ -184,6 +196,11 @@ class LoadbalancerBackend(
184
196
  def properties(self) -> "LoadbalancerBackendPropertiesOutputReference":
185
197
  return typing.cast("LoadbalancerBackendPropertiesOutputReference", jsii.get(self, "properties"))
186
198
 
199
+ @builtins.property
200
+ @jsii.member(jsii_name="tlsConfigs")
201
+ def tls_configs(self) -> typing.List[builtins.str]:
202
+ return typing.cast(typing.List[builtins.str], jsii.get(self, "tlsConfigs"))
203
+
187
204
  @builtins.property
188
205
  @jsii.member(jsii_name="idInput")
189
206
  def id_input(self) -> typing.Optional[builtins.str]:
@@ -301,11 +318,11 @@ class LoadbalancerBackendConfig(_cdktf_9a9027ec.TerraformMetaArguments):
301
318
  :param lifecycle:
302
319
  :param provider:
303
320
  :param provisioners:
304
- :param loadbalancer: ID of the load balancer to which the backend is connected. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#loadbalancer LoadbalancerBackend#loadbalancer}
305
- :param name: The name of the backend must be unique within the load balancer service. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#name LoadbalancerBackend#name}
306
- :param id: Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#id LoadbalancerBackend#id}. Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
307
- :param properties: properties block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#properties LoadbalancerBackend#properties}
308
- :param resolver_name: Domain Name Resolver used with dynamic type members. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#resolver_name LoadbalancerBackend#resolver_name}
321
+ :param loadbalancer: ID of the load balancer to which the backend is connected. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#loadbalancer LoadbalancerBackend#loadbalancer}
322
+ :param name: The name of the backend must be unique within the load balancer service. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#name LoadbalancerBackend#name}
323
+ :param id: Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#id LoadbalancerBackend#id}. Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
324
+ :param properties: properties block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#properties LoadbalancerBackend#properties}
325
+ :param resolver_name: Domain Name Resolver used with dynamic type members. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#resolver_name LoadbalancerBackend#resolver_name}
309
326
  '''
310
327
  if isinstance(lifecycle, dict):
311
328
  lifecycle = _cdktf_9a9027ec.TerraformResourceLifecycle(**lifecycle)
@@ -418,7 +435,7 @@ class LoadbalancerBackendConfig(_cdktf_9a9027ec.TerraformMetaArguments):
418
435
  def loadbalancer(self) -> builtins.str:
419
436
  '''ID of the load balancer to which the backend is connected.
420
437
 
421
- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#loadbalancer LoadbalancerBackend#loadbalancer}
438
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#loadbalancer LoadbalancerBackend#loadbalancer}
422
439
  '''
423
440
  result = self._values.get("loadbalancer")
424
441
  assert result is not None, "Required property 'loadbalancer' is missing"
@@ -428,7 +445,7 @@ class LoadbalancerBackendConfig(_cdktf_9a9027ec.TerraformMetaArguments):
428
445
  def name(self) -> builtins.str:
429
446
  '''The name of the backend must be unique within the load balancer service.
430
447
 
431
- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#name LoadbalancerBackend#name}
448
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#name LoadbalancerBackend#name}
432
449
  '''
433
450
  result = self._values.get("name")
434
451
  assert result is not None, "Required property 'name' is missing"
@@ -436,7 +453,7 @@ class LoadbalancerBackendConfig(_cdktf_9a9027ec.TerraformMetaArguments):
436
453
 
437
454
  @builtins.property
438
455
  def id(self) -> typing.Optional[builtins.str]:
439
- '''Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#id LoadbalancerBackend#id}.
456
+ '''Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#id LoadbalancerBackend#id}.
440
457
 
441
458
  Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
442
459
  If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
@@ -448,7 +465,7 @@ class LoadbalancerBackendConfig(_cdktf_9a9027ec.TerraformMetaArguments):
448
465
  def properties(self) -> typing.Optional["LoadbalancerBackendProperties"]:
449
466
  '''properties block.
450
467
 
451
- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#properties LoadbalancerBackend#properties}
468
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#properties LoadbalancerBackend#properties}
452
469
  '''
453
470
  result = self._values.get("properties")
454
471
  return typing.cast(typing.Optional["LoadbalancerBackendProperties"], result)
@@ -457,7 +474,7 @@ class LoadbalancerBackendConfig(_cdktf_9a9027ec.TerraformMetaArguments):
457
474
  def resolver_name(self) -> typing.Optional[builtins.str]:
458
475
  '''Domain Name Resolver used with dynamic type members.
459
476
 
460
- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#resolver_name LoadbalancerBackend#resolver_name}
477
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#resolver_name LoadbalancerBackend#resolver_name}
461
478
  '''
462
479
  result = self._values.get("resolver_name")
463
480
  return typing.cast(typing.Optional[builtins.str], result)
@@ -485,10 +502,14 @@ class LoadbalancerBackendConfig(_cdktf_9a9027ec.TerraformMetaArguments):
485
502
  "health_check_tls_verify": "healthCheckTlsVerify",
486
503
  "health_check_type": "healthCheckType",
487
504
  "health_check_url": "healthCheckUrl",
505
+ "http2_enabled": "http2Enabled",
488
506
  "outbound_proxy_protocol": "outboundProxyProtocol",
489
507
  "sticky_session_cookie_name": "stickySessionCookieName",
490
508
  "timeout_server": "timeoutServer",
491
509
  "timeout_tunnel": "timeoutTunnel",
510
+ "tls_enabled": "tlsEnabled",
511
+ "tls_use_system_ca": "tlsUseSystemCa",
512
+ "tls_verify": "tlsVerify",
492
513
  },
493
514
  )
494
515
  class LoadbalancerBackendProperties:
@@ -502,23 +523,31 @@ class LoadbalancerBackendProperties:
502
523
  health_check_tls_verify: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
503
524
  health_check_type: typing.Optional[builtins.str] = None,
504
525
  health_check_url: typing.Optional[builtins.str] = None,
526
+ http2_enabled: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
505
527
  outbound_proxy_protocol: typing.Optional[builtins.str] = None,
506
528
  sticky_session_cookie_name: typing.Optional[builtins.str] = None,
507
529
  timeout_server: typing.Optional[jsii.Number] = None,
508
530
  timeout_tunnel: typing.Optional[jsii.Number] = None,
531
+ tls_enabled: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
532
+ tls_use_system_ca: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
533
+ tls_verify: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
509
534
  ) -> None:
510
535
  '''
511
- :param health_check_expected_status: Expected HTTP status code returned by the customer application to mark server as healthy. Ignored for tcp type. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_expected_status LoadbalancerBackend#health_check_expected_status}
512
- :param health_check_fall: Sets how many failed health checks are allowed until the backend member is taken off from the rotation. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_fall LoadbalancerBackend#health_check_fall}
513
- :param health_check_interval: Interval between health checks. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_interval LoadbalancerBackend#health_check_interval}
514
- :param health_check_rise: Sets how many passing checks there must be before returning the backend member to the rotation. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_rise LoadbalancerBackend#health_check_rise}
515
- :param health_check_tls_verify: Enables certificate verification with the system CA certificate bundle. Works with https scheme in health_check_url, otherwise ignored. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_tls_verify LoadbalancerBackend#health_check_tls_verify}
516
- :param health_check_type: Health check type. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_type LoadbalancerBackend#health_check_type}
517
- :param health_check_url: Target path for health check HTTP GET requests. Ignored for tcp type. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_url LoadbalancerBackend#health_check_url}
518
- :param outbound_proxy_protocol: Enable outbound proxy protocol by setting the desired version. Empty string disables proxy protocol. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#outbound_proxy_protocol LoadbalancerBackend#outbound_proxy_protocol}
519
- :param sticky_session_cookie_name: Sets sticky session cookie name. Empty string disables sticky session. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#sticky_session_cookie_name LoadbalancerBackend#sticky_session_cookie_name}
520
- :param timeout_server: Backend server timeout in seconds. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#timeout_server LoadbalancerBackend#timeout_server}
521
- :param timeout_tunnel: Maximum inactivity time on the client and server side for tunnels in seconds. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#timeout_tunnel LoadbalancerBackend#timeout_tunnel}
536
+ :param health_check_expected_status: Expected HTTP status code returned by the customer application to mark server as healthy. Ignored for tcp type. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_expected_status LoadbalancerBackend#health_check_expected_status}
537
+ :param health_check_fall: Sets how many failed health checks are allowed until the backend member is taken off from the rotation. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_fall LoadbalancerBackend#health_check_fall}
538
+ :param health_check_interval: Interval between health checks. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_interval LoadbalancerBackend#health_check_interval}
539
+ :param health_check_rise: Sets how many passing checks there must be before returning the backend member to the rotation. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_rise LoadbalancerBackend#health_check_rise}
540
+ :param health_check_tls_verify: Enables certificate verification with the system CA certificate bundle. Works with https scheme in health_check_url, otherwise ignored. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_tls_verify LoadbalancerBackend#health_check_tls_verify}
541
+ :param health_check_type: Health check type. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_type LoadbalancerBackend#health_check_type}
542
+ :param health_check_url: Target path for health check HTTP GET requests. Ignored for tcp type. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_url LoadbalancerBackend#health_check_url}
543
+ :param http2_enabled: Allow HTTP/2 connections to backend members by utilizing ALPN extension of TLS protocol, therefore it can only be enabled when tls_enabled is set to true. Note: members should support HTTP/2 for this setting to work. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#http2_enabled LoadbalancerBackend#http2_enabled}
544
+ :param outbound_proxy_protocol: Enable outbound proxy protocol by setting the desired version. Empty string disables proxy protocol. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#outbound_proxy_protocol LoadbalancerBackend#outbound_proxy_protocol}
545
+ :param sticky_session_cookie_name: Sets sticky session cookie name. Empty string disables sticky session. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#sticky_session_cookie_name LoadbalancerBackend#sticky_session_cookie_name}
546
+ :param timeout_server: Backend server timeout in seconds. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#timeout_server LoadbalancerBackend#timeout_server}
547
+ :param timeout_tunnel: Maximum inactivity time on the client and server side for tunnels in seconds. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#timeout_tunnel LoadbalancerBackend#timeout_tunnel}
548
+ :param tls_enabled: Enables TLS connection from the load balancer to backend servers. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#tls_enabled LoadbalancerBackend#tls_enabled}
549
+ :param tls_use_system_ca: If enabled, then the system CA certificate bundle will be used for the certificate verification. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#tls_use_system_ca LoadbalancerBackend#tls_use_system_ca}
550
+ :param tls_verify: Enables backend servers certificate verification. Please make sure that TLS config with the certificate bundle of type authority attached to the backend or ``tls_use_system_ca`` enabled. Note: ``tls_verify`` has preference over ``health_check_tls_verify`` when ``tls_enabled`` in true. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#tls_verify LoadbalancerBackend#tls_verify}
522
551
  '''
523
552
  if __debug__:
524
553
  type_hints = typing.get_type_hints(_typecheckingstub__eb5988403ea7b17ea78d8a97176e2db70e4258ead0d52fc7ab7102412ecccf40)
@@ -529,10 +558,14 @@ class LoadbalancerBackendProperties:
529
558
  check_type(argname="argument health_check_tls_verify", value=health_check_tls_verify, expected_type=type_hints["health_check_tls_verify"])
530
559
  check_type(argname="argument health_check_type", value=health_check_type, expected_type=type_hints["health_check_type"])
531
560
  check_type(argname="argument health_check_url", value=health_check_url, expected_type=type_hints["health_check_url"])
561
+ check_type(argname="argument http2_enabled", value=http2_enabled, expected_type=type_hints["http2_enabled"])
532
562
  check_type(argname="argument outbound_proxy_protocol", value=outbound_proxy_protocol, expected_type=type_hints["outbound_proxy_protocol"])
533
563
  check_type(argname="argument sticky_session_cookie_name", value=sticky_session_cookie_name, expected_type=type_hints["sticky_session_cookie_name"])
534
564
  check_type(argname="argument timeout_server", value=timeout_server, expected_type=type_hints["timeout_server"])
535
565
  check_type(argname="argument timeout_tunnel", value=timeout_tunnel, expected_type=type_hints["timeout_tunnel"])
566
+ check_type(argname="argument tls_enabled", value=tls_enabled, expected_type=type_hints["tls_enabled"])
567
+ check_type(argname="argument tls_use_system_ca", value=tls_use_system_ca, expected_type=type_hints["tls_use_system_ca"])
568
+ check_type(argname="argument tls_verify", value=tls_verify, expected_type=type_hints["tls_verify"])
536
569
  self._values: typing.Dict[builtins.str, typing.Any] = {}
537
570
  if health_check_expected_status is not None:
538
571
  self._values["health_check_expected_status"] = health_check_expected_status
@@ -548,6 +581,8 @@ class LoadbalancerBackendProperties:
548
581
  self._values["health_check_type"] = health_check_type
549
582
  if health_check_url is not None:
550
583
  self._values["health_check_url"] = health_check_url
584
+ if http2_enabled is not None:
585
+ self._values["http2_enabled"] = http2_enabled
551
586
  if outbound_proxy_protocol is not None:
552
587
  self._values["outbound_proxy_protocol"] = outbound_proxy_protocol
553
588
  if sticky_session_cookie_name is not None:
@@ -556,12 +591,18 @@ class LoadbalancerBackendProperties:
556
591
  self._values["timeout_server"] = timeout_server
557
592
  if timeout_tunnel is not None:
558
593
  self._values["timeout_tunnel"] = timeout_tunnel
594
+ if tls_enabled is not None:
595
+ self._values["tls_enabled"] = tls_enabled
596
+ if tls_use_system_ca is not None:
597
+ self._values["tls_use_system_ca"] = tls_use_system_ca
598
+ if tls_verify is not None:
599
+ self._values["tls_verify"] = tls_verify
559
600
 
560
601
  @builtins.property
561
602
  def health_check_expected_status(self) -> typing.Optional[jsii.Number]:
562
603
  '''Expected HTTP status code returned by the customer application to mark server as healthy. Ignored for tcp type.
563
604
 
564
- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_expected_status LoadbalancerBackend#health_check_expected_status}
605
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_expected_status LoadbalancerBackend#health_check_expected_status}
565
606
  '''
566
607
  result = self._values.get("health_check_expected_status")
567
608
  return typing.cast(typing.Optional[jsii.Number], result)
@@ -570,7 +611,7 @@ class LoadbalancerBackendProperties:
570
611
  def health_check_fall(self) -> typing.Optional[jsii.Number]:
571
612
  '''Sets how many failed health checks are allowed until the backend member is taken off from the rotation.
572
613
 
573
- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_fall LoadbalancerBackend#health_check_fall}
614
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_fall LoadbalancerBackend#health_check_fall}
574
615
  '''
575
616
  result = self._values.get("health_check_fall")
576
617
  return typing.cast(typing.Optional[jsii.Number], result)
@@ -579,7 +620,7 @@ class LoadbalancerBackendProperties:
579
620
  def health_check_interval(self) -> typing.Optional[jsii.Number]:
580
621
  '''Interval between health checks.
581
622
 
582
- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_interval LoadbalancerBackend#health_check_interval}
623
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_interval LoadbalancerBackend#health_check_interval}
583
624
  '''
584
625
  result = self._values.get("health_check_interval")
585
626
  return typing.cast(typing.Optional[jsii.Number], result)
@@ -588,7 +629,7 @@ class LoadbalancerBackendProperties:
588
629
  def health_check_rise(self) -> typing.Optional[jsii.Number]:
589
630
  '''Sets how many passing checks there must be before returning the backend member to the rotation.
590
631
 
591
- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_rise LoadbalancerBackend#health_check_rise}
632
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_rise LoadbalancerBackend#health_check_rise}
592
633
  '''
593
634
  result = self._values.get("health_check_rise")
594
635
  return typing.cast(typing.Optional[jsii.Number], result)
@@ -599,7 +640,7 @@ class LoadbalancerBackendProperties:
599
640
  ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
600
641
  '''Enables certificate verification with the system CA certificate bundle. Works with https scheme in health_check_url, otherwise ignored.
601
642
 
602
- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_tls_verify LoadbalancerBackend#health_check_tls_verify}
643
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_tls_verify LoadbalancerBackend#health_check_tls_verify}
603
644
  '''
604
645
  result = self._values.get("health_check_tls_verify")
605
646
  return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], result)
@@ -608,7 +649,7 @@ class LoadbalancerBackendProperties:
608
649
  def health_check_type(self) -> typing.Optional[builtins.str]:
609
650
  '''Health check type.
610
651
 
611
- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_type LoadbalancerBackend#health_check_type}
652
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_type LoadbalancerBackend#health_check_type}
612
653
  '''
613
654
  result = self._values.get("health_check_type")
614
655
  return typing.cast(typing.Optional[builtins.str], result)
@@ -617,16 +658,29 @@ class LoadbalancerBackendProperties:
617
658
  def health_check_url(self) -> typing.Optional[builtins.str]:
618
659
  '''Target path for health check HTTP GET requests. Ignored for tcp type.
619
660
 
620
- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#health_check_url LoadbalancerBackend#health_check_url}
661
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#health_check_url LoadbalancerBackend#health_check_url}
621
662
  '''
622
663
  result = self._values.get("health_check_url")
623
664
  return typing.cast(typing.Optional[builtins.str], result)
624
665
 
666
+ @builtins.property
667
+ def http2_enabled(
668
+ self,
669
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
670
+ '''Allow HTTP/2 connections to backend members by utilizing ALPN extension of TLS protocol, therefore it can only be enabled when tls_enabled is set to true.
671
+
672
+ Note: members should support HTTP/2 for this setting to work.
673
+
674
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#http2_enabled LoadbalancerBackend#http2_enabled}
675
+ '''
676
+ result = self._values.get("http2_enabled")
677
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], result)
678
+
625
679
  @builtins.property
626
680
  def outbound_proxy_protocol(self) -> typing.Optional[builtins.str]:
627
681
  '''Enable outbound proxy protocol by setting the desired version. Empty string disables proxy protocol.
628
682
 
629
- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#outbound_proxy_protocol LoadbalancerBackend#outbound_proxy_protocol}
683
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#outbound_proxy_protocol LoadbalancerBackend#outbound_proxy_protocol}
630
684
  '''
631
685
  result = self._values.get("outbound_proxy_protocol")
632
686
  return typing.cast(typing.Optional[builtins.str], result)
@@ -635,7 +689,7 @@ class LoadbalancerBackendProperties:
635
689
  def sticky_session_cookie_name(self) -> typing.Optional[builtins.str]:
636
690
  '''Sets sticky session cookie name. Empty string disables sticky session.
637
691
 
638
- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#sticky_session_cookie_name LoadbalancerBackend#sticky_session_cookie_name}
692
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#sticky_session_cookie_name LoadbalancerBackend#sticky_session_cookie_name}
639
693
  '''
640
694
  result = self._values.get("sticky_session_cookie_name")
641
695
  return typing.cast(typing.Optional[builtins.str], result)
@@ -644,7 +698,7 @@ class LoadbalancerBackendProperties:
644
698
  def timeout_server(self) -> typing.Optional[jsii.Number]:
645
699
  '''Backend server timeout in seconds.
646
700
 
647
- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#timeout_server LoadbalancerBackend#timeout_server}
701
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#timeout_server LoadbalancerBackend#timeout_server}
648
702
  '''
649
703
  result = self._values.get("timeout_server")
650
704
  return typing.cast(typing.Optional[jsii.Number], result)
@@ -653,11 +707,46 @@ class LoadbalancerBackendProperties:
653
707
  def timeout_tunnel(self) -> typing.Optional[jsii.Number]:
654
708
  '''Maximum inactivity time on the client and server side for tunnels in seconds.
655
709
 
656
- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.1.1/docs/resources/loadbalancer_backend#timeout_tunnel LoadbalancerBackend#timeout_tunnel}
710
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#timeout_tunnel LoadbalancerBackend#timeout_tunnel}
657
711
  '''
658
712
  result = self._values.get("timeout_tunnel")
659
713
  return typing.cast(typing.Optional[jsii.Number], result)
660
714
 
715
+ @builtins.property
716
+ def tls_enabled(
717
+ self,
718
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
719
+ '''Enables TLS connection from the load balancer to backend servers.
720
+
721
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#tls_enabled LoadbalancerBackend#tls_enabled}
722
+ '''
723
+ result = self._values.get("tls_enabled")
724
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], result)
725
+
726
+ @builtins.property
727
+ def tls_use_system_ca(
728
+ self,
729
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
730
+ '''If enabled, then the system CA certificate bundle will be used for the certificate verification.
731
+
732
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#tls_use_system_ca LoadbalancerBackend#tls_use_system_ca}
733
+ '''
734
+ result = self._values.get("tls_use_system_ca")
735
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], result)
736
+
737
+ @builtins.property
738
+ def tls_verify(
739
+ self,
740
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
741
+ '''Enables backend servers certificate verification.
742
+
743
+ Please make sure that TLS config with the certificate bundle of type authority attached to the backend or ``tls_use_system_ca`` enabled. Note: ``tls_verify`` has preference over ``health_check_tls_verify`` when ``tls_enabled`` in true.
744
+
745
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/3.3.0/docs/resources/loadbalancer_backend#tls_verify LoadbalancerBackend#tls_verify}
746
+ '''
747
+ result = self._values.get("tls_verify")
748
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], result)
749
+
661
750
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
662
751
  return isinstance(rhs, self.__class__) and rhs._values == self._values
663
752
 
@@ -718,6 +807,10 @@ class LoadbalancerBackendPropertiesOutputReference(
718
807
  def reset_health_check_url(self) -> None:
719
808
  return typing.cast(None, jsii.invoke(self, "resetHealthCheckUrl", []))
720
809
 
810
+ @jsii.member(jsii_name="resetHttp2Enabled")
811
+ def reset_http2_enabled(self) -> None:
812
+ return typing.cast(None, jsii.invoke(self, "resetHttp2Enabled", []))
813
+
721
814
  @jsii.member(jsii_name="resetOutboundProxyProtocol")
722
815
  def reset_outbound_proxy_protocol(self) -> None:
723
816
  return typing.cast(None, jsii.invoke(self, "resetOutboundProxyProtocol", []))
@@ -734,6 +827,23 @@ class LoadbalancerBackendPropertiesOutputReference(
734
827
  def reset_timeout_tunnel(self) -> None:
735
828
  return typing.cast(None, jsii.invoke(self, "resetTimeoutTunnel", []))
736
829
 
830
+ @jsii.member(jsii_name="resetTlsEnabled")
831
+ def reset_tls_enabled(self) -> None:
832
+ return typing.cast(None, jsii.invoke(self, "resetTlsEnabled", []))
833
+
834
+ @jsii.member(jsii_name="resetTlsUseSystemCa")
835
+ def reset_tls_use_system_ca(self) -> None:
836
+ return typing.cast(None, jsii.invoke(self, "resetTlsUseSystemCa", []))
837
+
838
+ @jsii.member(jsii_name="resetTlsVerify")
839
+ def reset_tls_verify(self) -> None:
840
+ return typing.cast(None, jsii.invoke(self, "resetTlsVerify", []))
841
+
842
+ @builtins.property
843
+ @jsii.member(jsii_name="tlsConfigs")
844
+ def tls_configs(self) -> typing.List[builtins.str]:
845
+ return typing.cast(typing.List[builtins.str], jsii.get(self, "tlsConfigs"))
846
+
737
847
  @builtins.property
738
848
  @jsii.member(jsii_name="healthCheckExpectedStatusInput")
739
849
  def health_check_expected_status_input(self) -> typing.Optional[jsii.Number]:
@@ -771,6 +881,13 @@ class LoadbalancerBackendPropertiesOutputReference(
771
881
  def health_check_url_input(self) -> typing.Optional[builtins.str]:
772
882
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "healthCheckUrlInput"))
773
883
 
884
+ @builtins.property
885
+ @jsii.member(jsii_name="http2EnabledInput")
886
+ def http2_enabled_input(
887
+ self,
888
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
889
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], jsii.get(self, "http2EnabledInput"))
890
+
774
891
  @builtins.property
775
892
  @jsii.member(jsii_name="outboundProxyProtocolInput")
776
893
  def outbound_proxy_protocol_input(self) -> typing.Optional[builtins.str]:
@@ -791,6 +908,27 @@ class LoadbalancerBackendPropertiesOutputReference(
791
908
  def timeout_tunnel_input(self) -> typing.Optional[jsii.Number]:
792
909
  return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "timeoutTunnelInput"))
793
910
 
911
+ @builtins.property
912
+ @jsii.member(jsii_name="tlsEnabledInput")
913
+ def tls_enabled_input(
914
+ self,
915
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
916
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], jsii.get(self, "tlsEnabledInput"))
917
+
918
+ @builtins.property
919
+ @jsii.member(jsii_name="tlsUseSystemCaInput")
920
+ def tls_use_system_ca_input(
921
+ self,
922
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
923
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], jsii.get(self, "tlsUseSystemCaInput"))
924
+
925
+ @builtins.property
926
+ @jsii.member(jsii_name="tlsVerifyInput")
927
+ def tls_verify_input(
928
+ self,
929
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
930
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], jsii.get(self, "tlsVerifyInput"))
931
+
794
932
  @builtins.property
795
933
  @jsii.member(jsii_name="healthCheckExpectedStatus")
796
934
  def health_check_expected_status(self) -> jsii.Number:
@@ -880,6 +1018,21 @@ class LoadbalancerBackendPropertiesOutputReference(
880
1018
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
881
1019
  jsii.set(self, "healthCheckUrl", value)
882
1020
 
1021
+ @builtins.property
1022
+ @jsii.member(jsii_name="http2Enabled")
1023
+ def http2_enabled(self) -> typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]:
1024
+ return typing.cast(typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable], jsii.get(self, "http2Enabled"))
1025
+
1026
+ @http2_enabled.setter
1027
+ def http2_enabled(
1028
+ self,
1029
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
1030
+ ) -> None:
1031
+ if __debug__:
1032
+ type_hints = typing.get_type_hints(_typecheckingstub__c0ed74c710cac92ea40127eb8683ef34d63adf6cf079484e9ba4e70ae1d9c121)
1033
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1034
+ jsii.set(self, "http2Enabled", value)
1035
+
883
1036
  @builtins.property
884
1037
  @jsii.member(jsii_name="outboundProxyProtocol")
885
1038
  def outbound_proxy_protocol(self) -> builtins.str:
@@ -928,6 +1081,53 @@ class LoadbalancerBackendPropertiesOutputReference(
928
1081
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
929
1082
  jsii.set(self, "timeoutTunnel", value)
930
1083
 
1084
+ @builtins.property
1085
+ @jsii.member(jsii_name="tlsEnabled")
1086
+ def tls_enabled(self) -> typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]:
1087
+ return typing.cast(typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable], jsii.get(self, "tlsEnabled"))
1088
+
1089
+ @tls_enabled.setter
1090
+ def tls_enabled(
1091
+ self,
1092
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
1093
+ ) -> None:
1094
+ if __debug__:
1095
+ type_hints = typing.get_type_hints(_typecheckingstub__a3971da5b5c90f1fd23ac2242c668f5d56a0071530ac27f4ec552f8ec4ce9ee2)
1096
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1097
+ jsii.set(self, "tlsEnabled", value)
1098
+
1099
+ @builtins.property
1100
+ @jsii.member(jsii_name="tlsUseSystemCa")
1101
+ def tls_use_system_ca(
1102
+ self,
1103
+ ) -> typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]:
1104
+ return typing.cast(typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable], jsii.get(self, "tlsUseSystemCa"))
1105
+
1106
+ @tls_use_system_ca.setter
1107
+ def tls_use_system_ca(
1108
+ self,
1109
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
1110
+ ) -> None:
1111
+ if __debug__:
1112
+ type_hints = typing.get_type_hints(_typecheckingstub__97f6e28d7e94f7b38cfe76b70291b8c0170c52b48c78b10dc8f76b4703c093e9)
1113
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1114
+ jsii.set(self, "tlsUseSystemCa", value)
1115
+
1116
+ @builtins.property
1117
+ @jsii.member(jsii_name="tlsVerify")
1118
+ def tls_verify(self) -> typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]:
1119
+ return typing.cast(typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable], jsii.get(self, "tlsVerify"))
1120
+
1121
+ @tls_verify.setter
1122
+ def tls_verify(
1123
+ self,
1124
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
1125
+ ) -> None:
1126
+ if __debug__:
1127
+ type_hints = typing.get_type_hints(_typecheckingstub__0d060a9595c4cfc7ea56c1c33bf629d6166ba1a8b052484fd102442b53a67224)
1128
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1129
+ jsii.set(self, "tlsVerify", value)
1130
+
931
1131
  @builtins.property
932
1132
  @jsii.member(jsii_name="internalValue")
933
1133
  def internal_value(self) -> typing.Optional[LoadbalancerBackendProperties]:
@@ -1033,10 +1233,14 @@ def _typecheckingstub__eb5988403ea7b17ea78d8a97176e2db70e4258ead0d52fc7ab7102412
1033
1233
  health_check_tls_verify: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
1034
1234
  health_check_type: typing.Optional[builtins.str] = None,
1035
1235
  health_check_url: typing.Optional[builtins.str] = None,
1236
+ http2_enabled: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
1036
1237
  outbound_proxy_protocol: typing.Optional[builtins.str] = None,
1037
1238
  sticky_session_cookie_name: typing.Optional[builtins.str] = None,
1038
1239
  timeout_server: typing.Optional[jsii.Number] = None,
1039
1240
  timeout_tunnel: typing.Optional[jsii.Number] = None,
1241
+ tls_enabled: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
1242
+ tls_use_system_ca: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
1243
+ tls_verify: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
1040
1244
  ) -> None:
1041
1245
  """Type checking stubs"""
1042
1246
  pass
@@ -1090,6 +1294,12 @@ def _typecheckingstub__39f4a5b6a60297078707410bf16c529278fa67e401d14af087347f4ac
1090
1294
  """Type checking stubs"""
1091
1295
  pass
1092
1296
 
1297
+ def _typecheckingstub__c0ed74c710cac92ea40127eb8683ef34d63adf6cf079484e9ba4e70ae1d9c121(
1298
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
1299
+ ) -> None:
1300
+ """Type checking stubs"""
1301
+ pass
1302
+
1093
1303
  def _typecheckingstub__643632d762dde3bfa52ccccc383516eae69f64de4c971e85aaa719e291c1c0fa(
1094
1304
  value: builtins.str,
1095
1305
  ) -> None:
@@ -1114,6 +1324,24 @@ def _typecheckingstub__cd7554673f8db1f54b33f3b8832599eb58807a0023a40109ca959f715
1114
1324
  """Type checking stubs"""
1115
1325
  pass
1116
1326
 
1327
+ def _typecheckingstub__a3971da5b5c90f1fd23ac2242c668f5d56a0071530ac27f4ec552f8ec4ce9ee2(
1328
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
1329
+ ) -> None:
1330
+ """Type checking stubs"""
1331
+ pass
1332
+
1333
+ def _typecheckingstub__97f6e28d7e94f7b38cfe76b70291b8c0170c52b48c78b10dc8f76b4703c093e9(
1334
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
1335
+ ) -> None:
1336
+ """Type checking stubs"""
1337
+ pass
1338
+
1339
+ def _typecheckingstub__0d060a9595c4cfc7ea56c1c33bf629d6166ba1a8b052484fd102442b53a67224(
1340
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
1341
+ ) -> None:
1342
+ """Type checking stubs"""
1343
+ pass
1344
+
1117
1345
  def _typecheckingstub__c8c6fb57a71c2e0e202ceab15eb8b409d80557a71150004a0caaf083b5bb1cb5(
1118
1346
  value: typing.Optional[LoadbalancerBackendProperties],
1119
1347
  ) -> None: