cdktf-cdktf-provider-upcloud 14.21.0__py3-none-any.whl → 15.0.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.
- cdktf_cdktf_provider_upcloud/__init__.py +5 -3
- cdktf_cdktf_provider_upcloud/_jsii/__init__.py +2 -2
- cdktf_cdktf_provider_upcloud/_jsii/provider-upcloud@15.0.0.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 +7 -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 +41 -41
- cdktf_cdktf_provider_upcloud/floating_ip_address/__init__.py +16 -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 +82 -31
- cdktf_cdktf_provider_upcloud/kubernetes_node_group/__init__.py +58 -58
- cdktf_cdktf_provider_upcloud/loadbalancer/__init__.py +39 -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 +201 -201
- cdktf_cdktf_provider_upcloud/managed_database_opensearch/__init__.py +555 -555
- cdktf_cdktf_provider_upcloud/managed_database_postgresql/__init__.py +360 -360
- 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 +33 -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 +483 -0
- cdktf_cdktf_provider_upcloud/storage_template/__init__.py +13 -13
- cdktf_cdktf_provider_upcloud/tag/__init__.py +16 -16
- {cdktf_cdktf_provider_upcloud-14.21.0.dist-info → cdktf_cdktf_provider_upcloud-15.0.0.dist-info}/METADATA +6 -6
- cdktf_cdktf_provider_upcloud-15.0.0.dist-info/RECORD +68 -0
- cdktf_cdktf_provider_upcloud/_jsii/provider-upcloud@14.21.0.jsii.tgz +0 -0
- cdktf_cdktf_provider_upcloud-14.21.0.dist-info/RECORD +0 -67
- {cdktf_cdktf_provider_upcloud-14.21.0.dist-info → cdktf_cdktf_provider_upcloud-15.0.0.dist-info}/LICENSE +0 -0
- {cdktf_cdktf_provider_upcloud-14.21.0.dist-info → cdktf_cdktf_provider_upcloud-15.0.0.dist-info}/WHEEL +0 -0
- {cdktf_cdktf_provider_upcloud-14.21.0.dist-info → cdktf_cdktf_provider_upcloud-15.0.0.dist-info}/top_level.txt +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
r'''
|
|
2
2
|
# `upcloud_kubernetes_cluster`
|
|
3
3
|
|
|
4
|
-
Refer to the Terraform Registry for docs: [`upcloud_kubernetes_cluster`](https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
4
|
+
Refer to the Terraform Registry for docs: [`upcloud_kubernetes_cluster`](https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster).
|
|
5
5
|
'''
|
|
6
6
|
from pkgutil import extend_path
|
|
7
7
|
__path__ = extend_path(__path__, __name__)
|
|
@@ -44,7 +44,7 @@ class KubernetesCluster(
|
|
|
44
44
|
metaclass=jsii.JSIIMeta,
|
|
45
45
|
jsii_type="@cdktf/provider-upcloud.kubernetesCluster.KubernetesCluster",
|
|
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.22.0/docs/resources/kubernetes_cluster upcloud_kubernetes_cluster}.'''
|
|
48
48
|
|
|
49
49
|
def __init__(
|
|
50
50
|
self,
|
|
@@ -59,6 +59,7 @@ class KubernetesCluster(
|
|
|
59
59
|
plan: typing.Optional[builtins.str] = None,
|
|
60
60
|
private_node_groups: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
|
|
61
61
|
storage_encryption: typing.Optional[builtins.str] = None,
|
|
62
|
+
upgrade_strategy_type: typing.Optional[builtins.str] = None,
|
|
62
63
|
version: typing.Optional[builtins.str] = None,
|
|
63
64
|
connection: typing.Optional[typing.Union[typing.Union[_cdktf_9a9027ec.SSHProvisionerConnection, typing.Dict[builtins.str, typing.Any]], typing.Union[_cdktf_9a9027ec.WinrmProvisionerConnection, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
64
65
|
count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
|
|
@@ -68,19 +69,20 @@ class KubernetesCluster(
|
|
|
68
69
|
provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
|
|
69
70
|
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,
|
|
70
71
|
) -> None:
|
|
71
|
-
'''Create a new {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
72
|
+
'''Create a new {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster upcloud_kubernetes_cluster} Resource.
|
|
72
73
|
|
|
73
74
|
:param scope: The scope in which to define this construct.
|
|
74
75
|
:param id: The scoped construct ID. Must be unique amongst siblings in the same scope
|
|
75
|
-
:param control_plane_ip_filter: IP addresses or IP ranges in CIDR format which are allowed to access the cluster control plane. To allow access from any source, use ``["0.0.0.0/0"]``. To deny access from all sources, use ``[]``. Values set here do not restrict access to node groups or exposed Kubernetes services. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
76
|
-
:param name: Cluster name. Needs to be unique within the account. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
77
|
-
:param network: Network ID for the cluster to run in. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
78
|
-
:param zone: Zone in which the Kubernetes cluster will be hosted, 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.
|
|
79
|
-
:param labels: User defined key-value pairs to classify the cluster. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
80
|
-
:param plan: The pricing plan used for the cluster. You can list available plans with ``upctl kubernetes plans``. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
81
|
-
:param private_node_groups: Enable private node groups. Private node groups requires a network that is routed through NAT gateway. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
82
|
-
:param storage_encryption: Set default storage encryption strategy for all nodes in the cluster. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
83
|
-
:param
|
|
76
|
+
:param control_plane_ip_filter: IP addresses or IP ranges in CIDR format which are allowed to access the cluster control plane. To allow access from any source, use ``["0.0.0.0/0"]``. To deny access from all sources, use ``[]``. Values set here do not restrict access to node groups or exposed Kubernetes services. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#control_plane_ip_filter KubernetesCluster#control_plane_ip_filter}
|
|
77
|
+
:param name: Cluster name. Needs to be unique within the account. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#name KubernetesCluster#name}
|
|
78
|
+
:param network: Network ID for the cluster to run in. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#network KubernetesCluster#network}
|
|
79
|
+
:param zone: Zone in which the Kubernetes cluster will be hosted, 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.22.0/docs/resources/kubernetes_cluster#zone KubernetesCluster#zone}
|
|
80
|
+
:param labels: User defined key-value pairs to classify the cluster. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#labels KubernetesCluster#labels}
|
|
81
|
+
:param plan: The pricing plan used for the cluster. You can list available plans with ``upctl kubernetes plans``. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#plan KubernetesCluster#plan}
|
|
82
|
+
:param private_node_groups: Enable private node groups. Private node groups requires a network that is routed through NAT gateway. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#private_node_groups KubernetesCluster#private_node_groups}
|
|
83
|
+
:param storage_encryption: Set default storage encryption strategy for all nodes in the cluster. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#storage_encryption KubernetesCluster#storage_encryption}
|
|
84
|
+
:param upgrade_strategy_type: The upgrade strategy to use when changing the cluster ``version``. If not set, ``manual`` strategy will be used by default. When using ``manual`` strategy, you must replace the existing node-groups to update them. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#upgrade_strategy_type KubernetesCluster#upgrade_strategy_type}
|
|
85
|
+
:param version: Kubernetes version ID, e.g. ``1.31``. You can list available version IDs with ``upctl kubernetes versions``. Note that when changing the cluster version, ``upgrade_strategy`` will be taken into account. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#version KubernetesCluster#version}
|
|
84
86
|
:param connection:
|
|
85
87
|
:param count:
|
|
86
88
|
:param depends_on:
|
|
@@ -102,6 +104,7 @@ class KubernetesCluster(
|
|
|
102
104
|
plan=plan,
|
|
103
105
|
private_node_groups=private_node_groups,
|
|
104
106
|
storage_encryption=storage_encryption,
|
|
107
|
+
upgrade_strategy_type=upgrade_strategy_type,
|
|
105
108
|
version=version,
|
|
106
109
|
connection=connection,
|
|
107
110
|
count=count,
|
|
@@ -127,7 +130,7 @@ class KubernetesCluster(
|
|
|
127
130
|
|
|
128
131
|
:param scope: The scope in which to define this construct.
|
|
129
132
|
:param import_to_id: The construct id used in the generated config for the KubernetesCluster to import.
|
|
130
|
-
:param import_from_id: The id of the existing KubernetesCluster that should be imported. Refer to the {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
133
|
+
:param import_from_id: The id of the existing KubernetesCluster that should be imported. Refer to the {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#import import section} in the documentation of this resource for the id to use
|
|
131
134
|
:param provider: ? Optional instance of the provider where the KubernetesCluster to import is found.
|
|
132
135
|
'''
|
|
133
136
|
if __debug__:
|
|
@@ -154,6 +157,10 @@ class KubernetesCluster(
|
|
|
154
157
|
def reset_storage_encryption(self) -> None:
|
|
155
158
|
return typing.cast(None, jsii.invoke(self, "resetStorageEncryption", []))
|
|
156
159
|
|
|
160
|
+
@jsii.member(jsii_name="resetUpgradeStrategyType")
|
|
161
|
+
def reset_upgrade_strategy_type(self) -> None:
|
|
162
|
+
return typing.cast(None, jsii.invoke(self, "resetUpgradeStrategyType", []))
|
|
163
|
+
|
|
157
164
|
@jsii.member(jsii_name="resetVersion")
|
|
158
165
|
def reset_version(self) -> None:
|
|
159
166
|
return typing.cast(None, jsii.invoke(self, "resetVersion", []))
|
|
@@ -232,6 +239,11 @@ class KubernetesCluster(
|
|
|
232
239
|
def storage_encryption_input(self) -> typing.Optional[builtins.str]:
|
|
233
240
|
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "storageEncryptionInput"))
|
|
234
241
|
|
|
242
|
+
@builtins.property
|
|
243
|
+
@jsii.member(jsii_name="upgradeStrategyTypeInput")
|
|
244
|
+
def upgrade_strategy_type_input(self) -> typing.Optional[builtins.str]:
|
|
245
|
+
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "upgradeStrategyTypeInput"))
|
|
246
|
+
|
|
235
247
|
@builtins.property
|
|
236
248
|
@jsii.member(jsii_name="versionInput")
|
|
237
249
|
def version_input(self) -> typing.Optional[builtins.str]:
|
|
@@ -331,6 +343,18 @@ class KubernetesCluster(
|
|
|
331
343
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
332
344
|
jsii.set(self, "storageEncryption", value) # pyright: ignore[reportArgumentType]
|
|
333
345
|
|
|
346
|
+
@builtins.property
|
|
347
|
+
@jsii.member(jsii_name="upgradeStrategyType")
|
|
348
|
+
def upgrade_strategy_type(self) -> builtins.str:
|
|
349
|
+
return typing.cast(builtins.str, jsii.get(self, "upgradeStrategyType"))
|
|
350
|
+
|
|
351
|
+
@upgrade_strategy_type.setter
|
|
352
|
+
def upgrade_strategy_type(self, value: builtins.str) -> None:
|
|
353
|
+
if __debug__:
|
|
354
|
+
type_hints = typing.get_type_hints(_typecheckingstub__39381f85985080b338f976b7fa444c5a767a6551ec022d808ec631b10e994809)
|
|
355
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
356
|
+
jsii.set(self, "upgradeStrategyType", value) # pyright: ignore[reportArgumentType]
|
|
357
|
+
|
|
334
358
|
@builtins.property
|
|
335
359
|
@jsii.member(jsii_name="version")
|
|
336
360
|
def version(self) -> builtins.str:
|
|
@@ -375,6 +399,7 @@ class KubernetesCluster(
|
|
|
375
399
|
"plan": "plan",
|
|
376
400
|
"private_node_groups": "privateNodeGroups",
|
|
377
401
|
"storage_encryption": "storageEncryption",
|
|
402
|
+
"upgrade_strategy_type": "upgradeStrategyType",
|
|
378
403
|
"version": "version",
|
|
379
404
|
},
|
|
380
405
|
)
|
|
@@ -397,6 +422,7 @@ class KubernetesClusterConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
397
422
|
plan: typing.Optional[builtins.str] = None,
|
|
398
423
|
private_node_groups: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
|
|
399
424
|
storage_encryption: typing.Optional[builtins.str] = None,
|
|
425
|
+
upgrade_strategy_type: typing.Optional[builtins.str] = None,
|
|
400
426
|
version: typing.Optional[builtins.str] = None,
|
|
401
427
|
) -> None:
|
|
402
428
|
'''
|
|
@@ -407,15 +433,16 @@ class KubernetesClusterConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
407
433
|
:param lifecycle:
|
|
408
434
|
:param provider:
|
|
409
435
|
:param provisioners:
|
|
410
|
-
:param control_plane_ip_filter: IP addresses or IP ranges in CIDR format which are allowed to access the cluster control plane. To allow access from any source, use ``["0.0.0.0/0"]``. To deny access from all sources, use ``[]``. Values set here do not restrict access to node groups or exposed Kubernetes services. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
411
|
-
:param name: Cluster name. Needs to be unique within the account. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
412
|
-
:param network: Network ID for the cluster to run in. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
413
|
-
:param zone: Zone in which the Kubernetes cluster will be hosted, 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.
|
|
414
|
-
:param labels: User defined key-value pairs to classify the cluster. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
415
|
-
:param plan: The pricing plan used for the cluster. You can list available plans with ``upctl kubernetes plans``. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
416
|
-
:param private_node_groups: Enable private node groups. Private node groups requires a network that is routed through NAT gateway. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
417
|
-
:param storage_encryption: Set default storage encryption strategy for all nodes in the cluster. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
418
|
-
:param
|
|
436
|
+
:param control_plane_ip_filter: IP addresses or IP ranges in CIDR format which are allowed to access the cluster control plane. To allow access from any source, use ``["0.0.0.0/0"]``. To deny access from all sources, use ``[]``. Values set here do not restrict access to node groups or exposed Kubernetes services. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#control_plane_ip_filter KubernetesCluster#control_plane_ip_filter}
|
|
437
|
+
:param name: Cluster name. Needs to be unique within the account. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#name KubernetesCluster#name}
|
|
438
|
+
:param network: Network ID for the cluster to run in. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#network KubernetesCluster#network}
|
|
439
|
+
:param zone: Zone in which the Kubernetes cluster will be hosted, 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.22.0/docs/resources/kubernetes_cluster#zone KubernetesCluster#zone}
|
|
440
|
+
:param labels: User defined key-value pairs to classify the cluster. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#labels KubernetesCluster#labels}
|
|
441
|
+
:param plan: The pricing plan used for the cluster. You can list available plans with ``upctl kubernetes plans``. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#plan KubernetesCluster#plan}
|
|
442
|
+
:param private_node_groups: Enable private node groups. Private node groups requires a network that is routed through NAT gateway. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#private_node_groups KubernetesCluster#private_node_groups}
|
|
443
|
+
:param storage_encryption: Set default storage encryption strategy for all nodes in the cluster. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#storage_encryption KubernetesCluster#storage_encryption}
|
|
444
|
+
:param upgrade_strategy_type: The upgrade strategy to use when changing the cluster ``version``. If not set, ``manual`` strategy will be used by default. When using ``manual`` strategy, you must replace the existing node-groups to update them. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#upgrade_strategy_type KubernetesCluster#upgrade_strategy_type}
|
|
445
|
+
:param version: Kubernetes version ID, e.g. ``1.31``. You can list available version IDs with ``upctl kubernetes versions``. Note that when changing the cluster version, ``upgrade_strategy`` will be taken into account. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#version KubernetesCluster#version}
|
|
419
446
|
'''
|
|
420
447
|
if isinstance(lifecycle, dict):
|
|
421
448
|
lifecycle = _cdktf_9a9027ec.TerraformResourceLifecycle(**lifecycle)
|
|
@@ -436,6 +463,7 @@ class KubernetesClusterConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
436
463
|
check_type(argname="argument plan", value=plan, expected_type=type_hints["plan"])
|
|
437
464
|
check_type(argname="argument private_node_groups", value=private_node_groups, expected_type=type_hints["private_node_groups"])
|
|
438
465
|
check_type(argname="argument storage_encryption", value=storage_encryption, expected_type=type_hints["storage_encryption"])
|
|
466
|
+
check_type(argname="argument upgrade_strategy_type", value=upgrade_strategy_type, expected_type=type_hints["upgrade_strategy_type"])
|
|
439
467
|
check_type(argname="argument version", value=version, expected_type=type_hints["version"])
|
|
440
468
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
441
469
|
"control_plane_ip_filter": control_plane_ip_filter,
|
|
@@ -465,6 +493,8 @@ class KubernetesClusterConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
465
493
|
self._values["private_node_groups"] = private_node_groups
|
|
466
494
|
if storage_encryption is not None:
|
|
467
495
|
self._values["storage_encryption"] = storage_encryption
|
|
496
|
+
if upgrade_strategy_type is not None:
|
|
497
|
+
self._values["upgrade_strategy_type"] = upgrade_strategy_type
|
|
468
498
|
if version is not None:
|
|
469
499
|
self._values["version"] = version
|
|
470
500
|
|
|
@@ -538,7 +568,7 @@ class KubernetesClusterConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
538
568
|
|
|
539
569
|
To allow access from any source, use ``["0.0.0.0/0"]``. To deny access from all sources, use ``[]``. Values set here do not restrict access to node groups or exposed Kubernetes services.
|
|
540
570
|
|
|
541
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
571
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#control_plane_ip_filter KubernetesCluster#control_plane_ip_filter}
|
|
542
572
|
'''
|
|
543
573
|
result = self._values.get("control_plane_ip_filter")
|
|
544
574
|
assert result is not None, "Required property 'control_plane_ip_filter' is missing"
|
|
@@ -548,7 +578,7 @@ class KubernetesClusterConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
548
578
|
def name(self) -> builtins.str:
|
|
549
579
|
'''Cluster name. Needs to be unique within the account.
|
|
550
580
|
|
|
551
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
581
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#name KubernetesCluster#name}
|
|
552
582
|
'''
|
|
553
583
|
result = self._values.get("name")
|
|
554
584
|
assert result is not None, "Required property 'name' is missing"
|
|
@@ -558,7 +588,7 @@ class KubernetesClusterConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
558
588
|
def network(self) -> builtins.str:
|
|
559
589
|
'''Network ID for the cluster to run in.
|
|
560
590
|
|
|
561
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
591
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#network KubernetesCluster#network}
|
|
562
592
|
'''
|
|
563
593
|
result = self._values.get("network")
|
|
564
594
|
assert result is not None, "Required property 'network' is missing"
|
|
@@ -568,7 +598,7 @@ class KubernetesClusterConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
568
598
|
def zone(self) -> builtins.str:
|
|
569
599
|
'''Zone in which the Kubernetes cluster will be hosted, e.g. ``de-fra1``. You can list available zones with ``upctl zone list``.
|
|
570
600
|
|
|
571
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
601
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#zone KubernetesCluster#zone}
|
|
572
602
|
'''
|
|
573
603
|
result = self._values.get("zone")
|
|
574
604
|
assert result is not None, "Required property 'zone' is missing"
|
|
@@ -578,7 +608,7 @@ class KubernetesClusterConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
578
608
|
def labels(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
|
|
579
609
|
'''User defined key-value pairs to classify the cluster.
|
|
580
610
|
|
|
581
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
611
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#labels KubernetesCluster#labels}
|
|
582
612
|
'''
|
|
583
613
|
result = self._values.get("labels")
|
|
584
614
|
return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], result)
|
|
@@ -587,7 +617,7 @@ class KubernetesClusterConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
587
617
|
def plan(self) -> typing.Optional[builtins.str]:
|
|
588
618
|
'''The pricing plan used for the cluster. You can list available plans with ``upctl kubernetes plans``.
|
|
589
619
|
|
|
590
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
620
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#plan KubernetesCluster#plan}
|
|
591
621
|
'''
|
|
592
622
|
result = self._values.get("plan")
|
|
593
623
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
@@ -598,7 +628,7 @@ class KubernetesClusterConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
598
628
|
) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
|
|
599
629
|
'''Enable private node groups. Private node groups requires a network that is routed through NAT gateway.
|
|
600
630
|
|
|
601
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
631
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#private_node_groups KubernetesCluster#private_node_groups}
|
|
602
632
|
'''
|
|
603
633
|
result = self._values.get("private_node_groups")
|
|
604
634
|
return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], result)
|
|
@@ -607,16 +637,29 @@ class KubernetesClusterConfig(_cdktf_9a9027ec.TerraformMetaArguments):
|
|
|
607
637
|
def storage_encryption(self) -> typing.Optional[builtins.str]:
|
|
608
638
|
'''Set default storage encryption strategy for all nodes in the cluster.
|
|
609
639
|
|
|
610
|
-
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.
|
|
640
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#storage_encryption KubernetesCluster#storage_encryption}
|
|
611
641
|
'''
|
|
612
642
|
result = self._values.get("storage_encryption")
|
|
613
643
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
614
644
|
|
|
645
|
+
@builtins.property
|
|
646
|
+
def upgrade_strategy_type(self) -> typing.Optional[builtins.str]:
|
|
647
|
+
'''The upgrade strategy to use when changing the cluster ``version``.
|
|
648
|
+
|
|
649
|
+
If not set, ``manual`` strategy will be used by default. When using ``manual`` strategy, you must replace the existing node-groups to update them.
|
|
650
|
+
|
|
651
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#upgrade_strategy_type KubernetesCluster#upgrade_strategy_type}
|
|
652
|
+
'''
|
|
653
|
+
result = self._values.get("upgrade_strategy_type")
|
|
654
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
655
|
+
|
|
615
656
|
@builtins.property
|
|
616
657
|
def version(self) -> typing.Optional[builtins.str]:
|
|
617
658
|
'''Kubernetes version ID, e.g. ``1.31``. You can list available version IDs with ``upctl kubernetes versions``.
|
|
618
659
|
|
|
619
|
-
|
|
660
|
+
Note that when changing the cluster version, ``upgrade_strategy`` will be taken into account.
|
|
661
|
+
|
|
662
|
+
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.22.0/docs/resources/kubernetes_cluster#version KubernetesCluster#version}
|
|
620
663
|
'''
|
|
621
664
|
result = self._values.get("version")
|
|
622
665
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
@@ -652,6 +695,7 @@ def _typecheckingstub__8a9b711fc0d4f95af1581b8c47ef51571908b57197927d077ddbf475a
|
|
|
652
695
|
plan: typing.Optional[builtins.str] = None,
|
|
653
696
|
private_node_groups: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
|
|
654
697
|
storage_encryption: typing.Optional[builtins.str] = None,
|
|
698
|
+
upgrade_strategy_type: typing.Optional[builtins.str] = None,
|
|
655
699
|
version: typing.Optional[builtins.str] = None,
|
|
656
700
|
connection: typing.Optional[typing.Union[typing.Union[_cdktf_9a9027ec.SSHProvisionerConnection, typing.Dict[builtins.str, typing.Any]], typing.Union[_cdktf_9a9027ec.WinrmProvisionerConnection, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
657
701
|
count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
|
|
@@ -715,6 +759,12 @@ def _typecheckingstub__cedce06cdd644121d16e8723f1b12d6b73c8a3982cac05b297172fec8
|
|
|
715
759
|
"""Type checking stubs"""
|
|
716
760
|
pass
|
|
717
761
|
|
|
762
|
+
def _typecheckingstub__39381f85985080b338f976b7fa444c5a767a6551ec022d808ec631b10e994809(
|
|
763
|
+
value: builtins.str,
|
|
764
|
+
) -> None:
|
|
765
|
+
"""Type checking stubs"""
|
|
766
|
+
pass
|
|
767
|
+
|
|
718
768
|
def _typecheckingstub__776ba3ef3b832d50876fe4a1d205b0bbe70e283570bc607f5f3709b3061f153f(
|
|
719
769
|
value: builtins.str,
|
|
720
770
|
) -> None:
|
|
@@ -744,6 +794,7 @@ def _typecheckingstub__e268687db9e34ae4b03f85f7b2bdf19564690fdaacf69cdb2c9bd3f76
|
|
|
744
794
|
plan: typing.Optional[builtins.str] = None,
|
|
745
795
|
private_node_groups: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
|
|
746
796
|
storage_encryption: typing.Optional[builtins.str] = None,
|
|
797
|
+
upgrade_strategy_type: typing.Optional[builtins.str] = None,
|
|
747
798
|
version: typing.Optional[builtins.str] = None,
|
|
748
799
|
) -> None:
|
|
749
800
|
"""Type checking stubs"""
|