pulumi-digitalocean 4.41.0a1742794810__py3-none-any.whl → 4.42.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 pulumi-digitalocean might be problematic. Click here for more details.

Files changed (111) hide show
  1. pulumi_digitalocean/__init__.py +21 -0
  2. pulumi_digitalocean/_enums.py +10 -8
  3. pulumi_digitalocean/_inputs.py +2936 -2693
  4. pulumi_digitalocean/app.py +64 -63
  5. pulumi_digitalocean/cdn.py +85 -84
  6. pulumi_digitalocean/certificate.py +111 -110
  7. pulumi_digitalocean/config/__init__.py +1 -0
  8. pulumi_digitalocean/config/__init__.pyi +1 -0
  9. pulumi_digitalocean/config/vars.py +1 -0
  10. pulumi_digitalocean/container_registry.py +71 -70
  11. pulumi_digitalocean/container_registry_docker_credentials.py +57 -56
  12. pulumi_digitalocean/custom_image.py +141 -140
  13. pulumi_digitalocean/database_cluster.py +274 -273
  14. pulumi_digitalocean/database_connection_pool.py +127 -126
  15. pulumi_digitalocean/database_db.py +29 -28
  16. pulumi_digitalocean/database_firewall.py +15 -14
  17. pulumi_digitalocean/database_kafka_config.py +253 -252
  18. pulumi_digitalocean/database_kafka_topic.py +64 -63
  19. pulumi_digitalocean/database_mongodb_config.py +85 -84
  20. pulumi_digitalocean/database_mysql_config.py +393 -392
  21. pulumi_digitalocean/database_opensearch_config.py +547 -546
  22. pulumi_digitalocean/database_postgresql_config.py +701 -700
  23. pulumi_digitalocean/database_redis_config.py +169 -168
  24. pulumi_digitalocean/database_replica.py +158 -157
  25. pulumi_digitalocean/database_user.py +71 -70
  26. pulumi_digitalocean/dns_record.py +148 -147
  27. pulumi_digitalocean/domain.py +43 -42
  28. pulumi_digitalocean/droplet.py +312 -311
  29. pulumi_digitalocean/droplet_autoscale.py +36 -35
  30. pulumi_digitalocean/droplet_snapshot.py +57 -56
  31. pulumi_digitalocean/firewall.py +57 -56
  32. pulumi_digitalocean/floating_ip.py +50 -49
  33. pulumi_digitalocean/floating_ip_assignment.py +29 -28
  34. pulumi_digitalocean/get_account.py +9 -8
  35. pulumi_digitalocean/get_app.py +15 -14
  36. pulumi_digitalocean/get_certificate.py +13 -12
  37. pulumi_digitalocean/get_container_registry.py +13 -12
  38. pulumi_digitalocean/get_database_ca.py +8 -7
  39. pulumi_digitalocean/get_database_cluster.py +33 -32
  40. pulumi_digitalocean/get_database_connection_pool.py +22 -21
  41. pulumi_digitalocean/get_database_replica.py +29 -28
  42. pulumi_digitalocean/get_database_user.py +17 -16
  43. pulumi_digitalocean/get_domain.py +10 -9
  44. pulumi_digitalocean/get_domains.py +2 -1
  45. pulumi_digitalocean/get_droplet.py +44 -43
  46. pulumi_digitalocean/get_droplet_autoscale.py +14 -13
  47. pulumi_digitalocean/get_droplet_snapshot.py +27 -26
  48. pulumi_digitalocean/get_droplets.py +7 -6
  49. pulumi_digitalocean/get_firewall.py +20 -19
  50. pulumi_digitalocean/get_floating_ip.py +10 -9
  51. pulumi_digitalocean/get_image.py +33 -32
  52. pulumi_digitalocean/get_images.py +2 -1
  53. pulumi_digitalocean/get_kubernetes_cluster.py +45 -29
  54. pulumi_digitalocean/get_kubernetes_versions.py +9 -8
  55. pulumi_digitalocean/get_load_balancer.py +31 -30
  56. pulumi_digitalocean/get_partner_attachment.py +170 -0
  57. pulumi_digitalocean/get_project.py +20 -19
  58. pulumi_digitalocean/get_projects.py +2 -1
  59. pulumi_digitalocean/get_record.py +20 -19
  60. pulumi_digitalocean/get_records.py +7 -6
  61. pulumi_digitalocean/get_region.py +11 -10
  62. pulumi_digitalocean/get_regions.py +2 -1
  63. pulumi_digitalocean/get_reserved_ip.py +10 -9
  64. pulumi_digitalocean/get_reserved_ipv6.py +10 -9
  65. pulumi_digitalocean/get_sizes.py +2 -1
  66. pulumi_digitalocean/get_spaces_bucket.py +15 -14
  67. pulumi_digitalocean/get_spaces_bucket_object.py +38 -37
  68. pulumi_digitalocean/get_spaces_bucket_objects.py +35 -34
  69. pulumi_digitalocean/get_spaces_buckets.py +2 -1
  70. pulumi_digitalocean/get_spaces_key.py +158 -0
  71. pulumi_digitalocean/get_ssh_key.py +9 -8
  72. pulumi_digitalocean/get_ssh_keys.py +2 -1
  73. pulumi_digitalocean/get_tag.py +13 -12
  74. pulumi_digitalocean/get_tags.py +2 -1
  75. pulumi_digitalocean/get_volume.py +23 -22
  76. pulumi_digitalocean/get_volume_snapshot.py +28 -27
  77. pulumi_digitalocean/get_vpc.py +21 -20
  78. pulumi_digitalocean/get_vpc_peering.py +18 -17
  79. pulumi_digitalocean/kubernetes_cluster.py +272 -238
  80. pulumi_digitalocean/kubernetes_node_pool.py +134 -133
  81. pulumi_digitalocean/load_balancer.py +277 -276
  82. pulumi_digitalocean/monitor_alert.py +120 -119
  83. pulumi_digitalocean/outputs.py +3185 -2989
  84. pulumi_digitalocean/partner_attachment.py +433 -0
  85. pulumi_digitalocean/project.py +113 -112
  86. pulumi_digitalocean/project_resources.py +29 -28
  87. pulumi_digitalocean/provider.py +69 -68
  88. pulumi_digitalocean/pulumi-plugin.json +1 -1
  89. pulumi_digitalocean/reserved_ip.py +50 -49
  90. pulumi_digitalocean/reserved_ip_assignment.py +29 -28
  91. pulumi_digitalocean/reserved_ipv6.py +44 -43
  92. pulumi_digitalocean/reserved_ipv6_assignment.py +29 -28
  93. pulumi_digitalocean/spaces_bucket.py +78 -77
  94. pulumi_digitalocean/spaces_bucket_cors_configuration.py +29 -28
  95. pulumi_digitalocean/spaces_bucket_object.py +232 -231
  96. pulumi_digitalocean/spaces_bucket_policy.py +43 -42
  97. pulumi_digitalocean/spaces_key.py +388 -0
  98. pulumi_digitalocean/ssh_key.py +36 -35
  99. pulumi_digitalocean/tag.py +57 -56
  100. pulumi_digitalocean/uptime_alert.py +85 -84
  101. pulumi_digitalocean/uptime_check.py +71 -70
  102. pulumi_digitalocean/volume.py +148 -147
  103. pulumi_digitalocean/volume_attachment.py +29 -28
  104. pulumi_digitalocean/volume_snapshot.py +71 -70
  105. pulumi_digitalocean/vpc.py +78 -77
  106. pulumi_digitalocean/vpc_peering.py +43 -42
  107. {pulumi_digitalocean-4.41.0a1742794810.dist-info → pulumi_digitalocean-4.42.0.dist-info}/METADATA +1 -1
  108. pulumi_digitalocean-4.42.0.dist-info/RECORD +112 -0
  109. {pulumi_digitalocean-4.41.0a1742794810.dist-info → pulumi_digitalocean-4.42.0.dist-info}/WHEEL +1 -1
  110. pulumi_digitalocean-4.41.0a1742794810.dist-info/RECORD +0 -108
  111. {pulumi_digitalocean-4.41.0a1742794810.dist-info → pulumi_digitalocean-4.42.0.dist-info}/top_level.txt +0 -0
@@ -2,6 +2,7 @@
2
2
  # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
+ import builtins
5
6
  import copy
6
7
  import warnings
7
8
  import sys
@@ -23,41 +24,41 @@ __all__ = ['KubernetesClusterArgs', 'KubernetesCluster']
23
24
  class KubernetesClusterArgs:
24
25
  def __init__(__self__, *,
25
26
  node_pool: pulumi.Input['KubernetesClusterNodePoolArgs'],
26
- region: pulumi.Input[Union[str, 'Region']],
27
- version: pulumi.Input[str],
28
- auto_upgrade: Optional[pulumi.Input[bool]] = None,
27
+ region: pulumi.Input[Union[builtins.str, 'Region']],
28
+ version: pulumi.Input[builtins.str],
29
+ auto_upgrade: Optional[pulumi.Input[builtins.bool]] = None,
29
30
  cluster_autoscaler_configurations: Optional[pulumi.Input[Sequence[pulumi.Input['KubernetesClusterClusterAutoscalerConfigurationArgs']]]] = None,
30
- cluster_subnet: Optional[pulumi.Input[str]] = None,
31
+ cluster_subnet: Optional[pulumi.Input[builtins.str]] = None,
31
32
  control_plane_firewall: Optional[pulumi.Input['KubernetesClusterControlPlaneFirewallArgs']] = None,
32
- destroy_all_associated_resources: Optional[pulumi.Input[bool]] = None,
33
- ha: Optional[pulumi.Input[bool]] = None,
34
- kubeconfig_expire_seconds: Optional[pulumi.Input[int]] = None,
33
+ destroy_all_associated_resources: Optional[pulumi.Input[builtins.bool]] = None,
34
+ ha: Optional[pulumi.Input[builtins.bool]] = None,
35
+ kubeconfig_expire_seconds: Optional[pulumi.Input[builtins.int]] = None,
35
36
  maintenance_policy: Optional[pulumi.Input['KubernetesClusterMaintenancePolicyArgs']] = None,
36
- name: Optional[pulumi.Input[str]] = None,
37
- registry_integration: Optional[pulumi.Input[bool]] = None,
38
- service_subnet: Optional[pulumi.Input[str]] = None,
39
- surge_upgrade: Optional[pulumi.Input[bool]] = None,
40
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
41
- vpc_uuid: Optional[pulumi.Input[str]] = None):
37
+ name: Optional[pulumi.Input[builtins.str]] = None,
38
+ registry_integration: Optional[pulumi.Input[builtins.bool]] = None,
39
+ routing_agent: Optional[pulumi.Input['KubernetesClusterRoutingAgentArgs']] = None,
40
+ service_subnet: Optional[pulumi.Input[builtins.str]] = None,
41
+ surge_upgrade: Optional[pulumi.Input[builtins.bool]] = None,
42
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
43
+ vpc_uuid: Optional[pulumi.Input[builtins.str]] = None):
42
44
  """
43
45
  The set of arguments for constructing a KubernetesCluster resource.
44
46
  :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:
45
- :param pulumi.Input[Union[str, 'Region']] region: The slug identifier for the region where the Kubernetes cluster will be created.
46
- :param pulumi.Input[str] version: The slug identifier for the version of Kubernetes used for the cluster. Use [doctl](https://github.com/digitalocean/doctl) to find the available versions `doctl kubernetes options versions`. (**Note:** A cluster may only be upgraded to newer versions in-place. If the version is decreased, a new resource will be created.)
47
- :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.
48
- :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).
49
- :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.
50
- :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
51
- :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.
52
-
53
- This resource supports customized create timeouts. The default timeout is 30 minutes.
47
+ :param pulumi.Input[Union[builtins.str, 'Region']] region: The slug identifier for the region where the Kubernetes cluster will be created.
48
+ :param pulumi.Input[builtins.str] version: The slug identifier for the version of Kubernetes used for the cluster. Use [doctl](https://github.com/digitalocean/doctl) to find the available versions `doctl kubernetes options versions`. (**Note:** A cluster may only be upgraded to newer versions in-place. If the version is decreased, a new resource will be created.)
49
+ :param pulumi.Input[builtins.bool] auto_upgrade: A boolean value indicating whether the cluster will be automatically upgraded to new patch releases during its maintenance window.
50
+ :param pulumi.Input[builtins.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).
51
+ :param pulumi.Input[builtins.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.
52
+ :param pulumi.Input[builtins.bool] ha: Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false
53
+ :param pulumi.Input[builtins.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.
54
54
  :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.
55
- :param pulumi.Input[str] name: A name for the Kubernetes cluster.
56
- :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
57
- :param pulumi.Input[str] service_subnet: The range of assignable IP addresses for services running in the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native).
58
- :param pulumi.Input[bool] surge_upgrade: Enable/disable surge upgrades for a cluster. Default: true
59
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tag names to be applied to the Kubernetes cluster.
60
- :param pulumi.Input[str] vpc_uuid: The ID of the VPC where the Kubernetes cluster will be located.
55
+ :param pulumi.Input[builtins.str] name: A name for the Kubernetes cluster.
56
+ :param pulumi.Input[builtins.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
57
+ :param pulumi.Input['KubernetesClusterRoutingAgentArgs'] routing_agent: Block containing options for the routing-agent component. If not specified, the routing-agent component will not be installed in the cluster.
58
+ :param pulumi.Input[builtins.str] service_subnet: The range of assignable IP addresses for services running in the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native).
59
+ :param pulumi.Input[builtins.bool] surge_upgrade: Enable/disable surge upgrades for a cluster. Default: true
60
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: A list of tag names to be applied to the Kubernetes cluster.
61
+ :param pulumi.Input[builtins.str] vpc_uuid: The ID of the VPC where the Kubernetes cluster will be located.
61
62
  """
62
63
  pulumi.set(__self__, "node_pool", node_pool)
63
64
  pulumi.set(__self__, "region", region)
@@ -82,6 +83,8 @@ class KubernetesClusterArgs:
82
83
  pulumi.set(__self__, "name", name)
83
84
  if registry_integration is not None:
84
85
  pulumi.set(__self__, "registry_integration", registry_integration)
86
+ if routing_agent is not None:
87
+ pulumi.set(__self__, "routing_agent", routing_agent)
85
88
  if service_subnet is not None:
86
89
  pulumi.set(__self__, "service_subnet", service_subnet)
87
90
  if surge_upgrade is not None:
@@ -105,38 +108,38 @@ class KubernetesClusterArgs:
105
108
 
106
109
  @property
107
110
  @pulumi.getter
108
- def region(self) -> pulumi.Input[Union[str, 'Region']]:
111
+ def region(self) -> pulumi.Input[Union[builtins.str, 'Region']]:
109
112
  """
110
113
  The slug identifier for the region where the Kubernetes cluster will be created.
111
114
  """
112
115
  return pulumi.get(self, "region")
113
116
 
114
117
  @region.setter
115
- def region(self, value: pulumi.Input[Union[str, 'Region']]):
118
+ def region(self, value: pulumi.Input[Union[builtins.str, 'Region']]):
116
119
  pulumi.set(self, "region", value)
117
120
 
118
121
  @property
119
122
  @pulumi.getter
120
- def version(self) -> pulumi.Input[str]:
123
+ def version(self) -> pulumi.Input[builtins.str]:
121
124
  """
122
125
  The slug identifier for the version of Kubernetes used for the cluster. Use [doctl](https://github.com/digitalocean/doctl) to find the available versions `doctl kubernetes options versions`. (**Note:** A cluster may only be upgraded to newer versions in-place. If the version is decreased, a new resource will be created.)
123
126
  """
124
127
  return pulumi.get(self, "version")
125
128
 
126
129
  @version.setter
127
- def version(self, value: pulumi.Input[str]):
130
+ def version(self, value: pulumi.Input[builtins.str]):
128
131
  pulumi.set(self, "version", value)
129
132
 
130
133
  @property
131
134
  @pulumi.getter(name="autoUpgrade")
132
- def auto_upgrade(self) -> Optional[pulumi.Input[bool]]:
135
+ def auto_upgrade(self) -> Optional[pulumi.Input[builtins.bool]]:
133
136
  """
134
137
  A boolean value indicating whether the cluster will be automatically upgraded to new patch releases during its maintenance window.
135
138
  """
136
139
  return pulumi.get(self, "auto_upgrade")
137
140
 
138
141
  @auto_upgrade.setter
139
- def auto_upgrade(self, value: Optional[pulumi.Input[bool]]):
142
+ def auto_upgrade(self, value: Optional[pulumi.Input[builtins.bool]]):
140
143
  pulumi.set(self, "auto_upgrade", value)
141
144
 
142
145
  @property
@@ -150,14 +153,14 @@ class KubernetesClusterArgs:
150
153
 
151
154
  @property
152
155
  @pulumi.getter(name="clusterSubnet")
153
- def cluster_subnet(self) -> Optional[pulumi.Input[str]]:
156
+ def cluster_subnet(self) -> Optional[pulumi.Input[builtins.str]]:
154
157
  """
155
158
  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).
156
159
  """
157
160
  return pulumi.get(self, "cluster_subnet")
158
161
 
159
162
  @cluster_subnet.setter
160
- def cluster_subnet(self, value: Optional[pulumi.Input[str]]):
163
+ def cluster_subnet(self, value: Optional[pulumi.Input[builtins.str]]):
161
164
  pulumi.set(self, "cluster_subnet", value)
162
165
 
163
166
  @property
@@ -171,40 +174,38 @@ class KubernetesClusterArgs:
171
174
 
172
175
  @property
173
176
  @pulumi.getter(name="destroyAllAssociatedResources")
174
- def destroy_all_associated_resources(self) -> Optional[pulumi.Input[bool]]:
177
+ def destroy_all_associated_resources(self) -> Optional[pulumi.Input[builtins.bool]]:
175
178
  """
176
179
  **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.
177
180
  """
178
181
  return pulumi.get(self, "destroy_all_associated_resources")
179
182
 
180
183
  @destroy_all_associated_resources.setter
181
- def destroy_all_associated_resources(self, value: Optional[pulumi.Input[bool]]):
184
+ def destroy_all_associated_resources(self, value: Optional[pulumi.Input[builtins.bool]]):
182
185
  pulumi.set(self, "destroy_all_associated_resources", value)
183
186
 
184
187
  @property
185
188
  @pulumi.getter
186
- def ha(self) -> Optional[pulumi.Input[bool]]:
189
+ def ha(self) -> Optional[pulumi.Input[builtins.bool]]:
187
190
  """
188
191
  Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false
189
192
  """
190
193
  return pulumi.get(self, "ha")
191
194
 
192
195
  @ha.setter
193
- def ha(self, value: Optional[pulumi.Input[bool]]):
196
+ def ha(self, value: Optional[pulumi.Input[builtins.bool]]):
194
197
  pulumi.set(self, "ha", value)
195
198
 
196
199
  @property
197
200
  @pulumi.getter(name="kubeconfigExpireSeconds")
198
- def kubeconfig_expire_seconds(self) -> Optional[pulumi.Input[int]]:
201
+ def kubeconfig_expire_seconds(self) -> Optional[pulumi.Input[builtins.int]]:
199
202
  """
200
203
  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.
201
-
202
- This resource supports customized create timeouts. The default timeout is 30 minutes.
203
204
  """
204
205
  return pulumi.get(self, "kubeconfig_expire_seconds")
205
206
 
206
207
  @kubeconfig_expire_seconds.setter
207
- def kubeconfig_expire_seconds(self, value: Optional[pulumi.Input[int]]):
208
+ def kubeconfig_expire_seconds(self, value: Optional[pulumi.Input[builtins.int]]):
208
209
  pulumi.set(self, "kubeconfig_expire_seconds", value)
209
210
 
210
211
  @property
@@ -221,130 +222,142 @@ class KubernetesClusterArgs:
221
222
 
222
223
  @property
223
224
  @pulumi.getter
224
- def name(self) -> Optional[pulumi.Input[str]]:
225
+ def name(self) -> Optional[pulumi.Input[builtins.str]]:
225
226
  """
226
227
  A name for the Kubernetes cluster.
227
228
  """
228
229
  return pulumi.get(self, "name")
229
230
 
230
231
  @name.setter
231
- def name(self, value: Optional[pulumi.Input[str]]):
232
+ def name(self, value: Optional[pulumi.Input[builtins.str]]):
232
233
  pulumi.set(self, "name", value)
233
234
 
234
235
  @property
235
236
  @pulumi.getter(name="registryIntegration")
236
- def registry_integration(self) -> Optional[pulumi.Input[bool]]:
237
+ def registry_integration(self) -> Optional[pulumi.Input[builtins.bool]]:
237
238
  """
238
239
  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
239
240
  """
240
241
  return pulumi.get(self, "registry_integration")
241
242
 
242
243
  @registry_integration.setter
243
- def registry_integration(self, value: Optional[pulumi.Input[bool]]):
244
+ def registry_integration(self, value: Optional[pulumi.Input[builtins.bool]]):
244
245
  pulumi.set(self, "registry_integration", value)
245
246
 
247
+ @property
248
+ @pulumi.getter(name="routingAgent")
249
+ def routing_agent(self) -> Optional[pulumi.Input['KubernetesClusterRoutingAgentArgs']]:
250
+ """
251
+ Block containing options for the routing-agent component. If not specified, the routing-agent component will not be installed in the cluster.
252
+ """
253
+ return pulumi.get(self, "routing_agent")
254
+
255
+ @routing_agent.setter
256
+ def routing_agent(self, value: Optional[pulumi.Input['KubernetesClusterRoutingAgentArgs']]):
257
+ pulumi.set(self, "routing_agent", value)
258
+
246
259
  @property
247
260
  @pulumi.getter(name="serviceSubnet")
248
- def service_subnet(self) -> Optional[pulumi.Input[str]]:
261
+ def service_subnet(self) -> Optional[pulumi.Input[builtins.str]]:
249
262
  """
250
263
  The range of assignable IP addresses for services running in the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native).
251
264
  """
252
265
  return pulumi.get(self, "service_subnet")
253
266
 
254
267
  @service_subnet.setter
255
- def service_subnet(self, value: Optional[pulumi.Input[str]]):
268
+ def service_subnet(self, value: Optional[pulumi.Input[builtins.str]]):
256
269
  pulumi.set(self, "service_subnet", value)
257
270
 
258
271
  @property
259
272
  @pulumi.getter(name="surgeUpgrade")
260
- def surge_upgrade(self) -> Optional[pulumi.Input[bool]]:
273
+ def surge_upgrade(self) -> Optional[pulumi.Input[builtins.bool]]:
261
274
  """
262
275
  Enable/disable surge upgrades for a cluster. Default: true
263
276
  """
264
277
  return pulumi.get(self, "surge_upgrade")
265
278
 
266
279
  @surge_upgrade.setter
267
- def surge_upgrade(self, value: Optional[pulumi.Input[bool]]):
280
+ def surge_upgrade(self, value: Optional[pulumi.Input[builtins.bool]]):
268
281
  pulumi.set(self, "surge_upgrade", value)
269
282
 
270
283
  @property
271
284
  @pulumi.getter
272
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
285
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
273
286
  """
274
287
  A list of tag names to be applied to the Kubernetes cluster.
275
288
  """
276
289
  return pulumi.get(self, "tags")
277
290
 
278
291
  @tags.setter
279
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
292
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
280
293
  pulumi.set(self, "tags", value)
281
294
 
282
295
  @property
283
296
  @pulumi.getter(name="vpcUuid")
284
- def vpc_uuid(self) -> Optional[pulumi.Input[str]]:
297
+ def vpc_uuid(self) -> Optional[pulumi.Input[builtins.str]]:
285
298
  """
286
299
  The ID of the VPC where the Kubernetes cluster will be located.
287
300
  """
288
301
  return pulumi.get(self, "vpc_uuid")
289
302
 
290
303
  @vpc_uuid.setter
291
- def vpc_uuid(self, value: Optional[pulumi.Input[str]]):
304
+ def vpc_uuid(self, value: Optional[pulumi.Input[builtins.str]]):
292
305
  pulumi.set(self, "vpc_uuid", value)
293
306
 
294
307
 
295
308
  @pulumi.input_type
296
309
  class _KubernetesClusterState:
297
310
  def __init__(__self__, *,
298
- auto_upgrade: Optional[pulumi.Input[bool]] = None,
311
+ auto_upgrade: Optional[pulumi.Input[builtins.bool]] = None,
299
312
  cluster_autoscaler_configurations: Optional[pulumi.Input[Sequence[pulumi.Input['KubernetesClusterClusterAutoscalerConfigurationArgs']]]] = None,
300
- cluster_subnet: Optional[pulumi.Input[str]] = None,
301
- cluster_urn: Optional[pulumi.Input[str]] = None,
313
+ cluster_subnet: Optional[pulumi.Input[builtins.str]] = None,
314
+ cluster_urn: Optional[pulumi.Input[builtins.str]] = None,
302
315
  control_plane_firewall: Optional[pulumi.Input['KubernetesClusterControlPlaneFirewallArgs']] = None,
303
- created_at: Optional[pulumi.Input[str]] = None,
304
- destroy_all_associated_resources: Optional[pulumi.Input[bool]] = None,
305
- endpoint: Optional[pulumi.Input[str]] = None,
306
- ha: Optional[pulumi.Input[bool]] = None,
307
- ipv4_address: Optional[pulumi.Input[str]] = None,
316
+ created_at: Optional[pulumi.Input[builtins.str]] = None,
317
+ destroy_all_associated_resources: Optional[pulumi.Input[builtins.bool]] = None,
318
+ endpoint: Optional[pulumi.Input[builtins.str]] = None,
319
+ ha: Optional[pulumi.Input[builtins.bool]] = None,
320
+ ipv4_address: Optional[pulumi.Input[builtins.str]] = None,
308
321
  kube_configs: Optional[pulumi.Input[Sequence[pulumi.Input['KubernetesClusterKubeConfigArgs']]]] = None,
309
- kubeconfig_expire_seconds: Optional[pulumi.Input[int]] = None,
322
+ kubeconfig_expire_seconds: Optional[pulumi.Input[builtins.int]] = None,
310
323
  maintenance_policy: Optional[pulumi.Input['KubernetesClusterMaintenancePolicyArgs']] = None,
311
- name: Optional[pulumi.Input[str]] = None,
324
+ name: Optional[pulumi.Input[builtins.str]] = None,
312
325
  node_pool: Optional[pulumi.Input['KubernetesClusterNodePoolArgs']] = None,
313
- region: Optional[pulumi.Input[Union[str, 'Region']]] = None,
314
- registry_integration: Optional[pulumi.Input[bool]] = None,
315
- service_subnet: Optional[pulumi.Input[str]] = None,
316
- status: Optional[pulumi.Input[str]] = None,
317
- surge_upgrade: Optional[pulumi.Input[bool]] = None,
318
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
319
- updated_at: Optional[pulumi.Input[str]] = None,
320
- version: Optional[pulumi.Input[str]] = None,
321
- vpc_uuid: Optional[pulumi.Input[str]] = None):
326
+ region: Optional[pulumi.Input[Union[builtins.str, 'Region']]] = None,
327
+ registry_integration: Optional[pulumi.Input[builtins.bool]] = None,
328
+ routing_agent: Optional[pulumi.Input['KubernetesClusterRoutingAgentArgs']] = None,
329
+ service_subnet: Optional[pulumi.Input[builtins.str]] = None,
330
+ status: Optional[pulumi.Input[builtins.str]] = None,
331
+ surge_upgrade: Optional[pulumi.Input[builtins.bool]] = None,
332
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
333
+ updated_at: Optional[pulumi.Input[builtins.str]] = None,
334
+ version: Optional[pulumi.Input[builtins.str]] = None,
335
+ vpc_uuid: Optional[pulumi.Input[builtins.str]] = None):
322
336
  """
323
337
  Input properties used for looking up and filtering KubernetesCluster resources.
324
- :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.
325
- :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).
326
- :param pulumi.Input[str] cluster_urn: The uniform resource name (URN) for the Kubernetes cluster.
327
- :param pulumi.Input[str] created_at: The date and time when the node was created.
328
- :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.
329
- :param pulumi.Input[str] endpoint: The base URL of the API server on the Kubernetes master node.
330
- :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
331
- :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+)
338
+ :param pulumi.Input[builtins.bool] auto_upgrade: A boolean value indicating whether the cluster will be automatically upgraded to new patch releases during its maintenance window.
339
+ :param pulumi.Input[builtins.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).
340
+ :param pulumi.Input[builtins.str] cluster_urn: The uniform resource name (URN) for the Kubernetes cluster.
341
+ :param pulumi.Input[builtins.str] created_at: The date and time when the node was created.
342
+ :param pulumi.Input[builtins.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.
343
+ :param pulumi.Input[builtins.str] endpoint: The base URL of the API server on the Kubernetes master node.
344
+ :param pulumi.Input[builtins.bool] ha: Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false
345
+ :param pulumi.Input[builtins.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+)
332
346
  :param pulumi.Input[Sequence[pulumi.Input['KubernetesClusterKubeConfigArgs']]] kube_configs: A representation of the Kubernetes cluster's kubeconfig with the following attributes:
333
- :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.
334
-
335
- This resource supports customized create timeouts. The default timeout is 30 minutes.
347
+ :param pulumi.Input[builtins.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.
336
348
  :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.
337
- :param pulumi.Input[str] name: A name for the Kubernetes cluster.
349
+ :param pulumi.Input[builtins.str] name: A name for the Kubernetes cluster.
338
350
  :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:
339
- :param pulumi.Input[Union[str, 'Region']] region: The slug identifier for the region where the Kubernetes cluster will be created.
340
- :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
341
- :param pulumi.Input[str] service_subnet: The range of assignable IP addresses for services running in the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native).
342
- :param pulumi.Input[str] status: A string indicating the current status of the individual node.
343
- :param pulumi.Input[bool] surge_upgrade: Enable/disable surge upgrades for a cluster. Default: true
344
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tag names to be applied to the Kubernetes cluster.
345
- :param pulumi.Input[str] updated_at: The date and time when the node was last updated.
346
- :param pulumi.Input[str] version: The slug identifier for the version of Kubernetes used for the cluster. Use [doctl](https://github.com/digitalocean/doctl) to find the available versions `doctl kubernetes options versions`. (**Note:** A cluster may only be upgraded to newer versions in-place. If the version is decreased, a new resource will be created.)
347
- :param pulumi.Input[str] vpc_uuid: The ID of the VPC where the Kubernetes cluster will be located.
351
+ :param pulumi.Input[Union[builtins.str, 'Region']] region: The slug identifier for the region where the Kubernetes cluster will be created.
352
+ :param pulumi.Input[builtins.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
353
+ :param pulumi.Input['KubernetesClusterRoutingAgentArgs'] routing_agent: Block containing options for the routing-agent component. If not specified, the routing-agent component will not be installed in the cluster.
354
+ :param pulumi.Input[builtins.str] service_subnet: The range of assignable IP addresses for services running in the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native).
355
+ :param pulumi.Input[builtins.str] status: A string indicating the current status of the individual node.
356
+ :param pulumi.Input[builtins.bool] surge_upgrade: Enable/disable surge upgrades for a cluster. Default: true
357
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: A list of tag names to be applied to the Kubernetes cluster.
358
+ :param pulumi.Input[builtins.str] updated_at: The date and time when the node was last updated.
359
+ :param pulumi.Input[builtins.str] version: The slug identifier for the version of Kubernetes used for the cluster. Use [doctl](https://github.com/digitalocean/doctl) to find the available versions `doctl kubernetes options versions`. (**Note:** A cluster may only be upgraded to newer versions in-place. If the version is decreased, a new resource will be created.)
360
+ :param pulumi.Input[builtins.str] vpc_uuid: The ID of the VPC where the Kubernetes cluster will be located.
348
361
  """
349
362
  if auto_upgrade is not None:
350
363
  pulumi.set(__self__, "auto_upgrade", auto_upgrade)
@@ -380,6 +393,8 @@ class _KubernetesClusterState:
380
393
  pulumi.set(__self__, "region", region)
381
394
  if registry_integration is not None:
382
395
  pulumi.set(__self__, "registry_integration", registry_integration)
396
+ if routing_agent is not None:
397
+ pulumi.set(__self__, "routing_agent", routing_agent)
383
398
  if service_subnet is not None:
384
399
  pulumi.set(__self__, "service_subnet", service_subnet)
385
400
  if status is not None:
@@ -397,14 +412,14 @@ class _KubernetesClusterState:
397
412
 
398
413
  @property
399
414
  @pulumi.getter(name="autoUpgrade")
400
- def auto_upgrade(self) -> Optional[pulumi.Input[bool]]:
415
+ def auto_upgrade(self) -> Optional[pulumi.Input[builtins.bool]]:
401
416
  """
402
417
  A boolean value indicating whether the cluster will be automatically upgraded to new patch releases during its maintenance window.
403
418
  """
404
419
  return pulumi.get(self, "auto_upgrade")
405
420
 
406
421
  @auto_upgrade.setter
407
- def auto_upgrade(self, value: Optional[pulumi.Input[bool]]):
422
+ def auto_upgrade(self, value: Optional[pulumi.Input[builtins.bool]]):
408
423
  pulumi.set(self, "auto_upgrade", value)
409
424
 
410
425
  @property
@@ -418,26 +433,26 @@ class _KubernetesClusterState:
418
433
 
419
434
  @property
420
435
  @pulumi.getter(name="clusterSubnet")
421
- def cluster_subnet(self) -> Optional[pulumi.Input[str]]:
436
+ def cluster_subnet(self) -> Optional[pulumi.Input[builtins.str]]:
422
437
  """
423
438
  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).
424
439
  """
425
440
  return pulumi.get(self, "cluster_subnet")
426
441
 
427
442
  @cluster_subnet.setter
428
- def cluster_subnet(self, value: Optional[pulumi.Input[str]]):
443
+ def cluster_subnet(self, value: Optional[pulumi.Input[builtins.str]]):
429
444
  pulumi.set(self, "cluster_subnet", value)
430
445
 
431
446
  @property
432
447
  @pulumi.getter(name="clusterUrn")
433
- def cluster_urn(self) -> Optional[pulumi.Input[str]]:
448
+ def cluster_urn(self) -> Optional[pulumi.Input[builtins.str]]:
434
449
  """
435
450
  The uniform resource name (URN) for the Kubernetes cluster.
436
451
  """
437
452
  return pulumi.get(self, "cluster_urn")
438
453
 
439
454
  @cluster_urn.setter
440
- def cluster_urn(self, value: Optional[pulumi.Input[str]]):
455
+ def cluster_urn(self, value: Optional[pulumi.Input[builtins.str]]):
441
456
  pulumi.set(self, "cluster_urn", value)
442
457
 
443
458
  @property
@@ -451,62 +466,62 @@ class _KubernetesClusterState:
451
466
 
452
467
  @property
453
468
  @pulumi.getter(name="createdAt")
454
- def created_at(self) -> Optional[pulumi.Input[str]]:
469
+ def created_at(self) -> Optional[pulumi.Input[builtins.str]]:
455
470
  """
456
471
  The date and time when the node was created.
457
472
  """
458
473
  return pulumi.get(self, "created_at")
459
474
 
460
475
  @created_at.setter
461
- def created_at(self, value: Optional[pulumi.Input[str]]):
476
+ def created_at(self, value: Optional[pulumi.Input[builtins.str]]):
462
477
  pulumi.set(self, "created_at", value)
463
478
 
464
479
  @property
465
480
  @pulumi.getter(name="destroyAllAssociatedResources")
466
- def destroy_all_associated_resources(self) -> Optional[pulumi.Input[bool]]:
481
+ def destroy_all_associated_resources(self) -> Optional[pulumi.Input[builtins.bool]]:
467
482
  """
468
483
  **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.
469
484
  """
470
485
  return pulumi.get(self, "destroy_all_associated_resources")
471
486
 
472
487
  @destroy_all_associated_resources.setter
473
- def destroy_all_associated_resources(self, value: Optional[pulumi.Input[bool]]):
488
+ def destroy_all_associated_resources(self, value: Optional[pulumi.Input[builtins.bool]]):
474
489
  pulumi.set(self, "destroy_all_associated_resources", value)
475
490
 
476
491
  @property
477
492
  @pulumi.getter
478
- def endpoint(self) -> Optional[pulumi.Input[str]]:
493
+ def endpoint(self) -> Optional[pulumi.Input[builtins.str]]:
479
494
  """
480
495
  The base URL of the API server on the Kubernetes master node.
481
496
  """
482
497
  return pulumi.get(self, "endpoint")
483
498
 
484
499
  @endpoint.setter
485
- def endpoint(self, value: Optional[pulumi.Input[str]]):
500
+ def endpoint(self, value: Optional[pulumi.Input[builtins.str]]):
486
501
  pulumi.set(self, "endpoint", value)
487
502
 
488
503
  @property
489
504
  @pulumi.getter
490
- def ha(self) -> Optional[pulumi.Input[bool]]:
505
+ def ha(self) -> Optional[pulumi.Input[builtins.bool]]:
491
506
  """
492
507
  Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false
493
508
  """
494
509
  return pulumi.get(self, "ha")
495
510
 
496
511
  @ha.setter
497
- def ha(self, value: Optional[pulumi.Input[bool]]):
512
+ def ha(self, value: Optional[pulumi.Input[builtins.bool]]):
498
513
  pulumi.set(self, "ha", value)
499
514
 
500
515
  @property
501
516
  @pulumi.getter(name="ipv4Address")
502
- def ipv4_address(self) -> Optional[pulumi.Input[str]]:
517
+ def ipv4_address(self) -> Optional[pulumi.Input[builtins.str]]:
503
518
  """
504
519
  The public IPv4 address of the Kubernetes master node. This will not be set if high availability is configured on the cluster (v1.21+)
505
520
  """
506
521
  return pulumi.get(self, "ipv4_address")
507
522
 
508
523
  @ipv4_address.setter
509
- def ipv4_address(self, value: Optional[pulumi.Input[str]]):
524
+ def ipv4_address(self, value: Optional[pulumi.Input[builtins.str]]):
510
525
  pulumi.set(self, "ipv4_address", value)
511
526
 
512
527
  @property
@@ -523,16 +538,14 @@ class _KubernetesClusterState:
523
538
 
524
539
  @property
525
540
  @pulumi.getter(name="kubeconfigExpireSeconds")
526
- def kubeconfig_expire_seconds(self) -> Optional[pulumi.Input[int]]:
541
+ def kubeconfig_expire_seconds(self) -> Optional[pulumi.Input[builtins.int]]:
527
542
  """
528
543
  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.
529
-
530
- This resource supports customized create timeouts. The default timeout is 30 minutes.
531
544
  """
532
545
  return pulumi.get(self, "kubeconfig_expire_seconds")
533
546
 
534
547
  @kubeconfig_expire_seconds.setter
535
- def kubeconfig_expire_seconds(self, value: Optional[pulumi.Input[int]]):
548
+ def kubeconfig_expire_seconds(self, value: Optional[pulumi.Input[builtins.int]]):
536
549
  pulumi.set(self, "kubeconfig_expire_seconds", value)
537
550
 
538
551
  @property
@@ -549,14 +562,14 @@ class _KubernetesClusterState:
549
562
 
550
563
  @property
551
564
  @pulumi.getter
552
- def name(self) -> Optional[pulumi.Input[str]]:
565
+ def name(self) -> Optional[pulumi.Input[builtins.str]]:
553
566
  """
554
567
  A name for the Kubernetes cluster.
555
568
  """
556
569
  return pulumi.get(self, "name")
557
570
 
558
571
  @name.setter
559
- def name(self, value: Optional[pulumi.Input[str]]):
572
+ def name(self, value: Optional[pulumi.Input[builtins.str]]):
560
573
  pulumi.set(self, "name", value)
561
574
 
562
575
  @property
@@ -573,110 +586,122 @@ class _KubernetesClusterState:
573
586
 
574
587
  @property
575
588
  @pulumi.getter
576
- def region(self) -> Optional[pulumi.Input[Union[str, 'Region']]]:
589
+ def region(self) -> Optional[pulumi.Input[Union[builtins.str, 'Region']]]:
577
590
  """
578
591
  The slug identifier for the region where the Kubernetes cluster will be created.
579
592
  """
580
593
  return pulumi.get(self, "region")
581
594
 
582
595
  @region.setter
583
- def region(self, value: Optional[pulumi.Input[Union[str, 'Region']]]):
596
+ def region(self, value: Optional[pulumi.Input[Union[builtins.str, 'Region']]]):
584
597
  pulumi.set(self, "region", value)
585
598
 
586
599
  @property
587
600
  @pulumi.getter(name="registryIntegration")
588
- def registry_integration(self) -> Optional[pulumi.Input[bool]]:
601
+ def registry_integration(self) -> Optional[pulumi.Input[builtins.bool]]:
589
602
  """
590
603
  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
591
604
  """
592
605
  return pulumi.get(self, "registry_integration")
593
606
 
594
607
  @registry_integration.setter
595
- def registry_integration(self, value: Optional[pulumi.Input[bool]]):
608
+ def registry_integration(self, value: Optional[pulumi.Input[builtins.bool]]):
596
609
  pulumi.set(self, "registry_integration", value)
597
610
 
611
+ @property
612
+ @pulumi.getter(name="routingAgent")
613
+ def routing_agent(self) -> Optional[pulumi.Input['KubernetesClusterRoutingAgentArgs']]:
614
+ """
615
+ Block containing options for the routing-agent component. If not specified, the routing-agent component will not be installed in the cluster.
616
+ """
617
+ return pulumi.get(self, "routing_agent")
618
+
619
+ @routing_agent.setter
620
+ def routing_agent(self, value: Optional[pulumi.Input['KubernetesClusterRoutingAgentArgs']]):
621
+ pulumi.set(self, "routing_agent", value)
622
+
598
623
  @property
599
624
  @pulumi.getter(name="serviceSubnet")
600
- def service_subnet(self) -> Optional[pulumi.Input[str]]:
625
+ def service_subnet(self) -> Optional[pulumi.Input[builtins.str]]:
601
626
  """
602
627
  The range of assignable IP addresses for services running in the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native).
603
628
  """
604
629
  return pulumi.get(self, "service_subnet")
605
630
 
606
631
  @service_subnet.setter
607
- def service_subnet(self, value: Optional[pulumi.Input[str]]):
632
+ def service_subnet(self, value: Optional[pulumi.Input[builtins.str]]):
608
633
  pulumi.set(self, "service_subnet", value)
609
634
 
610
635
  @property
611
636
  @pulumi.getter
612
- def status(self) -> Optional[pulumi.Input[str]]:
637
+ def status(self) -> Optional[pulumi.Input[builtins.str]]:
613
638
  """
614
639
  A string indicating the current status of the individual node.
615
640
  """
616
641
  return pulumi.get(self, "status")
617
642
 
618
643
  @status.setter
619
- def status(self, value: Optional[pulumi.Input[str]]):
644
+ def status(self, value: Optional[pulumi.Input[builtins.str]]):
620
645
  pulumi.set(self, "status", value)
621
646
 
622
647
  @property
623
648
  @pulumi.getter(name="surgeUpgrade")
624
- def surge_upgrade(self) -> Optional[pulumi.Input[bool]]:
649
+ def surge_upgrade(self) -> Optional[pulumi.Input[builtins.bool]]:
625
650
  """
626
651
  Enable/disable surge upgrades for a cluster. Default: true
627
652
  """
628
653
  return pulumi.get(self, "surge_upgrade")
629
654
 
630
655
  @surge_upgrade.setter
631
- def surge_upgrade(self, value: Optional[pulumi.Input[bool]]):
656
+ def surge_upgrade(self, value: Optional[pulumi.Input[builtins.bool]]):
632
657
  pulumi.set(self, "surge_upgrade", value)
633
658
 
634
659
  @property
635
660
  @pulumi.getter
636
- def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
661
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
637
662
  """
638
663
  A list of tag names to be applied to the Kubernetes cluster.
639
664
  """
640
665
  return pulumi.get(self, "tags")
641
666
 
642
667
  @tags.setter
643
- def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
668
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
644
669
  pulumi.set(self, "tags", value)
645
670
 
646
671
  @property
647
672
  @pulumi.getter(name="updatedAt")
648
- def updated_at(self) -> Optional[pulumi.Input[str]]:
673
+ def updated_at(self) -> Optional[pulumi.Input[builtins.str]]:
649
674
  """
650
675
  The date and time when the node was last updated.
651
676
  """
652
677
  return pulumi.get(self, "updated_at")
653
678
 
654
679
  @updated_at.setter
655
- def updated_at(self, value: Optional[pulumi.Input[str]]):
680
+ def updated_at(self, value: Optional[pulumi.Input[builtins.str]]):
656
681
  pulumi.set(self, "updated_at", value)
657
682
 
658
683
  @property
659
684
  @pulumi.getter
660
- def version(self) -> Optional[pulumi.Input[str]]:
685
+ def version(self) -> Optional[pulumi.Input[builtins.str]]:
661
686
  """
662
687
  The slug identifier for the version of Kubernetes used for the cluster. Use [doctl](https://github.com/digitalocean/doctl) to find the available versions `doctl kubernetes options versions`. (**Note:** A cluster may only be upgraded to newer versions in-place. If the version is decreased, a new resource will be created.)
663
688
  """
664
689
  return pulumi.get(self, "version")
665
690
 
666
691
  @version.setter
667
- def version(self, value: Optional[pulumi.Input[str]]):
692
+ def version(self, value: Optional[pulumi.Input[builtins.str]]):
668
693
  pulumi.set(self, "version", value)
669
694
 
670
695
  @property
671
696
  @pulumi.getter(name="vpcUuid")
672
- def vpc_uuid(self) -> Optional[pulumi.Input[str]]:
697
+ def vpc_uuid(self) -> Optional[pulumi.Input[builtins.str]]:
673
698
  """
674
699
  The ID of the VPC where the Kubernetes cluster will be located.
675
700
  """
676
701
  return pulumi.get(self, "vpc_uuid")
677
702
 
678
703
  @vpc_uuid.setter
679
- def vpc_uuid(self, value: Optional[pulumi.Input[str]]):
704
+ def vpc_uuid(self, value: Optional[pulumi.Input[builtins.str]]):
680
705
  pulumi.set(self, "vpc_uuid", value)
681
706
 
682
707
 
@@ -685,23 +710,24 @@ class KubernetesCluster(pulumi.CustomResource):
685
710
  def __init__(__self__,
686
711
  resource_name: str,
687
712
  opts: Optional[pulumi.ResourceOptions] = None,
688
- auto_upgrade: Optional[pulumi.Input[bool]] = None,
713
+ auto_upgrade: Optional[pulumi.Input[builtins.bool]] = None,
689
714
  cluster_autoscaler_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['KubernetesClusterClusterAutoscalerConfigurationArgs', 'KubernetesClusterClusterAutoscalerConfigurationArgsDict']]]]] = None,
690
- cluster_subnet: Optional[pulumi.Input[str]] = None,
715
+ cluster_subnet: Optional[pulumi.Input[builtins.str]] = None,
691
716
  control_plane_firewall: Optional[pulumi.Input[Union['KubernetesClusterControlPlaneFirewallArgs', 'KubernetesClusterControlPlaneFirewallArgsDict']]] = None,
692
- destroy_all_associated_resources: Optional[pulumi.Input[bool]] = None,
693
- ha: Optional[pulumi.Input[bool]] = None,
694
- kubeconfig_expire_seconds: Optional[pulumi.Input[int]] = None,
717
+ destroy_all_associated_resources: Optional[pulumi.Input[builtins.bool]] = None,
718
+ ha: Optional[pulumi.Input[builtins.bool]] = None,
719
+ kubeconfig_expire_seconds: Optional[pulumi.Input[builtins.int]] = None,
695
720
  maintenance_policy: Optional[pulumi.Input[Union['KubernetesClusterMaintenancePolicyArgs', 'KubernetesClusterMaintenancePolicyArgsDict']]] = None,
696
- name: Optional[pulumi.Input[str]] = None,
721
+ name: Optional[pulumi.Input[builtins.str]] = None,
697
722
  node_pool: Optional[pulumi.Input[Union['KubernetesClusterNodePoolArgs', 'KubernetesClusterNodePoolArgsDict']]] = None,
698
- region: Optional[pulumi.Input[Union[str, 'Region']]] = None,
699
- registry_integration: Optional[pulumi.Input[bool]] = None,
700
- service_subnet: Optional[pulumi.Input[str]] = None,
701
- surge_upgrade: Optional[pulumi.Input[bool]] = None,
702
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
703
- version: Optional[pulumi.Input[str]] = None,
704
- vpc_uuid: Optional[pulumi.Input[str]] = None,
723
+ region: Optional[pulumi.Input[Union[builtins.str, 'Region']]] = None,
724
+ registry_integration: Optional[pulumi.Input[builtins.bool]] = None,
725
+ routing_agent: Optional[pulumi.Input[Union['KubernetesClusterRoutingAgentArgs', 'KubernetesClusterRoutingAgentArgsDict']]] = None,
726
+ service_subnet: Optional[pulumi.Input[builtins.str]] = None,
727
+ surge_upgrade: Optional[pulumi.Input[builtins.bool]] = None,
728
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
729
+ version: Optional[pulumi.Input[builtins.str]] = None,
730
+ vpc_uuid: Optional[pulumi.Input[builtins.str]] = None,
705
731
  __props__=None):
706
732
  """
707
733
  ## Import
@@ -732,23 +758,22 @@ class KubernetesCluster(pulumi.CustomResource):
732
758
 
733
759
  :param str resource_name: The name of the resource.
734
760
  :param pulumi.ResourceOptions opts: Options for the resource.
735
- :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.
736
- :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).
737
- :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.
738
- :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
739
- :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.
740
-
741
- This resource supports customized create timeouts. The default timeout is 30 minutes.
761
+ :param pulumi.Input[builtins.bool] auto_upgrade: A boolean value indicating whether the cluster will be automatically upgraded to new patch releases during its maintenance window.
762
+ :param pulumi.Input[builtins.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).
763
+ :param pulumi.Input[builtins.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.
764
+ :param pulumi.Input[builtins.bool] ha: Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false
765
+ :param pulumi.Input[builtins.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.
742
766
  :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.
743
- :param pulumi.Input[str] name: A name for the Kubernetes cluster.
767
+ :param pulumi.Input[builtins.str] name: A name for the Kubernetes cluster.
744
768
  :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:
745
- :param pulumi.Input[Union[str, 'Region']] region: The slug identifier for the region where the Kubernetes cluster will be created.
746
- :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
747
- :param pulumi.Input[str] service_subnet: The range of assignable IP addresses for services running in the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native).
748
- :param pulumi.Input[bool] surge_upgrade: Enable/disable surge upgrades for a cluster. Default: true
749
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tag names to be applied to the Kubernetes cluster.
750
- :param pulumi.Input[str] version: The slug identifier for the version of Kubernetes used for the cluster. Use [doctl](https://github.com/digitalocean/doctl) to find the available versions `doctl kubernetes options versions`. (**Note:** A cluster may only be upgraded to newer versions in-place. If the version is decreased, a new resource will be created.)
751
- :param pulumi.Input[str] vpc_uuid: The ID of the VPC where the Kubernetes cluster will be located.
769
+ :param pulumi.Input[Union[builtins.str, 'Region']] region: The slug identifier for the region where the Kubernetes cluster will be created.
770
+ :param pulumi.Input[builtins.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
771
+ :param pulumi.Input[Union['KubernetesClusterRoutingAgentArgs', 'KubernetesClusterRoutingAgentArgsDict']] routing_agent: Block containing options for the routing-agent component. If not specified, the routing-agent component will not be installed in the cluster.
772
+ :param pulumi.Input[builtins.str] service_subnet: The range of assignable IP addresses for services running in the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native).
773
+ :param pulumi.Input[builtins.bool] surge_upgrade: Enable/disable surge upgrades for a cluster. Default: true
774
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: A list of tag names to be applied to the Kubernetes cluster.
775
+ :param pulumi.Input[builtins.str] version: The slug identifier for the version of Kubernetes used for the cluster. Use [doctl](https://github.com/digitalocean/doctl) to find the available versions `doctl kubernetes options versions`. (**Note:** A cluster may only be upgraded to newer versions in-place. If the version is decreased, a new resource will be created.)
776
+ :param pulumi.Input[builtins.str] vpc_uuid: The ID of the VPC where the Kubernetes cluster will be located.
752
777
  """
753
778
  ...
754
779
  @overload
@@ -798,23 +823,24 @@ class KubernetesCluster(pulumi.CustomResource):
798
823
  def _internal_init(__self__,
799
824
  resource_name: str,
800
825
  opts: Optional[pulumi.ResourceOptions] = None,
801
- auto_upgrade: Optional[pulumi.Input[bool]] = None,
826
+ auto_upgrade: Optional[pulumi.Input[builtins.bool]] = None,
802
827
  cluster_autoscaler_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['KubernetesClusterClusterAutoscalerConfigurationArgs', 'KubernetesClusterClusterAutoscalerConfigurationArgsDict']]]]] = None,
803
- cluster_subnet: Optional[pulumi.Input[str]] = None,
828
+ cluster_subnet: Optional[pulumi.Input[builtins.str]] = None,
804
829
  control_plane_firewall: Optional[pulumi.Input[Union['KubernetesClusterControlPlaneFirewallArgs', 'KubernetesClusterControlPlaneFirewallArgsDict']]] = None,
805
- destroy_all_associated_resources: Optional[pulumi.Input[bool]] = None,
806
- ha: Optional[pulumi.Input[bool]] = None,
807
- kubeconfig_expire_seconds: Optional[pulumi.Input[int]] = None,
830
+ destroy_all_associated_resources: Optional[pulumi.Input[builtins.bool]] = None,
831
+ ha: Optional[pulumi.Input[builtins.bool]] = None,
832
+ kubeconfig_expire_seconds: Optional[pulumi.Input[builtins.int]] = None,
808
833
  maintenance_policy: Optional[pulumi.Input[Union['KubernetesClusterMaintenancePolicyArgs', 'KubernetesClusterMaintenancePolicyArgsDict']]] = None,
809
- name: Optional[pulumi.Input[str]] = None,
834
+ name: Optional[pulumi.Input[builtins.str]] = None,
810
835
  node_pool: Optional[pulumi.Input[Union['KubernetesClusterNodePoolArgs', 'KubernetesClusterNodePoolArgsDict']]] = None,
811
- region: Optional[pulumi.Input[Union[str, 'Region']]] = None,
812
- registry_integration: Optional[pulumi.Input[bool]] = None,
813
- service_subnet: Optional[pulumi.Input[str]] = None,
814
- surge_upgrade: Optional[pulumi.Input[bool]] = None,
815
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
816
- version: Optional[pulumi.Input[str]] = None,
817
- vpc_uuid: Optional[pulumi.Input[str]] = None,
836
+ region: Optional[pulumi.Input[Union[builtins.str, 'Region']]] = None,
837
+ registry_integration: Optional[pulumi.Input[builtins.bool]] = None,
838
+ routing_agent: Optional[pulumi.Input[Union['KubernetesClusterRoutingAgentArgs', 'KubernetesClusterRoutingAgentArgsDict']]] = None,
839
+ service_subnet: Optional[pulumi.Input[builtins.str]] = None,
840
+ surge_upgrade: Optional[pulumi.Input[builtins.bool]] = None,
841
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
842
+ version: Optional[pulumi.Input[builtins.str]] = None,
843
+ vpc_uuid: Optional[pulumi.Input[builtins.str]] = None,
818
844
  __props__=None):
819
845
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
820
846
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -840,6 +866,7 @@ class KubernetesCluster(pulumi.CustomResource):
840
866
  raise TypeError("Missing required property 'region'")
841
867
  __props__.__dict__["region"] = region
842
868
  __props__.__dict__["registry_integration"] = registry_integration
869
+ __props__.__dict__["routing_agent"] = routing_agent
843
870
  __props__.__dict__["service_subnet"] = service_subnet
844
871
  __props__.__dict__["surge_upgrade"] = surge_upgrade
845
872
  __props__.__dict__["tags"] = tags
@@ -866,30 +893,31 @@ class KubernetesCluster(pulumi.CustomResource):
866
893
  def get(resource_name: str,
867
894
  id: pulumi.Input[str],
868
895
  opts: Optional[pulumi.ResourceOptions] = None,
869
- auto_upgrade: Optional[pulumi.Input[bool]] = None,
896
+ auto_upgrade: Optional[pulumi.Input[builtins.bool]] = None,
870
897
  cluster_autoscaler_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['KubernetesClusterClusterAutoscalerConfigurationArgs', 'KubernetesClusterClusterAutoscalerConfigurationArgsDict']]]]] = None,
871
- cluster_subnet: Optional[pulumi.Input[str]] = None,
872
- cluster_urn: Optional[pulumi.Input[str]] = None,
898
+ cluster_subnet: Optional[pulumi.Input[builtins.str]] = None,
899
+ cluster_urn: Optional[pulumi.Input[builtins.str]] = None,
873
900
  control_plane_firewall: Optional[pulumi.Input[Union['KubernetesClusterControlPlaneFirewallArgs', 'KubernetesClusterControlPlaneFirewallArgsDict']]] = None,
874
- created_at: Optional[pulumi.Input[str]] = None,
875
- destroy_all_associated_resources: Optional[pulumi.Input[bool]] = None,
876
- endpoint: Optional[pulumi.Input[str]] = None,
877
- ha: Optional[pulumi.Input[bool]] = None,
878
- ipv4_address: Optional[pulumi.Input[str]] = None,
901
+ created_at: Optional[pulumi.Input[builtins.str]] = None,
902
+ destroy_all_associated_resources: Optional[pulumi.Input[builtins.bool]] = None,
903
+ endpoint: Optional[pulumi.Input[builtins.str]] = None,
904
+ ha: Optional[pulumi.Input[builtins.bool]] = None,
905
+ ipv4_address: Optional[pulumi.Input[builtins.str]] = None,
879
906
  kube_configs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['KubernetesClusterKubeConfigArgs', 'KubernetesClusterKubeConfigArgsDict']]]]] = None,
880
- kubeconfig_expire_seconds: Optional[pulumi.Input[int]] = None,
907
+ kubeconfig_expire_seconds: Optional[pulumi.Input[builtins.int]] = None,
881
908
  maintenance_policy: Optional[pulumi.Input[Union['KubernetesClusterMaintenancePolicyArgs', 'KubernetesClusterMaintenancePolicyArgsDict']]] = None,
882
- name: Optional[pulumi.Input[str]] = None,
909
+ name: Optional[pulumi.Input[builtins.str]] = None,
883
910
  node_pool: Optional[pulumi.Input[Union['KubernetesClusterNodePoolArgs', 'KubernetesClusterNodePoolArgsDict']]] = None,
884
- region: Optional[pulumi.Input[Union[str, 'Region']]] = None,
885
- registry_integration: Optional[pulumi.Input[bool]] = None,
886
- service_subnet: Optional[pulumi.Input[str]] = None,
887
- status: Optional[pulumi.Input[str]] = None,
888
- surge_upgrade: Optional[pulumi.Input[bool]] = None,
889
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
890
- updated_at: Optional[pulumi.Input[str]] = None,
891
- version: Optional[pulumi.Input[str]] = None,
892
- vpc_uuid: Optional[pulumi.Input[str]] = None) -> 'KubernetesCluster':
911
+ region: Optional[pulumi.Input[Union[builtins.str, 'Region']]] = None,
912
+ registry_integration: Optional[pulumi.Input[builtins.bool]] = None,
913
+ routing_agent: Optional[pulumi.Input[Union['KubernetesClusterRoutingAgentArgs', 'KubernetesClusterRoutingAgentArgsDict']]] = None,
914
+ service_subnet: Optional[pulumi.Input[builtins.str]] = None,
915
+ status: Optional[pulumi.Input[builtins.str]] = None,
916
+ surge_upgrade: Optional[pulumi.Input[builtins.bool]] = None,
917
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
918
+ updated_at: Optional[pulumi.Input[builtins.str]] = None,
919
+ version: Optional[pulumi.Input[builtins.str]] = None,
920
+ vpc_uuid: Optional[pulumi.Input[builtins.str]] = None) -> 'KubernetesCluster':
893
921
  """
894
922
  Get an existing KubernetesCluster resource's state with the given name, id, and optional extra
895
923
  properties used to qualify the lookup.
@@ -897,30 +925,29 @@ class KubernetesCluster(pulumi.CustomResource):
897
925
  :param str resource_name: The unique name of the resulting resource.
898
926
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
899
927
  :param pulumi.ResourceOptions opts: Options for the resource.
900
- :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.
901
- :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).
902
- :param pulumi.Input[str] cluster_urn: The uniform resource name (URN) for the Kubernetes cluster.
903
- :param pulumi.Input[str] created_at: The date and time when the node was created.
904
- :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.
905
- :param pulumi.Input[str] endpoint: The base URL of the API server on the Kubernetes master node.
906
- :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
907
- :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+)
928
+ :param pulumi.Input[builtins.bool] auto_upgrade: A boolean value indicating whether the cluster will be automatically upgraded to new patch releases during its maintenance window.
929
+ :param pulumi.Input[builtins.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).
930
+ :param pulumi.Input[builtins.str] cluster_urn: The uniform resource name (URN) for the Kubernetes cluster.
931
+ :param pulumi.Input[builtins.str] created_at: The date and time when the node was created.
932
+ :param pulumi.Input[builtins.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.
933
+ :param pulumi.Input[builtins.str] endpoint: The base URL of the API server on the Kubernetes master node.
934
+ :param pulumi.Input[builtins.bool] ha: Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false
935
+ :param pulumi.Input[builtins.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+)
908
936
  :param pulumi.Input[Sequence[pulumi.Input[Union['KubernetesClusterKubeConfigArgs', 'KubernetesClusterKubeConfigArgsDict']]]] kube_configs: A representation of the Kubernetes cluster's kubeconfig with the following attributes:
909
- :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.
910
-
911
- This resource supports customized create timeouts. The default timeout is 30 minutes.
937
+ :param pulumi.Input[builtins.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.
912
938
  :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.
913
- :param pulumi.Input[str] name: A name for the Kubernetes cluster.
939
+ :param pulumi.Input[builtins.str] name: A name for the Kubernetes cluster.
914
940
  :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:
915
- :param pulumi.Input[Union[str, 'Region']] region: The slug identifier for the region where the Kubernetes cluster will be created.
916
- :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
917
- :param pulumi.Input[str] service_subnet: The range of assignable IP addresses for services running in the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native).
918
- :param pulumi.Input[str] status: A string indicating the current status of the individual node.
919
- :param pulumi.Input[bool] surge_upgrade: Enable/disable surge upgrades for a cluster. Default: true
920
- :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tag names to be applied to the Kubernetes cluster.
921
- :param pulumi.Input[str] updated_at: The date and time when the node was last updated.
922
- :param pulumi.Input[str] version: The slug identifier for the version of Kubernetes used for the cluster. Use [doctl](https://github.com/digitalocean/doctl) to find the available versions `doctl kubernetes options versions`. (**Note:** A cluster may only be upgraded to newer versions in-place. If the version is decreased, a new resource will be created.)
923
- :param pulumi.Input[str] vpc_uuid: The ID of the VPC where the Kubernetes cluster will be located.
941
+ :param pulumi.Input[Union[builtins.str, 'Region']] region: The slug identifier for the region where the Kubernetes cluster will be created.
942
+ :param pulumi.Input[builtins.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
943
+ :param pulumi.Input[Union['KubernetesClusterRoutingAgentArgs', 'KubernetesClusterRoutingAgentArgsDict']] routing_agent: Block containing options for the routing-agent component. If not specified, the routing-agent component will not be installed in the cluster.
944
+ :param pulumi.Input[builtins.str] service_subnet: The range of assignable IP addresses for services running in the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native).
945
+ :param pulumi.Input[builtins.str] status: A string indicating the current status of the individual node.
946
+ :param pulumi.Input[builtins.bool] surge_upgrade: Enable/disable surge upgrades for a cluster. Default: true
947
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] tags: A list of tag names to be applied to the Kubernetes cluster.
948
+ :param pulumi.Input[builtins.str] updated_at: The date and time when the node was last updated.
949
+ :param pulumi.Input[builtins.str] version: The slug identifier for the version of Kubernetes used for the cluster. Use [doctl](https://github.com/digitalocean/doctl) to find the available versions `doctl kubernetes options versions`. (**Note:** A cluster may only be upgraded to newer versions in-place. If the version is decreased, a new resource will be created.)
950
+ :param pulumi.Input[builtins.str] vpc_uuid: The ID of the VPC where the Kubernetes cluster will be located.
924
951
  """
925
952
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
926
953
 
@@ -943,6 +970,7 @@ class KubernetesCluster(pulumi.CustomResource):
943
970
  __props__.__dict__["node_pool"] = node_pool
944
971
  __props__.__dict__["region"] = region
945
972
  __props__.__dict__["registry_integration"] = registry_integration
973
+ __props__.__dict__["routing_agent"] = routing_agent
946
974
  __props__.__dict__["service_subnet"] = service_subnet
947
975
  __props__.__dict__["status"] = status
948
976
  __props__.__dict__["surge_upgrade"] = surge_upgrade
@@ -954,7 +982,7 @@ class KubernetesCluster(pulumi.CustomResource):
954
982
 
955
983
  @property
956
984
  @pulumi.getter(name="autoUpgrade")
957
- def auto_upgrade(self) -> pulumi.Output[Optional[bool]]:
985
+ def auto_upgrade(self) -> pulumi.Output[Optional[builtins.bool]]:
958
986
  """
959
987
  A boolean value indicating whether the cluster will be automatically upgraded to new patch releases during its maintenance window.
960
988
  """
@@ -967,7 +995,7 @@ class KubernetesCluster(pulumi.CustomResource):
967
995
 
968
996
  @property
969
997
  @pulumi.getter(name="clusterSubnet")
970
- def cluster_subnet(self) -> pulumi.Output[str]:
998
+ def cluster_subnet(self) -> pulumi.Output[builtins.str]:
971
999
  """
972
1000
  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).
973
1001
  """
@@ -975,7 +1003,7 @@ class KubernetesCluster(pulumi.CustomResource):
975
1003
 
976
1004
  @property
977
1005
  @pulumi.getter(name="clusterUrn")
978
- def cluster_urn(self) -> pulumi.Output[str]:
1006
+ def cluster_urn(self) -> pulumi.Output[builtins.str]:
979
1007
  """
980
1008
  The uniform resource name (URN) for the Kubernetes cluster.
981
1009
  """
@@ -988,7 +1016,7 @@ class KubernetesCluster(pulumi.CustomResource):
988
1016
 
989
1017
  @property
990
1018
  @pulumi.getter(name="createdAt")
991
- def created_at(self) -> pulumi.Output[str]:
1019
+ def created_at(self) -> pulumi.Output[builtins.str]:
992
1020
  """
993
1021
  The date and time when the node was created.
994
1022
  """
@@ -996,7 +1024,7 @@ class KubernetesCluster(pulumi.CustomResource):
996
1024
 
997
1025
  @property
998
1026
  @pulumi.getter(name="destroyAllAssociatedResources")
999
- def destroy_all_associated_resources(self) -> pulumi.Output[Optional[bool]]:
1027
+ def destroy_all_associated_resources(self) -> pulumi.Output[Optional[builtins.bool]]:
1000
1028
  """
1001
1029
  **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.
1002
1030
  """
@@ -1004,7 +1032,7 @@ class KubernetesCluster(pulumi.CustomResource):
1004
1032
 
1005
1033
  @property
1006
1034
  @pulumi.getter
1007
- def endpoint(self) -> pulumi.Output[str]:
1035
+ def endpoint(self) -> pulumi.Output[builtins.str]:
1008
1036
  """
1009
1037
  The base URL of the API server on the Kubernetes master node.
1010
1038
  """
@@ -1012,7 +1040,7 @@ class KubernetesCluster(pulumi.CustomResource):
1012
1040
 
1013
1041
  @property
1014
1042
  @pulumi.getter
1015
- def ha(self) -> pulumi.Output[Optional[bool]]:
1043
+ def ha(self) -> pulumi.Output[Optional[builtins.bool]]:
1016
1044
  """
1017
1045
  Enable/disable the high availability control plane for a cluster. Once enabled for a cluster, high availability cannot be disabled. Default: false
1018
1046
  """
@@ -1020,7 +1048,7 @@ class KubernetesCluster(pulumi.CustomResource):
1020
1048
 
1021
1049
  @property
1022
1050
  @pulumi.getter(name="ipv4Address")
1023
- def ipv4_address(self) -> pulumi.Output[str]:
1051
+ def ipv4_address(self) -> pulumi.Output[builtins.str]:
1024
1052
  """
1025
1053
  The public IPv4 address of the Kubernetes master node. This will not be set if high availability is configured on the cluster (v1.21+)
1026
1054
  """
@@ -1036,11 +1064,9 @@ class KubernetesCluster(pulumi.CustomResource):
1036
1064
 
1037
1065
  @property
1038
1066
  @pulumi.getter(name="kubeconfigExpireSeconds")
1039
- def kubeconfig_expire_seconds(self) -> pulumi.Output[Optional[int]]:
1067
+ def kubeconfig_expire_seconds(self) -> pulumi.Output[Optional[builtins.int]]:
1040
1068
  """
1041
1069
  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.
1042
-
1043
- This resource supports customized create timeouts. The default timeout is 30 minutes.
1044
1070
  """
1045
1071
  return pulumi.get(self, "kubeconfig_expire_seconds")
1046
1072
 
@@ -1054,7 +1080,7 @@ class KubernetesCluster(pulumi.CustomResource):
1054
1080
 
1055
1081
  @property
1056
1082
  @pulumi.getter
1057
- def name(self) -> pulumi.Output[str]:
1083
+ def name(self) -> pulumi.Output[builtins.str]:
1058
1084
  """
1059
1085
  A name for the Kubernetes cluster.
1060
1086
  """
@@ -1070,7 +1096,7 @@ class KubernetesCluster(pulumi.CustomResource):
1070
1096
 
1071
1097
  @property
1072
1098
  @pulumi.getter
1073
- def region(self) -> pulumi.Output[str]:
1099
+ def region(self) -> pulumi.Output[builtins.str]:
1074
1100
  """
1075
1101
  The slug identifier for the region where the Kubernetes cluster will be created.
1076
1102
  """
@@ -1078,15 +1104,23 @@ class KubernetesCluster(pulumi.CustomResource):
1078
1104
 
1079
1105
  @property
1080
1106
  @pulumi.getter(name="registryIntegration")
1081
- def registry_integration(self) -> pulumi.Output[Optional[bool]]:
1107
+ def registry_integration(self) -> pulumi.Output[Optional[builtins.bool]]:
1082
1108
  """
1083
1109
  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
1084
1110
  """
1085
1111
  return pulumi.get(self, "registry_integration")
1086
1112
 
1113
+ @property
1114
+ @pulumi.getter(name="routingAgent")
1115
+ def routing_agent(self) -> pulumi.Output['outputs.KubernetesClusterRoutingAgent']:
1116
+ """
1117
+ Block containing options for the routing-agent component. If not specified, the routing-agent component will not be installed in the cluster.
1118
+ """
1119
+ return pulumi.get(self, "routing_agent")
1120
+
1087
1121
  @property
1088
1122
  @pulumi.getter(name="serviceSubnet")
1089
- def service_subnet(self) -> pulumi.Output[str]:
1123
+ def service_subnet(self) -> pulumi.Output[builtins.str]:
1090
1124
  """
1091
1125
  The range of assignable IP addresses for services running in the Kubernetes cluster. For more information, see [here](https://docs.digitalocean.com/products/kubernetes/how-to/create-clusters/#create-with-vpc-native).
1092
1126
  """
@@ -1094,7 +1128,7 @@ class KubernetesCluster(pulumi.CustomResource):
1094
1128
 
1095
1129
  @property
1096
1130
  @pulumi.getter
1097
- def status(self) -> pulumi.Output[str]:
1131
+ def status(self) -> pulumi.Output[builtins.str]:
1098
1132
  """
1099
1133
  A string indicating the current status of the individual node.
1100
1134
  """
@@ -1102,7 +1136,7 @@ class KubernetesCluster(pulumi.CustomResource):
1102
1136
 
1103
1137
  @property
1104
1138
  @pulumi.getter(name="surgeUpgrade")
1105
- def surge_upgrade(self) -> pulumi.Output[Optional[bool]]:
1139
+ def surge_upgrade(self) -> pulumi.Output[Optional[builtins.bool]]:
1106
1140
  """
1107
1141
  Enable/disable surge upgrades for a cluster. Default: true
1108
1142
  """
@@ -1110,7 +1144,7 @@ class KubernetesCluster(pulumi.CustomResource):
1110
1144
 
1111
1145
  @property
1112
1146
  @pulumi.getter
1113
- def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
1147
+ def tags(self) -> pulumi.Output[Optional[Sequence[builtins.str]]]:
1114
1148
  """
1115
1149
  A list of tag names to be applied to the Kubernetes cluster.
1116
1150
  """
@@ -1118,7 +1152,7 @@ class KubernetesCluster(pulumi.CustomResource):
1118
1152
 
1119
1153
  @property
1120
1154
  @pulumi.getter(name="updatedAt")
1121
- def updated_at(self) -> pulumi.Output[str]:
1155
+ def updated_at(self) -> pulumi.Output[builtins.str]:
1122
1156
  """
1123
1157
  The date and time when the node was last updated.
1124
1158
  """
@@ -1126,7 +1160,7 @@ class KubernetesCluster(pulumi.CustomResource):
1126
1160
 
1127
1161
  @property
1128
1162
  @pulumi.getter
1129
- def version(self) -> pulumi.Output[str]:
1163
+ def version(self) -> pulumi.Output[builtins.str]:
1130
1164
  """
1131
1165
  The slug identifier for the version of Kubernetes used for the cluster. Use [doctl](https://github.com/digitalocean/doctl) to find the available versions `doctl kubernetes options versions`. (**Note:** A cluster may only be upgraded to newer versions in-place. If the version is decreased, a new resource will be created.)
1132
1166
  """
@@ -1134,7 +1168,7 @@ class KubernetesCluster(pulumi.CustomResource):
1134
1168
 
1135
1169
  @property
1136
1170
  @pulumi.getter(name="vpcUuid")
1137
- def vpc_uuid(self) -> pulumi.Output[str]:
1171
+ def vpc_uuid(self) -> pulumi.Output[builtins.str]:
1138
1172
  """
1139
1173
  The ID of the VPC where the Kubernetes cluster will be located.
1140
1174
  """