cdktf-cdktf-provider-upcloud 15.2.2__py3-none-any.whl → 15.3.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.
Potentially problematic release.
This version of cdktf-cdktf-provider-upcloud might be problematic. Click here for more details.
- cdktf_cdktf_provider_upcloud/__init__.py +3 -3
- cdktf_cdktf_provider_upcloud/_jsii/__init__.py +2 -2
- cdktf_cdktf_provider_upcloud/_jsii/provider-upcloud@15.3.1.jsii.tgz +0 -0
- cdktf_cdktf_provider_upcloud/data_upcloud_hosts/__init__.py +9 -9
- cdktf_cdktf_provider_upcloud/data_upcloud_ip_addresses/__init__.py +12 -7
- cdktf_cdktf_provider_upcloud/data_upcloud_kubernetes_cluster/__init__.py +7 -7
- cdktf_cdktf_provider_upcloud/data_upcloud_load_balancer_dns_challenge_domain/__init__.py +4 -4
- cdktf_cdktf_provider_upcloud/data_upcloud_managed_database_mysql_sessions/__init__.py +22 -22
- cdktf_cdktf_provider_upcloud/data_upcloud_managed_database_opensearch_indices/__init__.py +13 -13
- cdktf_cdktf_provider_upcloud/data_upcloud_managed_database_postgresql_sessions/__init__.py +30 -30
- cdktf_cdktf_provider_upcloud/data_upcloud_managed_database_redis_sessions/__init__.py +22 -22
- cdktf_cdktf_provider_upcloud/data_upcloud_managed_database_valkey_sessions/__init__.py +22 -22
- cdktf_cdktf_provider_upcloud/data_upcloud_managed_object_storage_policies/__init__.py +10 -10
- cdktf_cdktf_provider_upcloud/data_upcloud_managed_object_storage_regions/__init__.py +7 -7
- cdktf_cdktf_provider_upcloud/data_upcloud_networks/__init__.py +13 -13
- cdktf_cdktf_provider_upcloud/data_upcloud_storage/__init__.py +28 -28
- cdktf_cdktf_provider_upcloud/data_upcloud_tags/__init__.py +7 -7
- cdktf_cdktf_provider_upcloud/data_upcloud_zone/__init__.py +10 -10
- cdktf_cdktf_provider_upcloud/data_upcloud_zones/__init__.py +7 -7
- cdktf_cdktf_provider_upcloud/firewall_rules/__init__.py +38 -38
- cdktf_cdktf_provider_upcloud/floating_ip_address/__init__.py +63 -16
- cdktf_cdktf_provider_upcloud/gateway/__init__.py +37 -37
- cdktf_cdktf_provider_upcloud/gateway_connection/__init__.py +34 -34
- cdktf_cdktf_provider_upcloud/gateway_connection_tunnel/__init__.py +61 -61
- cdktf_cdktf_provider_upcloud/kubernetes_cluster/__init__.py +35 -35
- cdktf_cdktf_provider_upcloud/kubernetes_node_group/__init__.py +73 -73
- cdktf_cdktf_provider_upcloud/loadbalancer/__init__.py +392 -39
- cdktf_cdktf_provider_upcloud/loadbalancer_backend/__init__.py +46 -46
- cdktf_cdktf_provider_upcloud/loadbalancer_backend_tls_config/__init__.py +13 -13
- cdktf_cdktf_provider_upcloud/loadbalancer_dynamic_backend_member/__init__.py +25 -25
- cdktf_cdktf_provider_upcloud/loadbalancer_dynamic_certificate_bundle/__init__.py +13 -13
- cdktf_cdktf_provider_upcloud/loadbalancer_frontend/__init__.py +33 -33
- cdktf_cdktf_provider_upcloud/loadbalancer_frontend_rule/__init__.py +228 -228
- cdktf_cdktf_provider_upcloud/loadbalancer_frontend_tls_config/__init__.py +13 -13
- cdktf_cdktf_provider_upcloud/loadbalancer_manual_certificate_bundle/__init__.py +16 -16
- cdktf_cdktf_provider_upcloud/loadbalancer_resolver/__init__.py +28 -28
- cdktf_cdktf_provider_upcloud/loadbalancer_static_backend_member/__init__.py +25 -25
- cdktf_cdktf_provider_upcloud/managed_database_logical_database/__init__.py +19 -19
- cdktf_cdktf_provider_upcloud/managed_database_mysql/__init__.py +210 -210
- cdktf_cdktf_provider_upcloud/managed_database_opensearch/__init__.py +691 -599
- cdktf_cdktf_provider_upcloud/managed_database_postgresql/__init__.py +401 -383
- cdktf_cdktf_provider_upcloud/managed_database_redis/__init__.py +132 -132
- cdktf_cdktf_provider_upcloud/managed_database_user/__init__.py +65 -65
- cdktf_cdktf_provider_upcloud/managed_database_valkey/__init__.py +135 -135
- cdktf_cdktf_provider_upcloud/managed_object_storage/__init__.py +30 -30
- cdktf_cdktf_provider_upcloud/managed_object_storage_bucket/__init__.py +10 -10
- cdktf_cdktf_provider_upcloud/managed_object_storage_custom_domain/__init__.py +13 -13
- cdktf_cdktf_provider_upcloud/managed_object_storage_policy/__init__.py +16 -16
- cdktf_cdktf_provider_upcloud/managed_object_storage_user/__init__.py +13 -13
- cdktf_cdktf_provider_upcloud/managed_object_storage_user_access_key/__init__.py +16 -16
- cdktf_cdktf_provider_upcloud/managed_object_storage_user_policy/__init__.py +16 -16
- cdktf_cdktf_provider_upcloud/network/__init__.py +501 -33
- cdktf_cdktf_provider_upcloud/network_peering/__init__.py +23 -23
- cdktf_cdktf_provider_upcloud/object_storage/__init__.py +30 -30
- cdktf_cdktf_provider_upcloud/provider/__init__.py +28 -28
- cdktf_cdktf_provider_upcloud/router/__init__.py +19 -19
- cdktf_cdktf_provider_upcloud/server/__init__.py +139 -139
- cdktf_cdktf_provider_upcloud/server_group/__init__.py +19 -19
- cdktf_cdktf_provider_upcloud/storage/__init__.py +51 -51
- cdktf_cdktf_provider_upcloud/storage_backup/__init__.py +13 -13
- cdktf_cdktf_provider_upcloud/storage_template/__init__.py +13 -13
- cdktf_cdktf_provider_upcloud/tag/__init__.py +16 -16
- {cdktf_cdktf_provider_upcloud-15.2.2.dist-info → cdktf_cdktf_provider_upcloud-15.3.1.dist-info}/METADATA +5 -5
- cdktf_cdktf_provider_upcloud-15.3.1.dist-info/RECORD +68 -0
- cdktf_cdktf_provider_upcloud/_jsii/provider-upcloud@15.2.2.jsii.tgz +0 -0
- cdktf_cdktf_provider_upcloud-15.2.2.dist-info/RECORD +0 -68
- {cdktf_cdktf_provider_upcloud-15.2.2.dist-info → cdktf_cdktf_provider_upcloud-15.3.1.dist-info}/LICENSE +0 -0
- {cdktf_cdktf_provider_upcloud-15.2.2.dist-info → cdktf_cdktf_provider_upcloud-15.3.1.dist-info}/WHEEL +0 -0
- {cdktf_cdktf_provider_upcloud-15.2.2.dist-info → cdktf_cdktf_provider_upcloud-15.3.1.dist-info}/top_level.txt +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
r'''
|
|
2
2
|
# `upcloud_network`
|
|
3
3
|
|
|
4
|
-
Refer to the Terraform Registry for docs: [`upcloud_network`](https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
4
|
+
Refer to the Terraform Registry for docs: [`upcloud_network`](https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network).
|
|
5
5
|
'''
|
|
6
6
|
from pkgutil import extend_path
|
|
7
7
|
__path__ = extend_path(__path__, __name__)
|
|
@@ -44,7 +44,7 @@ class Network(
|
|
|
44
44
|
metaclass=jsii.JSIIMeta,
|
|
45
45
|
jsii_type="@cdktf/provider-upcloud.network.Network",
|
|
46
46
|
):
|
|
47
|
-
'''Represents a {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
47
|
+
'''Represents a {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network upcloud_network}.'''
|
|
48
48
|
|
|
49
49
|
def __init__(
|
|
50
50
|
self,
|
|
@@ -64,15 +64,15 @@ class Network(
|
|
|
64
64
|
provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
|
|
65
65
|
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,
|
|
66
66
|
) -> None:
|
|
67
|
-
'''Create a new {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
67
|
+
'''Create a new {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network upcloud_network} Resource.
|
|
68
68
|
|
|
69
69
|
:param scope: The scope in which to define this construct.
|
|
70
70
|
:param id: The scoped construct ID. Must be unique amongst siblings in the same scope
|
|
71
|
-
:param name: Name of the network. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
72
|
-
:param zone: The zone the network is in, e.g. ``de-fra1``. You can list available zones with ``upctl zone list``. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
73
|
-
:param ip_network: ip_network block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
74
|
-
:param labels: User defined key-value pairs to classify the network. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
75
|
-
:param router: UUID of a router to attach to this network. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
71
|
+
:param name: Name of the network. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#name Network#name}
|
|
72
|
+
:param zone: The zone the network is in, e.g. ``de-fra1``. You can list available zones with ``upctl zone list``. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#zone Network#zone}
|
|
73
|
+
:param ip_network: ip_network block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#ip_network Network#ip_network}
|
|
74
|
+
:param labels: User defined key-value pairs to classify the network. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#labels Network#labels}
|
|
75
|
+
:param router: UUID of a router to attach to this network. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#router Network#router}
|
|
76
76
|
:param connection:
|
|
77
77
|
:param count:
|
|
78
78
|
:param depends_on:
|
|
@@ -115,7 +115,7 @@ class Network(
|
|
|
115
115
|
|
|
116
116
|
:param scope: The scope in which to define this construct.
|
|
117
117
|
:param import_to_id: The construct id used in the generated config for the Network to import.
|
|
118
|
-
:param import_from_id: The id of the existing Network that should be imported. Refer to the {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
118
|
+
:param import_from_id: The id of the existing Network that should be imported. Refer to the {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#import import section} in the documentation of this resource for the id to use
|
|
119
119
|
:param provider: ? Optional instance of the provider where the Network to import is found.
|
|
120
120
|
'''
|
|
121
121
|
if __debug__:
|
|
@@ -300,11 +300,11 @@ class NetworkConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
300
300
|
:param lifecycle:
|
|
301
301
|
:param provider:
|
|
302
302
|
:param provisioners:
|
|
303
|
-
:param name: Name of the network. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
304
|
-
:param zone: The zone the network is in, e.g. ``de-fra1``. You can list available zones with ``upctl zone list``. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
305
|
-
:param ip_network: ip_network block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
306
|
-
:param labels: User defined key-value pairs to classify the network. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
307
|
-
:param router: UUID of a router to attach to this network. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
303
|
+
:param name: Name of the network. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#name Network#name}
|
|
304
|
+
:param zone: The zone the network is in, e.g. ``de-fra1``. You can list available zones with ``upctl zone list``. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#zone Network#zone}
|
|
305
|
+
:param ip_network: ip_network block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#ip_network Network#ip_network}
|
|
306
|
+
:param labels: User defined key-value pairs to classify the network. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#labels Network#labels}
|
|
307
|
+
:param router: UUID of a router to attach to this network. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#router Network#router}
|
|
308
308
|
'''
|
|
309
309
|
if isinstance(lifecycle, dict):
|
|
310
310
|
lifecycle = _cdktf_9a9027ec.TerraformResourceLifecycle(**lifecycle)
|
|
@@ -415,7 +415,7 @@ class NetworkConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
415
415
|
def name(self) -> builtins.str:
|
|
416
416
|
'''Name of the network.
|
|
417
417
|
|
|
418
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
418
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#name Network#name}
|
|
419
419
|
'''
|
|
420
420
|
result = self._values.get("name")
|
|
421
421
|
assert result is not None, "Required property 'name' is missing"
|
|
@@ -425,7 +425,7 @@ class NetworkConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
425
425
|
def zone(self) -> builtins.str:
|
|
426
426
|
'''The zone the network is in, e.g. ``de-fra1``. You can list available zones with ``upctl zone list``.
|
|
427
427
|
|
|
428
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
428
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#zone Network#zone}
|
|
429
429
|
'''
|
|
430
430
|
result = self._values.get("zone")
|
|
431
431
|
assert result is not None, "Required property 'zone' is missing"
|
|
@@ -437,7 +437,7 @@ class NetworkConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
437
437
|
) -> typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, typing.List["NetworkIpNetwork"]]]:
|
|
438
438
|
'''ip_network block.
|
|
439
439
|
|
|
440
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
440
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#ip_network Network#ip_network}
|
|
441
441
|
'''
|
|
442
442
|
result = self._values.get("ip_network")
|
|
443
443
|
return typing.cast(typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, typing.List["NetworkIpNetwork"]]], result)
|
|
@@ -446,7 +446,7 @@ class NetworkConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
446
446
|
def labels(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
|
|
447
447
|
'''User defined key-value pairs to classify the network.
|
|
448
448
|
|
|
449
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
449
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#labels Network#labels}
|
|
450
450
|
'''
|
|
451
451
|
result = self._values.get("labels")
|
|
452
452
|
return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], result)
|
|
@@ -455,7 +455,7 @@ class NetworkConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
455
455
|
def router(self) -> typing.Optional[builtins.str]:
|
|
456
456
|
'''UUID of a router to attach to this network.
|
|
457
457
|
|
|
458
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
458
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#router Network#router}
|
|
459
459
|
'''
|
|
460
460
|
result = self._values.get("router")
|
|
461
461
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
@@ -482,6 +482,7 @@ class NetworkConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
482
482
|
"dhcp_default_route": "dhcpDefaultRoute",
|
|
483
483
|
"dhcp_dns": "dhcpDns",
|
|
484
484
|
"dhcp_routes": "dhcpRoutes",
|
|
485
|
+
"dhcp_routes_configuration": "dhcpRoutesConfiguration",
|
|
485
486
|
"gateway": "gateway",
|
|
486
487
|
},
|
|
487
488
|
)
|
|
@@ -495,17 +496,21 @@ class NetworkIpNetwork:
|
|
|
495
496
|
dhcp_default_route: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
|
|
496
497
|
dhcp_dns: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
497
498
|
dhcp_routes: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
499
|
+
dhcp_routes_configuration: typing.Optional[typing.Union["NetworkIpNetworkDhcpRoutesConfiguration", typing.Dict[builtins.str, typing.Any]]] = None,
|
|
498
500
|
gateway: typing.Optional[builtins.str] = None,
|
|
499
501
|
) -> None:
|
|
500
502
|
'''
|
|
501
|
-
:param address: The CIDR range of the subnet. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
502
|
-
:param dhcp: Is DHCP enabled? Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
503
|
-
:param family: IP address family. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
504
|
-
:param dhcp_default_route: Is the gateway the DHCP default route? Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
505
|
-
:param dhcp_dns: The DNS servers given by DHCP. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
506
|
-
:param dhcp_routes: The additional DHCP classless static routes given by DHCP. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
507
|
-
:param
|
|
503
|
+
:param address: The CIDR range of the subnet. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#address Network#address}
|
|
504
|
+
:param dhcp: Is DHCP enabled? Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#dhcp Network#dhcp}
|
|
505
|
+
:param family: IP address family. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#family Network#family}
|
|
506
|
+
:param dhcp_default_route: Is the gateway the DHCP default route? Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#dhcp_default_route Network#dhcp_default_route}
|
|
507
|
+
:param dhcp_dns: The DNS servers given by DHCP. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#dhcp_dns Network#dhcp_dns}
|
|
508
|
+
:param dhcp_routes: The additional DHCP classless static routes given by DHCP. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#dhcp_routes Network#dhcp_routes}
|
|
509
|
+
:param dhcp_routes_configuration: DHCP routes auto-population configuration. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#dhcp_routes_configuration Network#dhcp_routes_configuration}
|
|
510
|
+
:param gateway: Gateway address given by DHCP. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#gateway Network#gateway}
|
|
508
511
|
'''
|
|
512
|
+
if isinstance(dhcp_routes_configuration, dict):
|
|
513
|
+
dhcp_routes_configuration = NetworkIpNetworkDhcpRoutesConfiguration(**dhcp_routes_configuration)
|
|
509
514
|
if __debug__:
|
|
510
515
|
type_hints = typing.get_type_hints(_typecheckingstub__a0ad6fbb444600379383ae462fe5ae2d8f24c848db9a320e7d111545c9b44b65)
|
|
511
516
|
check_type(argname="argument address", value=address, expected_type=type_hints["address"])
|
|
@@ -514,6 +519,7 @@ class NetworkIpNetwork:
|
|
|
514
519
|
check_type(argname="argument dhcp_default_route", value=dhcp_default_route, expected_type=type_hints["dhcp_default_route"])
|
|
515
520
|
check_type(argname="argument dhcp_dns", value=dhcp_dns, expected_type=type_hints["dhcp_dns"])
|
|
516
521
|
check_type(argname="argument dhcp_routes", value=dhcp_routes, expected_type=type_hints["dhcp_routes"])
|
|
522
|
+
check_type(argname="argument dhcp_routes_configuration", value=dhcp_routes_configuration, expected_type=type_hints["dhcp_routes_configuration"])
|
|
517
523
|
check_type(argname="argument gateway", value=gateway, expected_type=type_hints["gateway"])
|
|
518
524
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
519
525
|
"address": address,
|
|
@@ -526,6 +532,8 @@ class NetworkIpNetwork:
|
|
|
526
532
|
self._values["dhcp_dns"] = dhcp_dns
|
|
527
533
|
if dhcp_routes is not None:
|
|
528
534
|
self._values["dhcp_routes"] = dhcp_routes
|
|
535
|
+
if dhcp_routes_configuration is not None:
|
|
536
|
+
self._values["dhcp_routes_configuration"] = dhcp_routes_configuration
|
|
529
537
|
if gateway is not None:
|
|
530
538
|
self._values["gateway"] = gateway
|
|
531
539
|
|
|
@@ -533,7 +541,7 @@ class NetworkIpNetwork:
|
|
|
533
541
|
def address(self) -> builtins.str:
|
|
534
542
|
'''The CIDR range of the subnet.
|
|
535
543
|
|
|
536
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
544
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#address Network#address}
|
|
537
545
|
'''
|
|
538
546
|
result = self._values.get("address")
|
|
539
547
|
assert result is not None, "Required property 'address' is missing"
|
|
@@ -543,7 +551,7 @@ class NetworkIpNetwork:
|
|
|
543
551
|
def dhcp(self) -> typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]:
|
|
544
552
|
'''Is DHCP enabled?
|
|
545
553
|
|
|
546
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
554
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#dhcp Network#dhcp}
|
|
547
555
|
'''
|
|
548
556
|
result = self._values.get("dhcp")
|
|
549
557
|
assert result is not None, "Required property 'dhcp' is missing"
|
|
@@ -553,7 +561,7 @@ class NetworkIpNetwork:
|
|
|
553
561
|
def family(self) -> builtins.str:
|
|
554
562
|
'''IP address family.
|
|
555
563
|
|
|
556
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
564
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#family Network#family}
|
|
557
565
|
'''
|
|
558
566
|
result = self._values.get("family")
|
|
559
567
|
assert result is not None, "Required property 'family' is missing"
|
|
@@ -565,7 +573,7 @@ class NetworkIpNetwork:
|
|
|
565
573
|
) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
|
|
566
574
|
'''Is the gateway the DHCP default route?
|
|
567
575
|
|
|
568
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
576
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#dhcp_default_route Network#dhcp_default_route}
|
|
569
577
|
'''
|
|
570
578
|
result = self._values.get("dhcp_default_route")
|
|
571
579
|
return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], result)
|
|
@@ -574,7 +582,7 @@ class NetworkIpNetwork:
|
|
|
574
582
|
def dhcp_dns(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
575
583
|
'''The DNS servers given by DHCP.
|
|
576
584
|
|
|
577
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
585
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#dhcp_dns Network#dhcp_dns}
|
|
578
586
|
'''
|
|
579
587
|
result = self._values.get("dhcp_dns")
|
|
580
588
|
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
@@ -583,16 +591,27 @@ class NetworkIpNetwork:
|
|
|
583
591
|
def dhcp_routes(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
584
592
|
'''The additional DHCP classless static routes given by DHCP.
|
|
585
593
|
|
|
586
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
594
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#dhcp_routes Network#dhcp_routes}
|
|
587
595
|
'''
|
|
588
596
|
result = self._values.get("dhcp_routes")
|
|
589
597
|
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
590
598
|
|
|
599
|
+
@builtins.property
|
|
600
|
+
def dhcp_routes_configuration(
|
|
601
|
+
self,
|
|
602
|
+
) -> typing.Optional["NetworkIpNetworkDhcpRoutesConfiguration"]:
|
|
603
|
+
'''DHCP routes auto-population configuration.
|
|
604
|
+
|
|
605
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#dhcp_routes_configuration Network#dhcp_routes_configuration}
|
|
606
|
+
'''
|
|
607
|
+
result = self._values.get("dhcp_routes_configuration")
|
|
608
|
+
return typing.cast(typing.Optional["NetworkIpNetworkDhcpRoutesConfiguration"], result)
|
|
609
|
+
|
|
591
610
|
@builtins.property
|
|
592
611
|
def gateway(self) -> typing.Optional[builtins.str]:
|
|
593
612
|
'''Gateway address given by DHCP.
|
|
594
613
|
|
|
595
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
614
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#gateway Network#gateway}
|
|
596
615
|
'''
|
|
597
616
|
result = self._values.get("gateway")
|
|
598
617
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
@@ -609,6 +628,350 @@ class NetworkIpNetwork:
|
|
|
609
628
|
)
|
|
610
629
|
|
|
611
630
|
|
|
631
|
+
@jsii.data_type(
|
|
632
|
+
jsii_type="@cdktf/provider-upcloud.network.NetworkIpNetworkDhcpRoutesConfiguration",
|
|
633
|
+
jsii_struct_bases=[],
|
|
634
|
+
name_mapping={"effective_routes_auto_population": "effectiveRoutesAutoPopulation"},
|
|
635
|
+
)
|
|
636
|
+
class NetworkIpNetworkDhcpRoutesConfiguration:
|
|
637
|
+
def __init__(
|
|
638
|
+
self,
|
|
639
|
+
*,
|
|
640
|
+
effective_routes_auto_population: typing.Optional[typing.Union["NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation", typing.Dict[builtins.str, typing.Any]]] = None,
|
|
641
|
+
) -> None:
|
|
642
|
+
'''
|
|
643
|
+
:param effective_routes_auto_population: Automatically populate effective routes. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#effective_routes_auto_population Network#effective_routes_auto_population}
|
|
644
|
+
'''
|
|
645
|
+
if isinstance(effective_routes_auto_population, dict):
|
|
646
|
+
effective_routes_auto_population = NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation(**effective_routes_auto_population)
|
|
647
|
+
if __debug__:
|
|
648
|
+
type_hints = typing.get_type_hints(_typecheckingstub__e093a663a7e17f847af4e4e7eae4c852310875eafb27f4a72edc8348705011fd)
|
|
649
|
+
check_type(argname="argument effective_routes_auto_population", value=effective_routes_auto_population, expected_type=type_hints["effective_routes_auto_population"])
|
|
650
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
651
|
+
if effective_routes_auto_population is not None:
|
|
652
|
+
self._values["effective_routes_auto_population"] = effective_routes_auto_population
|
|
653
|
+
|
|
654
|
+
@builtins.property
|
|
655
|
+
def effective_routes_auto_population(
|
|
656
|
+
self,
|
|
657
|
+
) -> typing.Optional["NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation"]:
|
|
658
|
+
'''Automatically populate effective routes.
|
|
659
|
+
|
|
660
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#effective_routes_auto_population Network#effective_routes_auto_population}
|
|
661
|
+
'''
|
|
662
|
+
result = self._values.get("effective_routes_auto_population")
|
|
663
|
+
return typing.cast(typing.Optional["NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation"], result)
|
|
664
|
+
|
|
665
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
666
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
667
|
+
|
|
668
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
669
|
+
return not (rhs == self)
|
|
670
|
+
|
|
671
|
+
def __repr__(self) -> str:
|
|
672
|
+
return "NetworkIpNetworkDhcpRoutesConfiguration(%s)" % ", ".join(
|
|
673
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
674
|
+
)
|
|
675
|
+
|
|
676
|
+
|
|
677
|
+
@jsii.data_type(
|
|
678
|
+
jsii_type="@cdktf/provider-upcloud.network.NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation",
|
|
679
|
+
jsii_struct_bases=[],
|
|
680
|
+
name_mapping={
|
|
681
|
+
"enabled": "enabled",
|
|
682
|
+
"exclude_by_source": "excludeBySource",
|
|
683
|
+
"filter_by_destination": "filterByDestination",
|
|
684
|
+
"filter_by_route_type": "filterByRouteType",
|
|
685
|
+
},
|
|
686
|
+
)
|
|
687
|
+
class NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation:
|
|
688
|
+
def __init__(
|
|
689
|
+
self,
|
|
690
|
+
*,
|
|
691
|
+
enabled: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
|
|
692
|
+
exclude_by_source: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
693
|
+
filter_by_destination: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
694
|
+
filter_by_route_type: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
695
|
+
) -> None:
|
|
696
|
+
'''
|
|
697
|
+
:param enabled: Enable or disable route auto-population. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#enabled Network#enabled}
|
|
698
|
+
:param exclude_by_source: Exclude routes coming from specific sources (router-connected-networks, static-route). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#exclude_by_source Network#exclude_by_source}
|
|
699
|
+
:param filter_by_destination: CIDR destinations to include when auto-populating routes. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#filter_by_destination Network#filter_by_destination}
|
|
700
|
+
:param filter_by_route_type: Include only routes of given types (service, user). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#filter_by_route_type Network#filter_by_route_type}
|
|
701
|
+
'''
|
|
702
|
+
if __debug__:
|
|
703
|
+
type_hints = typing.get_type_hints(_typecheckingstub__a6023eec1db2445dd43f37ead4e02235e6ec46568998841c16890561375dd178)
|
|
704
|
+
check_type(argname="argument enabled", value=enabled, expected_type=type_hints["enabled"])
|
|
705
|
+
check_type(argname="argument exclude_by_source", value=exclude_by_source, expected_type=type_hints["exclude_by_source"])
|
|
706
|
+
check_type(argname="argument filter_by_destination", value=filter_by_destination, expected_type=type_hints["filter_by_destination"])
|
|
707
|
+
check_type(argname="argument filter_by_route_type", value=filter_by_route_type, expected_type=type_hints["filter_by_route_type"])
|
|
708
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
709
|
+
if enabled is not None:
|
|
710
|
+
self._values["enabled"] = enabled
|
|
711
|
+
if exclude_by_source is not None:
|
|
712
|
+
self._values["exclude_by_source"] = exclude_by_source
|
|
713
|
+
if filter_by_destination is not None:
|
|
714
|
+
self._values["filter_by_destination"] = filter_by_destination
|
|
715
|
+
if filter_by_route_type is not None:
|
|
716
|
+
self._values["filter_by_route_type"] = filter_by_route_type
|
|
717
|
+
|
|
718
|
+
@builtins.property
|
|
719
|
+
def enabled(
|
|
720
|
+
self,
|
|
721
|
+
) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
|
|
722
|
+
'''Enable or disable route auto-population.
|
|
723
|
+
|
|
724
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#enabled Network#enabled}
|
|
725
|
+
'''
|
|
726
|
+
result = self._values.get("enabled")
|
|
727
|
+
return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], result)
|
|
728
|
+
|
|
729
|
+
@builtins.property
|
|
730
|
+
def exclude_by_source(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
731
|
+
'''Exclude routes coming from specific sources (router-connected-networks, static-route).
|
|
732
|
+
|
|
733
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#exclude_by_source Network#exclude_by_source}
|
|
734
|
+
'''
|
|
735
|
+
result = self._values.get("exclude_by_source")
|
|
736
|
+
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
737
|
+
|
|
738
|
+
@builtins.property
|
|
739
|
+
def filter_by_destination(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
740
|
+
'''CIDR destinations to include when auto-populating routes.
|
|
741
|
+
|
|
742
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#filter_by_destination Network#filter_by_destination}
|
|
743
|
+
'''
|
|
744
|
+
result = self._values.get("filter_by_destination")
|
|
745
|
+
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
746
|
+
|
|
747
|
+
@builtins.property
|
|
748
|
+
def filter_by_route_type(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
749
|
+
'''Include only routes of given types (service, user).
|
|
750
|
+
|
|
751
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#filter_by_route_type Network#filter_by_route_type}
|
|
752
|
+
'''
|
|
753
|
+
result = self._values.get("filter_by_route_type")
|
|
754
|
+
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
755
|
+
|
|
756
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
757
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
758
|
+
|
|
759
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
760
|
+
return not (rhs == self)
|
|
761
|
+
|
|
762
|
+
def __repr__(self) -> str:
|
|
763
|
+
return "NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation(%s)" % ", ".join(
|
|
764
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
765
|
+
)
|
|
766
|
+
|
|
767
|
+
|
|
768
|
+
class NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulationOutputReference(
|
|
769
|
+
_cdktf_9a9027ec.ComplexObject,
|
|
770
|
+
metaclass=jsii.JSIIMeta,
|
|
771
|
+
jsii_type="@cdktf/provider-upcloud.network.NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulationOutputReference",
|
|
772
|
+
):
|
|
773
|
+
def __init__(
|
|
774
|
+
self,
|
|
775
|
+
terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
|
|
776
|
+
terraform_attribute: builtins.str,
|
|
777
|
+
) -> None:
|
|
778
|
+
'''
|
|
779
|
+
:param terraform_resource: The parent resource.
|
|
780
|
+
:param terraform_attribute: The attribute on the parent resource this class is referencing.
|
|
781
|
+
'''
|
|
782
|
+
if __debug__:
|
|
783
|
+
type_hints = typing.get_type_hints(_typecheckingstub__5154725e134af25091da6fe15aec50b950f3ec115b4275a8daaf555f42d7bef3)
|
|
784
|
+
check_type(argname="argument terraform_resource", value=terraform_resource, expected_type=type_hints["terraform_resource"])
|
|
785
|
+
check_type(argname="argument terraform_attribute", value=terraform_attribute, expected_type=type_hints["terraform_attribute"])
|
|
786
|
+
jsii.create(self.__class__, self, [terraform_resource, terraform_attribute])
|
|
787
|
+
|
|
788
|
+
@jsii.member(jsii_name="resetEnabled")
|
|
789
|
+
def reset_enabled(self) -> None:
|
|
790
|
+
return typing.cast(None, jsii.invoke(self, "resetEnabled", []))
|
|
791
|
+
|
|
792
|
+
@jsii.member(jsii_name="resetExcludeBySource")
|
|
793
|
+
def reset_exclude_by_source(self) -> None:
|
|
794
|
+
return typing.cast(None, jsii.invoke(self, "resetExcludeBySource", []))
|
|
795
|
+
|
|
796
|
+
@jsii.member(jsii_name="resetFilterByDestination")
|
|
797
|
+
def reset_filter_by_destination(self) -> None:
|
|
798
|
+
return typing.cast(None, jsii.invoke(self, "resetFilterByDestination", []))
|
|
799
|
+
|
|
800
|
+
@jsii.member(jsii_name="resetFilterByRouteType")
|
|
801
|
+
def reset_filter_by_route_type(self) -> None:
|
|
802
|
+
return typing.cast(None, jsii.invoke(self, "resetFilterByRouteType", []))
|
|
803
|
+
|
|
804
|
+
@builtins.property
|
|
805
|
+
@jsii.member(jsii_name="enabledInput")
|
|
806
|
+
def enabled_input(
|
|
807
|
+
self,
|
|
808
|
+
) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
|
|
809
|
+
return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], jsii.get(self, "enabledInput"))
|
|
810
|
+
|
|
811
|
+
@builtins.property
|
|
812
|
+
@jsii.member(jsii_name="excludeBySourceInput")
|
|
813
|
+
def exclude_by_source_input(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
814
|
+
return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "excludeBySourceInput"))
|
|
815
|
+
|
|
816
|
+
@builtins.property
|
|
817
|
+
@jsii.member(jsii_name="filterByDestinationInput")
|
|
818
|
+
def filter_by_destination_input(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
819
|
+
return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "filterByDestinationInput"))
|
|
820
|
+
|
|
821
|
+
@builtins.property
|
|
822
|
+
@jsii.member(jsii_name="filterByRouteTypeInput")
|
|
823
|
+
def filter_by_route_type_input(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
824
|
+
return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "filterByRouteTypeInput"))
|
|
825
|
+
|
|
826
|
+
@builtins.property
|
|
827
|
+
@jsii.member(jsii_name="enabled")
|
|
828
|
+
def enabled(self) -> typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]:
|
|
829
|
+
return typing.cast(typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable], jsii.get(self, "enabled"))
|
|
830
|
+
|
|
831
|
+
@enabled.setter
|
|
832
|
+
def enabled(
|
|
833
|
+
self,
|
|
834
|
+
value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
|
|
835
|
+
) -> None:
|
|
836
|
+
if __debug__:
|
|
837
|
+
type_hints = typing.get_type_hints(_typecheckingstub__eb632c0e7bc51fc09c3c5a300ef5673385f19718a84dd01eb25d5d086d85129b)
|
|
838
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
839
|
+
jsii.set(self, "enabled", value) # pyright: ignore[reportArgumentType]
|
|
840
|
+
|
|
841
|
+
@builtins.property
|
|
842
|
+
@jsii.member(jsii_name="excludeBySource")
|
|
843
|
+
def exclude_by_source(self) -> typing.List[builtins.str]:
|
|
844
|
+
return typing.cast(typing.List[builtins.str], jsii.get(self, "excludeBySource"))
|
|
845
|
+
|
|
846
|
+
@exclude_by_source.setter
|
|
847
|
+
def exclude_by_source(self, value: typing.List[builtins.str]) -> None:
|
|
848
|
+
if __debug__:
|
|
849
|
+
type_hints = typing.get_type_hints(_typecheckingstub__d1b462c5215dd6903264ae102fcffcffe99df9fcc2f60b855c473ce63f0a6db0)
|
|
850
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
851
|
+
jsii.set(self, "excludeBySource", value) # pyright: ignore[reportArgumentType]
|
|
852
|
+
|
|
853
|
+
@builtins.property
|
|
854
|
+
@jsii.member(jsii_name="filterByDestination")
|
|
855
|
+
def filter_by_destination(self) -> typing.List[builtins.str]:
|
|
856
|
+
return typing.cast(typing.List[builtins.str], jsii.get(self, "filterByDestination"))
|
|
857
|
+
|
|
858
|
+
@filter_by_destination.setter
|
|
859
|
+
def filter_by_destination(self, value: typing.List[builtins.str]) -> None:
|
|
860
|
+
if __debug__:
|
|
861
|
+
type_hints = typing.get_type_hints(_typecheckingstub__729ada18fe84088b56efb0dc585bbe0cd533f9fca0b15a0a000cd56d4867e75f)
|
|
862
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
863
|
+
jsii.set(self, "filterByDestination", value) # pyright: ignore[reportArgumentType]
|
|
864
|
+
|
|
865
|
+
@builtins.property
|
|
866
|
+
@jsii.member(jsii_name="filterByRouteType")
|
|
867
|
+
def filter_by_route_type(self) -> typing.List[builtins.str]:
|
|
868
|
+
return typing.cast(typing.List[builtins.str], jsii.get(self, "filterByRouteType"))
|
|
869
|
+
|
|
870
|
+
@filter_by_route_type.setter
|
|
871
|
+
def filter_by_route_type(self, value: typing.List[builtins.str]) -> None:
|
|
872
|
+
if __debug__:
|
|
873
|
+
type_hints = typing.get_type_hints(_typecheckingstub__0ea604314bfdc380cb27e6f1e43132d5e390385ac5a57746a6aa96e64b75482c)
|
|
874
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
875
|
+
jsii.set(self, "filterByRouteType", value) # pyright: ignore[reportArgumentType]
|
|
876
|
+
|
|
877
|
+
@builtins.property
|
|
878
|
+
@jsii.member(jsii_name="internalValue")
|
|
879
|
+
def internal_value(
|
|
880
|
+
self,
|
|
881
|
+
) -> typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation]]:
|
|
882
|
+
return typing.cast(typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation]], jsii.get(self, "internalValue"))
|
|
883
|
+
|
|
884
|
+
@internal_value.setter
|
|
885
|
+
def internal_value(
|
|
886
|
+
self,
|
|
887
|
+
value: typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation]],
|
|
888
|
+
) -> None:
|
|
889
|
+
if __debug__:
|
|
890
|
+
type_hints = typing.get_type_hints(_typecheckingstub__6b09fc8a571d92e94a092e6c95e332bfd1bf3163485b318f9949b0ffc4190f93)
|
|
891
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
892
|
+
jsii.set(self, "internalValue", value) # pyright: ignore[reportArgumentType]
|
|
893
|
+
|
|
894
|
+
|
|
895
|
+
class NetworkIpNetworkDhcpRoutesConfigurationOutputReference(
|
|
896
|
+
_cdktf_9a9027ec.ComplexObject,
|
|
897
|
+
metaclass=jsii.JSIIMeta,
|
|
898
|
+
jsii_type="@cdktf/provider-upcloud.network.NetworkIpNetworkDhcpRoutesConfigurationOutputReference",
|
|
899
|
+
):
|
|
900
|
+
def __init__(
|
|
901
|
+
self,
|
|
902
|
+
terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
|
|
903
|
+
terraform_attribute: builtins.str,
|
|
904
|
+
) -> None:
|
|
905
|
+
'''
|
|
906
|
+
:param terraform_resource: The parent resource.
|
|
907
|
+
:param terraform_attribute: The attribute on the parent resource this class is referencing.
|
|
908
|
+
'''
|
|
909
|
+
if __debug__:
|
|
910
|
+
type_hints = typing.get_type_hints(_typecheckingstub__0e4f8479329456b927c893ac19827b372c450c70ba1fc959464d32e247c375a1)
|
|
911
|
+
check_type(argname="argument terraform_resource", value=terraform_resource, expected_type=type_hints["terraform_resource"])
|
|
912
|
+
check_type(argname="argument terraform_attribute", value=terraform_attribute, expected_type=type_hints["terraform_attribute"])
|
|
913
|
+
jsii.create(self.__class__, self, [terraform_resource, terraform_attribute])
|
|
914
|
+
|
|
915
|
+
@jsii.member(jsii_name="putEffectiveRoutesAutoPopulation")
|
|
916
|
+
def put_effective_routes_auto_population(
|
|
917
|
+
self,
|
|
918
|
+
*,
|
|
919
|
+
enabled: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
|
|
920
|
+
exclude_by_source: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
921
|
+
filter_by_destination: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
922
|
+
filter_by_route_type: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
923
|
+
) -> None:
|
|
924
|
+
'''
|
|
925
|
+
:param enabled: Enable or disable route auto-population. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#enabled Network#enabled}
|
|
926
|
+
:param exclude_by_source: Exclude routes coming from specific sources (router-connected-networks, static-route). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#exclude_by_source Network#exclude_by_source}
|
|
927
|
+
:param filter_by_destination: CIDR destinations to include when auto-populating routes. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#filter_by_destination Network#filter_by_destination}
|
|
928
|
+
:param filter_by_route_type: Include only routes of given types (service, user). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#filter_by_route_type Network#filter_by_route_type}
|
|
929
|
+
'''
|
|
930
|
+
value = NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation(
|
|
931
|
+
enabled=enabled,
|
|
932
|
+
exclude_by_source=exclude_by_source,
|
|
933
|
+
filter_by_destination=filter_by_destination,
|
|
934
|
+
filter_by_route_type=filter_by_route_type,
|
|
935
|
+
)
|
|
936
|
+
|
|
937
|
+
return typing.cast(None, jsii.invoke(self, "putEffectiveRoutesAutoPopulation", [value]))
|
|
938
|
+
|
|
939
|
+
@jsii.member(jsii_name="resetEffectiveRoutesAutoPopulation")
|
|
940
|
+
def reset_effective_routes_auto_population(self) -> None:
|
|
941
|
+
return typing.cast(None, jsii.invoke(self, "resetEffectiveRoutesAutoPopulation", []))
|
|
942
|
+
|
|
943
|
+
@builtins.property
|
|
944
|
+
@jsii.member(jsii_name="effectiveRoutesAutoPopulation")
|
|
945
|
+
def effective_routes_auto_population(
|
|
946
|
+
self,
|
|
947
|
+
) -> NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulationOutputReference:
|
|
948
|
+
return typing.cast(NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulationOutputReference, jsii.get(self, "effectiveRoutesAutoPopulation"))
|
|
949
|
+
|
|
950
|
+
@builtins.property
|
|
951
|
+
@jsii.member(jsii_name="effectiveRoutesAutoPopulationInput")
|
|
952
|
+
def effective_routes_auto_population_input(
|
|
953
|
+
self,
|
|
954
|
+
) -> typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation]]:
|
|
955
|
+
return typing.cast(typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation]], jsii.get(self, "effectiveRoutesAutoPopulationInput"))
|
|
956
|
+
|
|
957
|
+
@builtins.property
|
|
958
|
+
@jsii.member(jsii_name="internalValue")
|
|
959
|
+
def internal_value(
|
|
960
|
+
self,
|
|
961
|
+
) -> typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, NetworkIpNetworkDhcpRoutesConfiguration]]:
|
|
962
|
+
return typing.cast(typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, NetworkIpNetworkDhcpRoutesConfiguration]], jsii.get(self, "internalValue"))
|
|
963
|
+
|
|
964
|
+
@internal_value.setter
|
|
965
|
+
def internal_value(
|
|
966
|
+
self,
|
|
967
|
+
value: typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, NetworkIpNetworkDhcpRoutesConfiguration]],
|
|
968
|
+
) -> None:
|
|
969
|
+
if __debug__:
|
|
970
|
+
type_hints = typing.get_type_hints(_typecheckingstub__aec9916471abe705733f917c52d9aa147f3905fe68e15f94c8dfeea2115a2f87)
|
|
971
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
972
|
+
jsii.set(self, "internalValue", value) # pyright: ignore[reportArgumentType]
|
|
973
|
+
|
|
974
|
+
|
|
612
975
|
class NetworkIpNetworkList(
|
|
613
976
|
_cdktf_9a9027ec.ComplexList,
|
|
614
977
|
metaclass=jsii.JSIIMeta,
|
|
@@ -725,6 +1088,21 @@ class NetworkIpNetworkOutputReference(
|
|
|
725
1088
|
check_type(argname="argument complex_object_is_from_set", value=complex_object_is_from_set, expected_type=type_hints["complex_object_is_from_set"])
|
|
726
1089
|
jsii.create(self.__class__, self, [terraform_resource, terraform_attribute, complex_object_index, complex_object_is_from_set])
|
|
727
1090
|
|
|
1091
|
+
@jsii.member(jsii_name="putDhcpRoutesConfiguration")
|
|
1092
|
+
def put_dhcp_routes_configuration(
|
|
1093
|
+
self,
|
|
1094
|
+
*,
|
|
1095
|
+
effective_routes_auto_population: typing.Optional[typing.Union[NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1096
|
+
) -> None:
|
|
1097
|
+
'''
|
|
1098
|
+
:param effective_routes_auto_population: Automatically populate effective routes. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.26.0/docs/resources/network#effective_routes_auto_population Network#effective_routes_auto_population}
|
|
1099
|
+
'''
|
|
1100
|
+
value = NetworkIpNetworkDhcpRoutesConfiguration(
|
|
1101
|
+
effective_routes_auto_population=effective_routes_auto_population
|
|
1102
|
+
)
|
|
1103
|
+
|
|
1104
|
+
return typing.cast(None, jsii.invoke(self, "putDhcpRoutesConfiguration", [value]))
|
|
1105
|
+
|
|
728
1106
|
@jsii.member(jsii_name="resetDhcpDefaultRoute")
|
|
729
1107
|
def reset_dhcp_default_route(self) -> None:
|
|
730
1108
|
return typing.cast(None, jsii.invoke(self, "resetDhcpDefaultRoute", []))
|
|
@@ -737,10 +1115,21 @@ class NetworkIpNetworkOutputReference(
|
|
|
737
1115
|
def reset_dhcp_routes(self) -> None:
|
|
738
1116
|
return typing.cast(None, jsii.invoke(self, "resetDhcpRoutes", []))
|
|
739
1117
|
|
|
1118
|
+
@jsii.member(jsii_name="resetDhcpRoutesConfiguration")
|
|
1119
|
+
def reset_dhcp_routes_configuration(self) -> None:
|
|
1120
|
+
return typing.cast(None, jsii.invoke(self, "resetDhcpRoutesConfiguration", []))
|
|
1121
|
+
|
|
740
1122
|
@jsii.member(jsii_name="resetGateway")
|
|
741
1123
|
def reset_gateway(self) -> None:
|
|
742
1124
|
return typing.cast(None, jsii.invoke(self, "resetGateway", []))
|
|
743
1125
|
|
|
1126
|
+
@builtins.property
|
|
1127
|
+
@jsii.member(jsii_name="dhcpRoutesConfiguration")
|
|
1128
|
+
def dhcp_routes_configuration(
|
|
1129
|
+
self,
|
|
1130
|
+
) -> NetworkIpNetworkDhcpRoutesConfigurationOutputReference:
|
|
1131
|
+
return typing.cast(NetworkIpNetworkDhcpRoutesConfigurationOutputReference, jsii.get(self, "dhcpRoutesConfiguration"))
|
|
1132
|
+
|
|
744
1133
|
@builtins.property
|
|
745
1134
|
@jsii.member(jsii_name="addressInput")
|
|
746
1135
|
def address_input(self) -> typing.Optional[builtins.str]:
|
|
@@ -765,6 +1154,13 @@ class NetworkIpNetworkOutputReference(
|
|
|
765
1154
|
) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
|
|
766
1155
|
return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], jsii.get(self, "dhcpInput"))
|
|
767
1156
|
|
|
1157
|
+
@builtins.property
|
|
1158
|
+
@jsii.member(jsii_name="dhcpRoutesConfigurationInput")
|
|
1159
|
+
def dhcp_routes_configuration_input(
|
|
1160
|
+
self,
|
|
1161
|
+
) -> typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, NetworkIpNetworkDhcpRoutesConfiguration]]:
|
|
1162
|
+
return typing.cast(typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, NetworkIpNetworkDhcpRoutesConfiguration]], jsii.get(self, "dhcpRoutesConfigurationInput"))
|
|
1163
|
+
|
|
768
1164
|
@builtins.property
|
|
769
1165
|
@jsii.member(jsii_name="dhcpRoutesInput")
|
|
770
1166
|
def dhcp_routes_input(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
@@ -894,6 +1290,10 @@ __all__ = [
|
|
|
894
1290
|
"Network",
|
|
895
1291
|
"NetworkConfig",
|
|
896
1292
|
"NetworkIpNetwork",
|
|
1293
|
+
"NetworkIpNetworkDhcpRoutesConfiguration",
|
|
1294
|
+
"NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation",
|
|
1295
|
+
"NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulationOutputReference",
|
|
1296
|
+
"NetworkIpNetworkDhcpRoutesConfigurationOutputReference",
|
|
897
1297
|
"NetworkIpNetworkList",
|
|
898
1298
|
"NetworkIpNetworkOutputReference",
|
|
899
1299
|
]
|
|
@@ -985,11 +1385,79 @@ def _typecheckingstub__a0ad6fbb444600379383ae462fe5ae2d8f24c848db9a320e7d111545c
|
|
|
985
1385
|
dhcp_default_route: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
|
|
986
1386
|
dhcp_dns: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
987
1387
|
dhcp_routes: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
1388
|
+
dhcp_routes_configuration: typing.Optional[typing.Union[NetworkIpNetworkDhcpRoutesConfiguration, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
988
1389
|
gateway: typing.Optional[builtins.str] = None,
|
|
989
1390
|
) -> None:
|
|
990
1391
|
"""Type checking stubs"""
|
|
991
1392
|
pass
|
|
992
1393
|
|
|
1394
|
+
def _typecheckingstub__e093a663a7e17f847af4e4e7eae4c852310875eafb27f4a72edc8348705011fd(
|
|
1395
|
+
*,
|
|
1396
|
+
effective_routes_auto_population: typing.Optional[typing.Union[NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1397
|
+
) -> None:
|
|
1398
|
+
"""Type checking stubs"""
|
|
1399
|
+
pass
|
|
1400
|
+
|
|
1401
|
+
def _typecheckingstub__a6023eec1db2445dd43f37ead4e02235e6ec46568998841c16890561375dd178(
|
|
1402
|
+
*,
|
|
1403
|
+
enabled: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
|
|
1404
|
+
exclude_by_source: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
1405
|
+
filter_by_destination: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
1406
|
+
filter_by_route_type: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
1407
|
+
) -> None:
|
|
1408
|
+
"""Type checking stubs"""
|
|
1409
|
+
pass
|
|
1410
|
+
|
|
1411
|
+
def _typecheckingstub__5154725e134af25091da6fe15aec50b950f3ec115b4275a8daaf555f42d7bef3(
|
|
1412
|
+
terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
|
|
1413
|
+
terraform_attribute: builtins.str,
|
|
1414
|
+
) -> None:
|
|
1415
|
+
"""Type checking stubs"""
|
|
1416
|
+
pass
|
|
1417
|
+
|
|
1418
|
+
def _typecheckingstub__eb632c0e7bc51fc09c3c5a300ef5673385f19718a84dd01eb25d5d086d85129b(
|
|
1419
|
+
value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
|
|
1420
|
+
) -> None:
|
|
1421
|
+
"""Type checking stubs"""
|
|
1422
|
+
pass
|
|
1423
|
+
|
|
1424
|
+
def _typecheckingstub__d1b462c5215dd6903264ae102fcffcffe99df9fcc2f60b855c473ce63f0a6db0(
|
|
1425
|
+
value: typing.List[builtins.str],
|
|
1426
|
+
) -> None:
|
|
1427
|
+
"""Type checking stubs"""
|
|
1428
|
+
pass
|
|
1429
|
+
|
|
1430
|
+
def _typecheckingstub__729ada18fe84088b56efb0dc585bbe0cd533f9fca0b15a0a000cd56d4867e75f(
|
|
1431
|
+
value: typing.List[builtins.str],
|
|
1432
|
+
) -> None:
|
|
1433
|
+
"""Type checking stubs"""
|
|
1434
|
+
pass
|
|
1435
|
+
|
|
1436
|
+
def _typecheckingstub__0ea604314bfdc380cb27e6f1e43132d5e390385ac5a57746a6aa96e64b75482c(
|
|
1437
|
+
value: typing.List[builtins.str],
|
|
1438
|
+
) -> None:
|
|
1439
|
+
"""Type checking stubs"""
|
|
1440
|
+
pass
|
|
1441
|
+
|
|
1442
|
+
def _typecheckingstub__6b09fc8a571d92e94a092e6c95e332bfd1bf3163485b318f9949b0ffc4190f93(
|
|
1443
|
+
value: typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, NetworkIpNetworkDhcpRoutesConfigurationEffectiveRoutesAutoPopulation]],
|
|
1444
|
+
) -> None:
|
|
1445
|
+
"""Type checking stubs"""
|
|
1446
|
+
pass
|
|
1447
|
+
|
|
1448
|
+
def _typecheckingstub__0e4f8479329456b927c893ac19827b372c450c70ba1fc959464d32e247c375a1(
|
|
1449
|
+
terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
|
|
1450
|
+
terraform_attribute: builtins.str,
|
|
1451
|
+
) -> None:
|
|
1452
|
+
"""Type checking stubs"""
|
|
1453
|
+
pass
|
|
1454
|
+
|
|
1455
|
+
def _typecheckingstub__aec9916471abe705733f917c52d9aa147f3905fe68e15f94c8dfeea2115a2f87(
|
|
1456
|
+
value: typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, NetworkIpNetworkDhcpRoutesConfiguration]],
|
|
1457
|
+
) -> None:
|
|
1458
|
+
"""Type checking stubs"""
|
|
1459
|
+
pass
|
|
1460
|
+
|
|
993
1461
|
def _typecheckingstub__d075c5e124ac073e3ebfbc4057a65313dec6e4845a13341f7cf80b6c0d2c183c(
|
|
994
1462
|
terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
|
|
995
1463
|
terraform_attribute: builtins.str,
|