pulumi-digitalocean 4.38.0a1736314576__py3-none-any.whl → 4.39.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.
- pulumi_digitalocean/_inputs.py +512 -6
- pulumi_digitalocean/kubernetes_cluster.py +93 -12
- pulumi_digitalocean/load_balancer.py +54 -0
- pulumi_digitalocean/outputs.py +718 -36
- pulumi_digitalocean/pulumi-plugin.json +1 -1
- {pulumi_digitalocean-4.38.0a1736314576.dist-info → pulumi_digitalocean-4.39.0.dist-info}/METADATA +2 -2
- {pulumi_digitalocean-4.38.0a1736314576.dist-info → pulumi_digitalocean-4.39.0.dist-info}/RECORD +9 -9
- {pulumi_digitalocean-4.38.0a1736314576.dist-info → pulumi_digitalocean-4.39.0.dist-info}/WHEEL +1 -1
- {pulumi_digitalocean-4.38.0a1736314576.dist-info → pulumi_digitalocean-4.39.0.dist-info}/top_level.txt +0 -0
|
@@ -27,8 +27,10 @@ class KubernetesClusterArgs:
|
|
|
27
27
|
version: pulumi.Input[str],
|
|
28
28
|
auto_upgrade: Optional[pulumi.Input[bool]] = None,
|
|
29
29
|
cluster_subnet: Optional[pulumi.Input[str]] = None,
|
|
30
|
+
control_plane_firewall: Optional[pulumi.Input['KubernetesClusterControlPlaneFirewallArgs']] = None,
|
|
30
31
|
destroy_all_associated_resources: Optional[pulumi.Input[bool]] = None,
|
|
31
32
|
ha: Optional[pulumi.Input[bool]] = None,
|
|
33
|
+
kubeconfig_expire_seconds: Optional[pulumi.Input[int]] = None,
|
|
32
34
|
maintenance_policy: Optional[pulumi.Input['KubernetesClusterMaintenancePolicyArgs']] = None,
|
|
33
35
|
name: Optional[pulumi.Input[str]] = None,
|
|
34
36
|
registry_integration: Optional[pulumi.Input[bool]] = None,
|
|
@@ -44,9 +46,10 @@ class KubernetesClusterArgs:
|
|
|
44
46
|
:param pulumi.Input[bool] auto_upgrade: A boolean value indicating whether the cluster will be automatically upgraded to new patch releases during its maintenance window.
|
|
45
47
|
:param pulumi.Input[str] cluster_subnet: The range of IP addresses in the overlay network of the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native).
|
|
46
48
|
:param pulumi.Input[bool] destroy_all_associated_resources: **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed.
|
|
49
|
+
:param pulumi.Input[bool] ha: Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false
|
|
50
|
+
:param pulumi.Input[int] kubeconfig_expire_seconds: The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry.
|
|
47
51
|
|
|
48
52
|
This resource supports customized create timeouts. The default timeout is 30 minutes.
|
|
49
|
-
:param pulumi.Input[bool] ha: Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false
|
|
50
53
|
:param pulumi.Input['KubernetesClusterMaintenancePolicyArgs'] maintenance_policy: A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect.
|
|
51
54
|
:param pulumi.Input[str] name: A name for the Kubernetes cluster.
|
|
52
55
|
:param pulumi.Input[bool] registry_integration: Enables or disables the DigitalOcean container registry integration for the cluster. This requires that a container registry has first been created for the account. Default: false
|
|
@@ -62,10 +65,14 @@ class KubernetesClusterArgs:
|
|
|
62
65
|
pulumi.set(__self__, "auto_upgrade", auto_upgrade)
|
|
63
66
|
if cluster_subnet is not None:
|
|
64
67
|
pulumi.set(__self__, "cluster_subnet", cluster_subnet)
|
|
68
|
+
if control_plane_firewall is not None:
|
|
69
|
+
pulumi.set(__self__, "control_plane_firewall", control_plane_firewall)
|
|
65
70
|
if destroy_all_associated_resources is not None:
|
|
66
71
|
pulumi.set(__self__, "destroy_all_associated_resources", destroy_all_associated_resources)
|
|
67
72
|
if ha is not None:
|
|
68
73
|
pulumi.set(__self__, "ha", ha)
|
|
74
|
+
if kubeconfig_expire_seconds is not None:
|
|
75
|
+
pulumi.set(__self__, "kubeconfig_expire_seconds", kubeconfig_expire_seconds)
|
|
69
76
|
if maintenance_policy is not None:
|
|
70
77
|
pulumi.set(__self__, "maintenance_policy", maintenance_policy)
|
|
71
78
|
if name is not None:
|
|
@@ -141,13 +148,20 @@ class KubernetesClusterArgs:
|
|
|
141
148
|
def cluster_subnet(self, value: Optional[pulumi.Input[str]]):
|
|
142
149
|
pulumi.set(self, "cluster_subnet", value)
|
|
143
150
|
|
|
151
|
+
@property
|
|
152
|
+
@pulumi.getter(name="controlPlaneFirewall")
|
|
153
|
+
def control_plane_firewall(self) -> Optional[pulumi.Input['KubernetesClusterControlPlaneFirewallArgs']]:
|
|
154
|
+
return pulumi.get(self, "control_plane_firewall")
|
|
155
|
+
|
|
156
|
+
@control_plane_firewall.setter
|
|
157
|
+
def control_plane_firewall(self, value: Optional[pulumi.Input['KubernetesClusterControlPlaneFirewallArgs']]):
|
|
158
|
+
pulumi.set(self, "control_plane_firewall", value)
|
|
159
|
+
|
|
144
160
|
@property
|
|
145
161
|
@pulumi.getter(name="destroyAllAssociatedResources")
|
|
146
162
|
def destroy_all_associated_resources(self) -> Optional[pulumi.Input[bool]]:
|
|
147
163
|
"""
|
|
148
164
|
**Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed.
|
|
149
|
-
|
|
150
|
-
This resource supports customized create timeouts. The default timeout is 30 minutes.
|
|
151
165
|
"""
|
|
152
166
|
return pulumi.get(self, "destroy_all_associated_resources")
|
|
153
167
|
|
|
@@ -167,6 +181,20 @@ class KubernetesClusterArgs:
|
|
|
167
181
|
def ha(self, value: Optional[pulumi.Input[bool]]):
|
|
168
182
|
pulumi.set(self, "ha", value)
|
|
169
183
|
|
|
184
|
+
@property
|
|
185
|
+
@pulumi.getter(name="kubeconfigExpireSeconds")
|
|
186
|
+
def kubeconfig_expire_seconds(self) -> Optional[pulumi.Input[int]]:
|
|
187
|
+
"""
|
|
188
|
+
The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry.
|
|
189
|
+
|
|
190
|
+
This resource supports customized create timeouts. The default timeout is 30 minutes.
|
|
191
|
+
"""
|
|
192
|
+
return pulumi.get(self, "kubeconfig_expire_seconds")
|
|
193
|
+
|
|
194
|
+
@kubeconfig_expire_seconds.setter
|
|
195
|
+
def kubeconfig_expire_seconds(self, value: Optional[pulumi.Input[int]]):
|
|
196
|
+
pulumi.set(self, "kubeconfig_expire_seconds", value)
|
|
197
|
+
|
|
170
198
|
@property
|
|
171
199
|
@pulumi.getter(name="maintenancePolicy")
|
|
172
200
|
def maintenance_policy(self) -> Optional[pulumi.Input['KubernetesClusterMaintenancePolicyArgs']]:
|
|
@@ -258,12 +286,14 @@ class _KubernetesClusterState:
|
|
|
258
286
|
auto_upgrade: Optional[pulumi.Input[bool]] = None,
|
|
259
287
|
cluster_subnet: Optional[pulumi.Input[str]] = None,
|
|
260
288
|
cluster_urn: Optional[pulumi.Input[str]] = None,
|
|
289
|
+
control_plane_firewall: Optional[pulumi.Input['KubernetesClusterControlPlaneFirewallArgs']] = None,
|
|
261
290
|
created_at: Optional[pulumi.Input[str]] = None,
|
|
262
291
|
destroy_all_associated_resources: Optional[pulumi.Input[bool]] = None,
|
|
263
292
|
endpoint: Optional[pulumi.Input[str]] = None,
|
|
264
293
|
ha: Optional[pulumi.Input[bool]] = None,
|
|
265
294
|
ipv4_address: Optional[pulumi.Input[str]] = None,
|
|
266
295
|
kube_configs: Optional[pulumi.Input[Sequence[pulumi.Input['KubernetesClusterKubeConfigArgs']]]] = None,
|
|
296
|
+
kubeconfig_expire_seconds: Optional[pulumi.Input[int]] = None,
|
|
267
297
|
maintenance_policy: Optional[pulumi.Input['KubernetesClusterMaintenancePolicyArgs']] = None,
|
|
268
298
|
name: Optional[pulumi.Input[str]] = None,
|
|
269
299
|
node_pool: Optional[pulumi.Input['KubernetesClusterNodePoolArgs']] = None,
|
|
@@ -283,12 +313,13 @@ class _KubernetesClusterState:
|
|
|
283
313
|
:param pulumi.Input[str] cluster_urn: The uniform resource name (URN) for the Kubernetes cluster.
|
|
284
314
|
:param pulumi.Input[str] created_at: The date and time when the node was created.
|
|
285
315
|
:param pulumi.Input[bool] destroy_all_associated_resources: **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed.
|
|
286
|
-
|
|
287
|
-
This resource supports customized create timeouts. The default timeout is 30 minutes.
|
|
288
316
|
:param pulumi.Input[str] endpoint: The base URL of the API server on the Kubernetes master node.
|
|
289
317
|
:param pulumi.Input[bool] ha: Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false
|
|
290
318
|
:param pulumi.Input[str] ipv4_address: The public IPv4 address of the Kubernetes master node. This will not be set if high availability is configured on the cluster (v1.21+)
|
|
291
319
|
:param pulumi.Input[Sequence[pulumi.Input['KubernetesClusterKubeConfigArgs']]] kube_configs: A representation of the Kubernetes cluster's kubeconfig with the following attributes:
|
|
320
|
+
:param pulumi.Input[int] kubeconfig_expire_seconds: The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry.
|
|
321
|
+
|
|
322
|
+
This resource supports customized create timeouts. The default timeout is 30 minutes.
|
|
292
323
|
:param pulumi.Input['KubernetesClusterMaintenancePolicyArgs'] maintenance_policy: A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect.
|
|
293
324
|
:param pulumi.Input[str] name: A name for the Kubernetes cluster.
|
|
294
325
|
:param pulumi.Input['KubernetesClusterNodePoolArgs'] node_pool: A block representing the cluster's default node pool. Additional node pools may be added to the cluster using the `KubernetesNodePool` resource. The following arguments may be specified:
|
|
@@ -308,6 +339,8 @@ class _KubernetesClusterState:
|
|
|
308
339
|
pulumi.set(__self__, "cluster_subnet", cluster_subnet)
|
|
309
340
|
if cluster_urn is not None:
|
|
310
341
|
pulumi.set(__self__, "cluster_urn", cluster_urn)
|
|
342
|
+
if control_plane_firewall is not None:
|
|
343
|
+
pulumi.set(__self__, "control_plane_firewall", control_plane_firewall)
|
|
311
344
|
if created_at is not None:
|
|
312
345
|
pulumi.set(__self__, "created_at", created_at)
|
|
313
346
|
if destroy_all_associated_resources is not None:
|
|
@@ -320,6 +353,8 @@ class _KubernetesClusterState:
|
|
|
320
353
|
pulumi.set(__self__, "ipv4_address", ipv4_address)
|
|
321
354
|
if kube_configs is not None:
|
|
322
355
|
pulumi.set(__self__, "kube_configs", kube_configs)
|
|
356
|
+
if kubeconfig_expire_seconds is not None:
|
|
357
|
+
pulumi.set(__self__, "kubeconfig_expire_seconds", kubeconfig_expire_seconds)
|
|
323
358
|
if maintenance_policy is not None:
|
|
324
359
|
pulumi.set(__self__, "maintenance_policy", maintenance_policy)
|
|
325
360
|
if name is not None:
|
|
@@ -381,6 +416,15 @@ class _KubernetesClusterState:
|
|
|
381
416
|
def cluster_urn(self, value: Optional[pulumi.Input[str]]):
|
|
382
417
|
pulumi.set(self, "cluster_urn", value)
|
|
383
418
|
|
|
419
|
+
@property
|
|
420
|
+
@pulumi.getter(name="controlPlaneFirewall")
|
|
421
|
+
def control_plane_firewall(self) -> Optional[pulumi.Input['KubernetesClusterControlPlaneFirewallArgs']]:
|
|
422
|
+
return pulumi.get(self, "control_plane_firewall")
|
|
423
|
+
|
|
424
|
+
@control_plane_firewall.setter
|
|
425
|
+
def control_plane_firewall(self, value: Optional[pulumi.Input['KubernetesClusterControlPlaneFirewallArgs']]):
|
|
426
|
+
pulumi.set(self, "control_plane_firewall", value)
|
|
427
|
+
|
|
384
428
|
@property
|
|
385
429
|
@pulumi.getter(name="createdAt")
|
|
386
430
|
def created_at(self) -> Optional[pulumi.Input[str]]:
|
|
@@ -398,8 +442,6 @@ class _KubernetesClusterState:
|
|
|
398
442
|
def destroy_all_associated_resources(self) -> Optional[pulumi.Input[bool]]:
|
|
399
443
|
"""
|
|
400
444
|
**Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed.
|
|
401
|
-
|
|
402
|
-
This resource supports customized create timeouts. The default timeout is 30 minutes.
|
|
403
445
|
"""
|
|
404
446
|
return pulumi.get(self, "destroy_all_associated_resources")
|
|
405
447
|
|
|
@@ -455,6 +497,20 @@ class _KubernetesClusterState:
|
|
|
455
497
|
def kube_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['KubernetesClusterKubeConfigArgs']]]]):
|
|
456
498
|
pulumi.set(self, "kube_configs", value)
|
|
457
499
|
|
|
500
|
+
@property
|
|
501
|
+
@pulumi.getter(name="kubeconfigExpireSeconds")
|
|
502
|
+
def kubeconfig_expire_seconds(self) -> Optional[pulumi.Input[int]]:
|
|
503
|
+
"""
|
|
504
|
+
The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry.
|
|
505
|
+
|
|
506
|
+
This resource supports customized create timeouts. The default timeout is 30 minutes.
|
|
507
|
+
"""
|
|
508
|
+
return pulumi.get(self, "kubeconfig_expire_seconds")
|
|
509
|
+
|
|
510
|
+
@kubeconfig_expire_seconds.setter
|
|
511
|
+
def kubeconfig_expire_seconds(self, value: Optional[pulumi.Input[int]]):
|
|
512
|
+
pulumi.set(self, "kubeconfig_expire_seconds", value)
|
|
513
|
+
|
|
458
514
|
@property
|
|
459
515
|
@pulumi.getter(name="maintenancePolicy")
|
|
460
516
|
def maintenance_policy(self) -> Optional[pulumi.Input['KubernetesClusterMaintenancePolicyArgs']]:
|
|
@@ -607,8 +663,10 @@ class KubernetesCluster(pulumi.CustomResource):
|
|
|
607
663
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
608
664
|
auto_upgrade: Optional[pulumi.Input[bool]] = None,
|
|
609
665
|
cluster_subnet: Optional[pulumi.Input[str]] = None,
|
|
666
|
+
control_plane_firewall: Optional[pulumi.Input[Union['KubernetesClusterControlPlaneFirewallArgs', 'KubernetesClusterControlPlaneFirewallArgsDict']]] = None,
|
|
610
667
|
destroy_all_associated_resources: Optional[pulumi.Input[bool]] = None,
|
|
611
668
|
ha: Optional[pulumi.Input[bool]] = None,
|
|
669
|
+
kubeconfig_expire_seconds: Optional[pulumi.Input[int]] = None,
|
|
612
670
|
maintenance_policy: Optional[pulumi.Input[Union['KubernetesClusterMaintenancePolicyArgs', 'KubernetesClusterMaintenancePolicyArgsDict']]] = None,
|
|
613
671
|
name: Optional[pulumi.Input[str]] = None,
|
|
614
672
|
node_pool: Optional[pulumi.Input[Union['KubernetesClusterNodePoolArgs', 'KubernetesClusterNodePoolArgsDict']]] = None,
|
|
@@ -652,9 +710,10 @@ class KubernetesCluster(pulumi.CustomResource):
|
|
|
652
710
|
:param pulumi.Input[bool] auto_upgrade: A boolean value indicating whether the cluster will be automatically upgraded to new patch releases during its maintenance window.
|
|
653
711
|
:param pulumi.Input[str] cluster_subnet: The range of IP addresses in the overlay network of the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native).
|
|
654
712
|
:param pulumi.Input[bool] destroy_all_associated_resources: **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed.
|
|
713
|
+
:param pulumi.Input[bool] ha: Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false
|
|
714
|
+
:param pulumi.Input[int] kubeconfig_expire_seconds: The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry.
|
|
655
715
|
|
|
656
716
|
This resource supports customized create timeouts. The default timeout is 30 minutes.
|
|
657
|
-
:param pulumi.Input[bool] ha: Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false
|
|
658
717
|
:param pulumi.Input[Union['KubernetesClusterMaintenancePolicyArgs', 'KubernetesClusterMaintenancePolicyArgsDict']] maintenance_policy: A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect.
|
|
659
718
|
:param pulumi.Input[str] name: A name for the Kubernetes cluster.
|
|
660
719
|
:param pulumi.Input[Union['KubernetesClusterNodePoolArgs', 'KubernetesClusterNodePoolArgsDict']] node_pool: A block representing the cluster's default node pool. Additional node pools may be added to the cluster using the `KubernetesNodePool` resource. The following arguments may be specified:
|
|
@@ -716,8 +775,10 @@ class KubernetesCluster(pulumi.CustomResource):
|
|
|
716
775
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
717
776
|
auto_upgrade: Optional[pulumi.Input[bool]] = None,
|
|
718
777
|
cluster_subnet: Optional[pulumi.Input[str]] = None,
|
|
778
|
+
control_plane_firewall: Optional[pulumi.Input[Union['KubernetesClusterControlPlaneFirewallArgs', 'KubernetesClusterControlPlaneFirewallArgsDict']]] = None,
|
|
719
779
|
destroy_all_associated_resources: Optional[pulumi.Input[bool]] = None,
|
|
720
780
|
ha: Optional[pulumi.Input[bool]] = None,
|
|
781
|
+
kubeconfig_expire_seconds: Optional[pulumi.Input[int]] = None,
|
|
721
782
|
maintenance_policy: Optional[pulumi.Input[Union['KubernetesClusterMaintenancePolicyArgs', 'KubernetesClusterMaintenancePolicyArgsDict']]] = None,
|
|
722
783
|
name: Optional[pulumi.Input[str]] = None,
|
|
723
784
|
node_pool: Optional[pulumi.Input[Union['KubernetesClusterNodePoolArgs', 'KubernetesClusterNodePoolArgsDict']]] = None,
|
|
@@ -739,8 +800,10 @@ class KubernetesCluster(pulumi.CustomResource):
|
|
|
739
800
|
|
|
740
801
|
__props__.__dict__["auto_upgrade"] = auto_upgrade
|
|
741
802
|
__props__.__dict__["cluster_subnet"] = cluster_subnet
|
|
803
|
+
__props__.__dict__["control_plane_firewall"] = control_plane_firewall
|
|
742
804
|
__props__.__dict__["destroy_all_associated_resources"] = destroy_all_associated_resources
|
|
743
805
|
__props__.__dict__["ha"] = ha
|
|
806
|
+
__props__.__dict__["kubeconfig_expire_seconds"] = kubeconfig_expire_seconds
|
|
744
807
|
__props__.__dict__["maintenance_policy"] = maintenance_policy
|
|
745
808
|
__props__.__dict__["name"] = name
|
|
746
809
|
if node_pool is None and not opts.urn:
|
|
@@ -779,12 +842,14 @@ class KubernetesCluster(pulumi.CustomResource):
|
|
|
779
842
|
auto_upgrade: Optional[pulumi.Input[bool]] = None,
|
|
780
843
|
cluster_subnet: Optional[pulumi.Input[str]] = None,
|
|
781
844
|
cluster_urn: Optional[pulumi.Input[str]] = None,
|
|
845
|
+
control_plane_firewall: Optional[pulumi.Input[Union['KubernetesClusterControlPlaneFirewallArgs', 'KubernetesClusterControlPlaneFirewallArgsDict']]] = None,
|
|
782
846
|
created_at: Optional[pulumi.Input[str]] = None,
|
|
783
847
|
destroy_all_associated_resources: Optional[pulumi.Input[bool]] = None,
|
|
784
848
|
endpoint: Optional[pulumi.Input[str]] = None,
|
|
785
849
|
ha: Optional[pulumi.Input[bool]] = None,
|
|
786
850
|
ipv4_address: Optional[pulumi.Input[str]] = None,
|
|
787
851
|
kube_configs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['KubernetesClusterKubeConfigArgs', 'KubernetesClusterKubeConfigArgsDict']]]]] = None,
|
|
852
|
+
kubeconfig_expire_seconds: Optional[pulumi.Input[int]] = None,
|
|
788
853
|
maintenance_policy: Optional[pulumi.Input[Union['KubernetesClusterMaintenancePolicyArgs', 'KubernetesClusterMaintenancePolicyArgsDict']]] = None,
|
|
789
854
|
name: Optional[pulumi.Input[str]] = None,
|
|
790
855
|
node_pool: Optional[pulumi.Input[Union['KubernetesClusterNodePoolArgs', 'KubernetesClusterNodePoolArgsDict']]] = None,
|
|
@@ -809,12 +874,13 @@ class KubernetesCluster(pulumi.CustomResource):
|
|
|
809
874
|
:param pulumi.Input[str] cluster_urn: The uniform resource name (URN) for the Kubernetes cluster.
|
|
810
875
|
:param pulumi.Input[str] created_at: The date and time when the node was created.
|
|
811
876
|
:param pulumi.Input[bool] destroy_all_associated_resources: **Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed.
|
|
812
|
-
|
|
813
|
-
This resource supports customized create timeouts. The default timeout is 30 minutes.
|
|
814
877
|
:param pulumi.Input[str] endpoint: The base URL of the API server on the Kubernetes master node.
|
|
815
878
|
:param pulumi.Input[bool] ha: Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false
|
|
816
879
|
:param pulumi.Input[str] ipv4_address: The public IPv4 address of the Kubernetes master node. This will not be set if high availability is configured on the cluster (v1.21+)
|
|
817
880
|
:param pulumi.Input[Sequence[pulumi.Input[Union['KubernetesClusterKubeConfigArgs', 'KubernetesClusterKubeConfigArgsDict']]]] kube_configs: A representation of the Kubernetes cluster's kubeconfig with the following attributes:
|
|
881
|
+
:param pulumi.Input[int] kubeconfig_expire_seconds: The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry.
|
|
882
|
+
|
|
883
|
+
This resource supports customized create timeouts. The default timeout is 30 minutes.
|
|
818
884
|
:param pulumi.Input[Union['KubernetesClusterMaintenancePolicyArgs', 'KubernetesClusterMaintenancePolicyArgsDict']] maintenance_policy: A block representing the cluster's maintenance window. Updates will be applied within this window. If not specified, a default maintenance window will be chosen. `auto_upgrade` must be set to `true` for this to have an effect.
|
|
819
885
|
:param pulumi.Input[str] name: A name for the Kubernetes cluster.
|
|
820
886
|
:param pulumi.Input[Union['KubernetesClusterNodePoolArgs', 'KubernetesClusterNodePoolArgsDict']] node_pool: A block representing the cluster's default node pool. Additional node pools may be added to the cluster using the `KubernetesNodePool` resource. The following arguments may be specified:
|
|
@@ -835,12 +901,14 @@ class KubernetesCluster(pulumi.CustomResource):
|
|
|
835
901
|
__props__.__dict__["auto_upgrade"] = auto_upgrade
|
|
836
902
|
__props__.__dict__["cluster_subnet"] = cluster_subnet
|
|
837
903
|
__props__.__dict__["cluster_urn"] = cluster_urn
|
|
904
|
+
__props__.__dict__["control_plane_firewall"] = control_plane_firewall
|
|
838
905
|
__props__.__dict__["created_at"] = created_at
|
|
839
906
|
__props__.__dict__["destroy_all_associated_resources"] = destroy_all_associated_resources
|
|
840
907
|
__props__.__dict__["endpoint"] = endpoint
|
|
841
908
|
__props__.__dict__["ha"] = ha
|
|
842
909
|
__props__.__dict__["ipv4_address"] = ipv4_address
|
|
843
910
|
__props__.__dict__["kube_configs"] = kube_configs
|
|
911
|
+
__props__.__dict__["kubeconfig_expire_seconds"] = kubeconfig_expire_seconds
|
|
844
912
|
__props__.__dict__["maintenance_policy"] = maintenance_policy
|
|
845
913
|
__props__.__dict__["name"] = name
|
|
846
914
|
__props__.__dict__["node_pool"] = node_pool
|
|
@@ -879,6 +947,11 @@ class KubernetesCluster(pulumi.CustomResource):
|
|
|
879
947
|
"""
|
|
880
948
|
return pulumi.get(self, "cluster_urn")
|
|
881
949
|
|
|
950
|
+
@property
|
|
951
|
+
@pulumi.getter(name="controlPlaneFirewall")
|
|
952
|
+
def control_plane_firewall(self) -> pulumi.Output['outputs.KubernetesClusterControlPlaneFirewall']:
|
|
953
|
+
return pulumi.get(self, "control_plane_firewall")
|
|
954
|
+
|
|
882
955
|
@property
|
|
883
956
|
@pulumi.getter(name="createdAt")
|
|
884
957
|
def created_at(self) -> pulumi.Output[str]:
|
|
@@ -892,8 +965,6 @@ class KubernetesCluster(pulumi.CustomResource):
|
|
|
892
965
|
def destroy_all_associated_resources(self) -> pulumi.Output[Optional[bool]]:
|
|
893
966
|
"""
|
|
894
967
|
**Use with caution.** When set to true, all associated DigitalOcean resources created via the Kubernetes API (load balancers, volumes, and volume snapshots) will be destroyed along with the cluster when it is destroyed.
|
|
895
|
-
|
|
896
|
-
This resource supports customized create timeouts. The default timeout is 30 minutes.
|
|
897
968
|
"""
|
|
898
969
|
return pulumi.get(self, "destroy_all_associated_resources")
|
|
899
970
|
|
|
@@ -929,6 +1000,16 @@ class KubernetesCluster(pulumi.CustomResource):
|
|
|
929
1000
|
"""
|
|
930
1001
|
return pulumi.get(self, "kube_configs")
|
|
931
1002
|
|
|
1003
|
+
@property
|
|
1004
|
+
@pulumi.getter(name="kubeconfigExpireSeconds")
|
|
1005
|
+
def kubeconfig_expire_seconds(self) -> pulumi.Output[Optional[int]]:
|
|
1006
|
+
"""
|
|
1007
|
+
The duration in seconds that the returned Kubernetes credentials will be valid. If not set or 0, the credentials will have a 7 day expiry.
|
|
1008
|
+
|
|
1009
|
+
This resource supports customized create timeouts. The default timeout is 30 minutes.
|
|
1010
|
+
"""
|
|
1011
|
+
return pulumi.get(self, "kubeconfig_expire_seconds")
|
|
1012
|
+
|
|
932
1013
|
@property
|
|
933
1014
|
@pulumi.getter(name="maintenancePolicy")
|
|
934
1015
|
def maintenance_policy(self) -> pulumi.Output['outputs.KubernetesClusterMaintenancePolicy']:
|
|
@@ -36,6 +36,7 @@ class LoadBalancerArgs:
|
|
|
36
36
|
http_idle_timeout_seconds: Optional[pulumi.Input[int]] = None,
|
|
37
37
|
name: Optional[pulumi.Input[str]] = None,
|
|
38
38
|
network: Optional[pulumi.Input[str]] = None,
|
|
39
|
+
network_stack: Optional[pulumi.Input[str]] = None,
|
|
39
40
|
project_id: Optional[pulumi.Input[str]] = None,
|
|
40
41
|
redirect_http_to_https: Optional[pulumi.Input[bool]] = None,
|
|
41
42
|
region: Optional[pulumi.Input[Union[str, 'Region']]] = None,
|
|
@@ -66,6 +67,8 @@ class LoadBalancerArgs:
|
|
|
66
67
|
:param pulumi.Input[int] http_idle_timeout_seconds: Specifies the idle timeout for HTTPS connections on the load balancer in seconds.
|
|
67
68
|
:param pulumi.Input[str] name: The Load Balancer name
|
|
68
69
|
:param pulumi.Input[str] network: The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`.
|
|
70
|
+
:param pulumi.Input[str] network_stack: The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`.
|
|
71
|
+
**NOTE**: this feature is in private preview, and may not be available for public use
|
|
69
72
|
:param pulumi.Input[str] project_id: The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project.
|
|
70
73
|
:param pulumi.Input[bool] redirect_http_to_https: A boolean value indicating whether
|
|
71
74
|
HTTP requests to the Load Balancer on port 80 will be redirected to HTTPS on port 443.
|
|
@@ -111,6 +114,8 @@ class LoadBalancerArgs:
|
|
|
111
114
|
pulumi.set(__self__, "name", name)
|
|
112
115
|
if network is not None:
|
|
113
116
|
pulumi.set(__self__, "network", network)
|
|
117
|
+
if network_stack is not None:
|
|
118
|
+
pulumi.set(__self__, "network_stack", network_stack)
|
|
114
119
|
if project_id is not None:
|
|
115
120
|
pulumi.set(__self__, "project_id", project_id)
|
|
116
121
|
if redirect_http_to_https is not None:
|
|
@@ -304,6 +309,19 @@ class LoadBalancerArgs:
|
|
|
304
309
|
def network(self, value: Optional[pulumi.Input[str]]):
|
|
305
310
|
pulumi.set(self, "network", value)
|
|
306
311
|
|
|
312
|
+
@property
|
|
313
|
+
@pulumi.getter(name="networkStack")
|
|
314
|
+
def network_stack(self) -> Optional[pulumi.Input[str]]:
|
|
315
|
+
"""
|
|
316
|
+
The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`.
|
|
317
|
+
**NOTE**: this feature is in private preview, and may not be available for public use
|
|
318
|
+
"""
|
|
319
|
+
return pulumi.get(self, "network_stack")
|
|
320
|
+
|
|
321
|
+
@network_stack.setter
|
|
322
|
+
def network_stack(self, value: Optional[pulumi.Input[str]]):
|
|
323
|
+
pulumi.set(self, "network_stack", value)
|
|
324
|
+
|
|
307
325
|
@property
|
|
308
326
|
@pulumi.getter(name="projectId")
|
|
309
327
|
def project_id(self) -> Optional[pulumi.Input[str]]:
|
|
@@ -437,6 +455,7 @@ class _LoadBalancerState:
|
|
|
437
455
|
load_balancer_urn: Optional[pulumi.Input[str]] = None,
|
|
438
456
|
name: Optional[pulumi.Input[str]] = None,
|
|
439
457
|
network: Optional[pulumi.Input[str]] = None,
|
|
458
|
+
network_stack: Optional[pulumi.Input[str]] = None,
|
|
440
459
|
project_id: Optional[pulumi.Input[str]] = None,
|
|
441
460
|
redirect_http_to_https: Optional[pulumi.Input[bool]] = None,
|
|
442
461
|
region: Optional[pulumi.Input[Union[str, 'Region']]] = None,
|
|
@@ -470,6 +489,8 @@ class _LoadBalancerState:
|
|
|
470
489
|
:param pulumi.Input[str] load_balancer_urn: The uniform resource name for the Load Balancer
|
|
471
490
|
:param pulumi.Input[str] name: The Load Balancer name
|
|
472
491
|
:param pulumi.Input[str] network: The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`.
|
|
492
|
+
:param pulumi.Input[str] network_stack: The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`.
|
|
493
|
+
**NOTE**: this feature is in private preview, and may not be available for public use
|
|
473
494
|
:param pulumi.Input[str] project_id: The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project.
|
|
474
495
|
:param pulumi.Input[bool] redirect_http_to_https: A boolean value indicating whether
|
|
475
496
|
HTTP requests to the Load Balancer on port 80 will be redirected to HTTPS on port 443.
|
|
@@ -521,6 +542,8 @@ class _LoadBalancerState:
|
|
|
521
542
|
pulumi.set(__self__, "name", name)
|
|
522
543
|
if network is not None:
|
|
523
544
|
pulumi.set(__self__, "network", network)
|
|
545
|
+
if network_stack is not None:
|
|
546
|
+
pulumi.set(__self__, "network_stack", network_stack)
|
|
524
547
|
if project_id is not None:
|
|
525
548
|
pulumi.set(__self__, "project_id", project_id)
|
|
526
549
|
if redirect_http_to_https is not None:
|
|
@@ -749,6 +772,19 @@ class _LoadBalancerState:
|
|
|
749
772
|
def network(self, value: Optional[pulumi.Input[str]]):
|
|
750
773
|
pulumi.set(self, "network", value)
|
|
751
774
|
|
|
775
|
+
@property
|
|
776
|
+
@pulumi.getter(name="networkStack")
|
|
777
|
+
def network_stack(self) -> Optional[pulumi.Input[str]]:
|
|
778
|
+
"""
|
|
779
|
+
The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`.
|
|
780
|
+
**NOTE**: this feature is in private preview, and may not be available for public use
|
|
781
|
+
"""
|
|
782
|
+
return pulumi.get(self, "network_stack")
|
|
783
|
+
|
|
784
|
+
@network_stack.setter
|
|
785
|
+
def network_stack(self, value: Optional[pulumi.Input[str]]):
|
|
786
|
+
pulumi.set(self, "network_stack", value)
|
|
787
|
+
|
|
752
788
|
@property
|
|
753
789
|
@pulumi.getter(name="projectId")
|
|
754
790
|
def project_id(self) -> Optional[pulumi.Input[str]]:
|
|
@@ -890,6 +926,7 @@ class LoadBalancer(pulumi.CustomResource):
|
|
|
890
926
|
http_idle_timeout_seconds: Optional[pulumi.Input[int]] = None,
|
|
891
927
|
name: Optional[pulumi.Input[str]] = None,
|
|
892
928
|
network: Optional[pulumi.Input[str]] = None,
|
|
929
|
+
network_stack: Optional[pulumi.Input[str]] = None,
|
|
893
930
|
project_id: Optional[pulumi.Input[str]] = None,
|
|
894
931
|
redirect_http_to_https: Optional[pulumi.Input[bool]] = None,
|
|
895
932
|
region: Optional[pulumi.Input[Union[str, 'Region']]] = None,
|
|
@@ -966,6 +1003,8 @@ class LoadBalancer(pulumi.CustomResource):
|
|
|
966
1003
|
:param pulumi.Input[int] http_idle_timeout_seconds: Specifies the idle timeout for HTTPS connections on the load balancer in seconds.
|
|
967
1004
|
:param pulumi.Input[str] name: The Load Balancer name
|
|
968
1005
|
:param pulumi.Input[str] network: The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`.
|
|
1006
|
+
:param pulumi.Input[str] network_stack: The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`.
|
|
1007
|
+
**NOTE**: this feature is in private preview, and may not be available for public use
|
|
969
1008
|
:param pulumi.Input[str] project_id: The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project.
|
|
970
1009
|
:param pulumi.Input[bool] redirect_http_to_https: A boolean value indicating whether
|
|
971
1010
|
HTTP requests to the Load Balancer on port 80 will be redirected to HTTPS on port 443.
|
|
@@ -1060,6 +1099,7 @@ class LoadBalancer(pulumi.CustomResource):
|
|
|
1060
1099
|
http_idle_timeout_seconds: Optional[pulumi.Input[int]] = None,
|
|
1061
1100
|
name: Optional[pulumi.Input[str]] = None,
|
|
1062
1101
|
network: Optional[pulumi.Input[str]] = None,
|
|
1102
|
+
network_stack: Optional[pulumi.Input[str]] = None,
|
|
1063
1103
|
project_id: Optional[pulumi.Input[str]] = None,
|
|
1064
1104
|
redirect_http_to_https: Optional[pulumi.Input[bool]] = None,
|
|
1065
1105
|
region: Optional[pulumi.Input[Union[str, 'Region']]] = None,
|
|
@@ -1092,6 +1132,7 @@ class LoadBalancer(pulumi.CustomResource):
|
|
|
1092
1132
|
__props__.__dict__["http_idle_timeout_seconds"] = http_idle_timeout_seconds
|
|
1093
1133
|
__props__.__dict__["name"] = name
|
|
1094
1134
|
__props__.__dict__["network"] = network
|
|
1135
|
+
__props__.__dict__["network_stack"] = network_stack
|
|
1095
1136
|
__props__.__dict__["project_id"] = project_id
|
|
1096
1137
|
__props__.__dict__["redirect_http_to_https"] = redirect_http_to_https
|
|
1097
1138
|
__props__.__dict__["region"] = region
|
|
@@ -1132,6 +1173,7 @@ class LoadBalancer(pulumi.CustomResource):
|
|
|
1132
1173
|
load_balancer_urn: Optional[pulumi.Input[str]] = None,
|
|
1133
1174
|
name: Optional[pulumi.Input[str]] = None,
|
|
1134
1175
|
network: Optional[pulumi.Input[str]] = None,
|
|
1176
|
+
network_stack: Optional[pulumi.Input[str]] = None,
|
|
1135
1177
|
project_id: Optional[pulumi.Input[str]] = None,
|
|
1136
1178
|
redirect_http_to_https: Optional[pulumi.Input[bool]] = None,
|
|
1137
1179
|
region: Optional[pulumi.Input[Union[str, 'Region']]] = None,
|
|
@@ -1170,6 +1212,8 @@ class LoadBalancer(pulumi.CustomResource):
|
|
|
1170
1212
|
:param pulumi.Input[str] load_balancer_urn: The uniform resource name for the Load Balancer
|
|
1171
1213
|
:param pulumi.Input[str] name: The Load Balancer name
|
|
1172
1214
|
:param pulumi.Input[str] network: The type of network the Load Balancer is accessible from. It must be either of `INTERNAL` or `EXTERNAL`. Defaults to `EXTERNAL`.
|
|
1215
|
+
:param pulumi.Input[str] network_stack: The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`.
|
|
1216
|
+
**NOTE**: this feature is in private preview, and may not be available for public use
|
|
1173
1217
|
:param pulumi.Input[str] project_id: The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project.
|
|
1174
1218
|
:param pulumi.Input[bool] redirect_http_to_https: A boolean value indicating whether
|
|
1175
1219
|
HTTP requests to the Load Balancer on port 80 will be redirected to HTTPS on port 443.
|
|
@@ -1205,6 +1249,7 @@ class LoadBalancer(pulumi.CustomResource):
|
|
|
1205
1249
|
__props__.__dict__["load_balancer_urn"] = load_balancer_urn
|
|
1206
1250
|
__props__.__dict__["name"] = name
|
|
1207
1251
|
__props__.__dict__["network"] = network
|
|
1252
|
+
__props__.__dict__["network_stack"] = network_stack
|
|
1208
1253
|
__props__.__dict__["project_id"] = project_id
|
|
1209
1254
|
__props__.__dict__["redirect_http_to_https"] = redirect_http_to_https
|
|
1210
1255
|
__props__.__dict__["region"] = region
|
|
@@ -1356,6 +1401,15 @@ class LoadBalancer(pulumi.CustomResource):
|
|
|
1356
1401
|
"""
|
|
1357
1402
|
return pulumi.get(self, "network")
|
|
1358
1403
|
|
|
1404
|
+
@property
|
|
1405
|
+
@pulumi.getter(name="networkStack")
|
|
1406
|
+
def network_stack(self) -> pulumi.Output[Optional[str]]:
|
|
1407
|
+
"""
|
|
1408
|
+
The network stack determines the allocation of ipv4/ipv6 addresses to the load balancer. It must be either of `IPV4` or `DUALSTACK`. Defaults to `IPV4`.
|
|
1409
|
+
**NOTE**: this feature is in private preview, and may not be available for public use
|
|
1410
|
+
"""
|
|
1411
|
+
return pulumi.get(self, "network_stack")
|
|
1412
|
+
|
|
1359
1413
|
@property
|
|
1360
1414
|
@pulumi.getter(name="projectId")
|
|
1361
1415
|
def project_id(self) -> pulumi.Output[str]:
|