// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
#[allow(missing_docs)] // documentation missing in model
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct UpdateClusterConfigInput {
/// <p>The name of the Amazon EKS cluster to update.</p>
pub name: ::std::option::Option<::std::string::String>,
/// <p>An object representing the VPC configuration to use for an Amazon EKS cluster.</p>
pub resources_vpc_config: ::std::option::Option<crate::types::VpcConfigRequest>,
/// <p>Enable or disable exporting the Kubernetes control plane logs for your cluster to CloudWatch Logs . By default, cluster control plane logs aren't exported to CloudWatch Logs . For more information, see <a href="https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html">Amazon EKS cluster control plane logs</a> in the <i> <i>Amazon EKS User Guide</i> </i>.</p><note>
/// <p>CloudWatch Logs ingestion, archive storage, and data scanning rates apply to exported control plane logs. For more information, see <a href="http://aws.amazon.com/cloudwatch/pricing/">CloudWatch Pricing</a>.</p>
/// </note>
pub logging: ::std::option::Option<crate::types::Logging>,
/// <p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.</p>
pub client_request_token: ::std::option::Option<::std::string::String>,
/// <p>The access configuration for the cluster.</p>
pub access_config: ::std::option::Option<crate::types::UpdateAccessConfigRequest>,
/// <p>You can enable or disable extended support for clusters currently on standard support. You cannot disable extended support once it starts. You must enable extended support before your cluster exits standard support.</p>
pub upgrade_policy: ::std::option::Option<crate::types::UpgradePolicyRequest>,
/// <p>Enable or disable ARC zonal shift for the cluster. If zonal shift is enabled, Amazon Web Services configures zonal autoshift for the cluster.</p>
/// <p>Zonal shift is a feature of Amazon Application Recovery Controller (ARC). ARC zonal shift is designed to be a temporary measure that allows you to move traffic for a resource away from an impaired AZ until the zonal shift expires or you cancel it. You can extend the zonal shift if necessary.</p>
/// <p>You can start a zonal shift for an EKS cluster, or you can allow Amazon Web Services to do it for you by enabling <i>zonal autoshift</i>. This shift updates the flow of east-to-west network traffic in your cluster to only consider network endpoints for Pods running on worker nodes in healthy AZs. Additionally, any ALB or NLB handling ingress traffic for applications in your EKS cluster will automatically route traffic to targets in the healthy AZs. For more information about zonal shift in EKS, see <a href="https://docs.aws.amazon.com/eks/latest/userguide/zone-shift.html">Learn about Amazon Application Recovery Controller (ARC) Zonal Shift in Amazon EKS</a> in the <i> <i>Amazon EKS User Guide</i> </i>.</p>
pub zonal_shift_config: ::std::option::Option<crate::types::ZonalShiftConfigRequest>,
/// <p>Update the configuration of the compute capability of your EKS Auto Mode cluster. For example, enable the capability.</p>
pub compute_config: ::std::option::Option<crate::types::ComputeConfigRequest>,
/// <p>The Kubernetes network configuration for the cluster.</p>
pub kubernetes_network_config: ::std::option::Option<crate::types::KubernetesNetworkConfigRequest>,
/// <p>Update the configuration of the block storage capability of your EKS Auto Mode cluster. For example, enable the capability.</p>
pub storage_config: ::std::option::Option<crate::types::StorageConfigRequest>,
/// <p>The configuration in the cluster for EKS Hybrid Nodes. You can add, change, or remove this configuration after the cluster is created.</p>
pub remote_network_config: ::std::option::Option<crate::types::RemoteNetworkConfigRequest>,
/// <p>Specifies whether to enable or disable deletion protection for the cluster. When enabled (<code>true</code>), the cluster cannot be deleted until deletion protection is explicitly disabled. When disabled (<code>false</code>), the cluster can be deleted normally.</p>
pub deletion_protection: ::std::option::Option<bool>,
/// <p>The control plane scaling tier configuration. For more information, see EKS Provisioned Control Plane in the Amazon EKS User Guide.</p>
pub control_plane_scaling_config: ::std::option::Option<crate::types::ControlPlaneScalingConfig>,
}
impl UpdateClusterConfigInput {
/// <p>The name of the Amazon EKS cluster to update.</p>
pub fn name(&self) -> ::std::option::Option<&str> {
self.name.as_deref()
}
/// <p>An object representing the VPC configuration to use for an Amazon EKS cluster.</p>
pub fn resources_vpc_config(&self) -> ::std::option::Option<&crate::types::VpcConfigRequest> {
self.resources_vpc_config.as_ref()
}
/// <p>Enable or disable exporting the Kubernetes control plane logs for your cluster to CloudWatch Logs . By default, cluster control plane logs aren't exported to CloudWatch Logs . For more information, see <a href="https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html">Amazon EKS cluster control plane logs</a> in the <i> <i>Amazon EKS User Guide</i> </i>.</p><note>
/// <p>CloudWatch Logs ingestion, archive storage, and data scanning rates apply to exported control plane logs. For more information, see <a href="http://aws.amazon.com/cloudwatch/pricing/">CloudWatch Pricing</a>.</p>
/// </note>
pub fn logging(&self) -> ::std::option::Option<&crate::types::Logging> {
self.logging.as_ref()
}
/// <p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.</p>
pub fn client_request_token(&self) -> ::std::option::Option<&str> {
self.client_request_token.as_deref()
}
/// <p>The access configuration for the cluster.</p>
pub fn access_config(&self) -> ::std::option::Option<&crate::types::UpdateAccessConfigRequest> {
self.access_config.as_ref()
}
/// <p>You can enable or disable extended support for clusters currently on standard support. You cannot disable extended support once it starts. You must enable extended support before your cluster exits standard support.</p>
pub fn upgrade_policy(&self) -> ::std::option::Option<&crate::types::UpgradePolicyRequest> {
self.upgrade_policy.as_ref()
}
/// <p>Enable or disable ARC zonal shift for the cluster. If zonal shift is enabled, Amazon Web Services configures zonal autoshift for the cluster.</p>
/// <p>Zonal shift is a feature of Amazon Application Recovery Controller (ARC). ARC zonal shift is designed to be a temporary measure that allows you to move traffic for a resource away from an impaired AZ until the zonal shift expires or you cancel it. You can extend the zonal shift if necessary.</p>
/// <p>You can start a zonal shift for an EKS cluster, or you can allow Amazon Web Services to do it for you by enabling <i>zonal autoshift</i>. This shift updates the flow of east-to-west network traffic in your cluster to only consider network endpoints for Pods running on worker nodes in healthy AZs. Additionally, any ALB or NLB handling ingress traffic for applications in your EKS cluster will automatically route traffic to targets in the healthy AZs. For more information about zonal shift in EKS, see <a href="https://docs.aws.amazon.com/eks/latest/userguide/zone-shift.html">Learn about Amazon Application Recovery Controller (ARC) Zonal Shift in Amazon EKS</a> in the <i> <i>Amazon EKS User Guide</i> </i>.</p>
pub fn zonal_shift_config(&self) -> ::std::option::Option<&crate::types::ZonalShiftConfigRequest> {
self.zonal_shift_config.as_ref()
}
/// <p>Update the configuration of the compute capability of your EKS Auto Mode cluster. For example, enable the capability.</p>
pub fn compute_config(&self) -> ::std::option::Option<&crate::types::ComputeConfigRequest> {
self.compute_config.as_ref()
}
/// <p>The Kubernetes network configuration for the cluster.</p>
pub fn kubernetes_network_config(&self) -> ::std::option::Option<&crate::types::KubernetesNetworkConfigRequest> {
self.kubernetes_network_config.as_ref()
}
/// <p>Update the configuration of the block storage capability of your EKS Auto Mode cluster. For example, enable the capability.</p>
pub fn storage_config(&self) -> ::std::option::Option<&crate::types::StorageConfigRequest> {
self.storage_config.as_ref()
}
/// <p>The configuration in the cluster for EKS Hybrid Nodes. You can add, change, or remove this configuration after the cluster is created.</p>
pub fn remote_network_config(&self) -> ::std::option::Option<&crate::types::RemoteNetworkConfigRequest> {
self.remote_network_config.as_ref()
}
/// <p>Specifies whether to enable or disable deletion protection for the cluster. When enabled (<code>true</code>), the cluster cannot be deleted until deletion protection is explicitly disabled. When disabled (<code>false</code>), the cluster can be deleted normally.</p>
pub fn deletion_protection(&self) -> ::std::option::Option<bool> {
self.deletion_protection
}
/// <p>The control plane scaling tier configuration. For more information, see EKS Provisioned Control Plane in the Amazon EKS User Guide.</p>
pub fn control_plane_scaling_config(&self) -> ::std::option::Option<&crate::types::ControlPlaneScalingConfig> {
self.control_plane_scaling_config.as_ref()
}
}
impl UpdateClusterConfigInput {
/// Creates a new builder-style object to manufacture [`UpdateClusterConfigInput`](crate::operation::update_cluster_config::UpdateClusterConfigInput).
pub fn builder() -> crate::operation::update_cluster_config::builders::UpdateClusterConfigInputBuilder {
crate::operation::update_cluster_config::builders::UpdateClusterConfigInputBuilder::default()
}
}
/// A builder for [`UpdateClusterConfigInput`](crate::operation::update_cluster_config::UpdateClusterConfigInput).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct UpdateClusterConfigInputBuilder {
pub(crate) name: ::std::option::Option<::std::string::String>,
pub(crate) resources_vpc_config: ::std::option::Option<crate::types::VpcConfigRequest>,
pub(crate) logging: ::std::option::Option<crate::types::Logging>,
pub(crate) client_request_token: ::std::option::Option<::std::string::String>,
pub(crate) access_config: ::std::option::Option<crate::types::UpdateAccessConfigRequest>,
pub(crate) upgrade_policy: ::std::option::Option<crate::types::UpgradePolicyRequest>,
pub(crate) zonal_shift_config: ::std::option::Option<crate::types::ZonalShiftConfigRequest>,
pub(crate) compute_config: ::std::option::Option<crate::types::ComputeConfigRequest>,
pub(crate) kubernetes_network_config: ::std::option::Option<crate::types::KubernetesNetworkConfigRequest>,
pub(crate) storage_config: ::std::option::Option<crate::types::StorageConfigRequest>,
pub(crate) remote_network_config: ::std::option::Option<crate::types::RemoteNetworkConfigRequest>,
pub(crate) deletion_protection: ::std::option::Option<bool>,
pub(crate) control_plane_scaling_config: ::std::option::Option<crate::types::ControlPlaneScalingConfig>,
}
impl UpdateClusterConfigInputBuilder {
/// <p>The name of the Amazon EKS cluster to update.</p>
/// This field is required.
pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.name = ::std::option::Option::Some(input.into());
self
}
/// <p>The name of the Amazon EKS cluster to update.</p>
pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.name = input;
self
}
/// <p>The name of the Amazon EKS cluster to update.</p>
pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
&self.name
}
/// <p>An object representing the VPC configuration to use for an Amazon EKS cluster.</p>
pub fn resources_vpc_config(mut self, input: crate::types::VpcConfigRequest) -> Self {
self.resources_vpc_config = ::std::option::Option::Some(input);
self
}
/// <p>An object representing the VPC configuration to use for an Amazon EKS cluster.</p>
pub fn set_resources_vpc_config(mut self, input: ::std::option::Option<crate::types::VpcConfigRequest>) -> Self {
self.resources_vpc_config = input;
self
}
/// <p>An object representing the VPC configuration to use for an Amazon EKS cluster.</p>
pub fn get_resources_vpc_config(&self) -> &::std::option::Option<crate::types::VpcConfigRequest> {
&self.resources_vpc_config
}
/// <p>Enable or disable exporting the Kubernetes control plane logs for your cluster to CloudWatch Logs . By default, cluster control plane logs aren't exported to CloudWatch Logs . For more information, see <a href="https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html">Amazon EKS cluster control plane logs</a> in the <i> <i>Amazon EKS User Guide</i> </i>.</p><note>
/// <p>CloudWatch Logs ingestion, archive storage, and data scanning rates apply to exported control plane logs. For more information, see <a href="http://aws.amazon.com/cloudwatch/pricing/">CloudWatch Pricing</a>.</p>
/// </note>
pub fn logging(mut self, input: crate::types::Logging) -> Self {
self.logging = ::std::option::Option::Some(input);
self
}
/// <p>Enable or disable exporting the Kubernetes control plane logs for your cluster to CloudWatch Logs . By default, cluster control plane logs aren't exported to CloudWatch Logs . For more information, see <a href="https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html">Amazon EKS cluster control plane logs</a> in the <i> <i>Amazon EKS User Guide</i> </i>.</p><note>
/// <p>CloudWatch Logs ingestion, archive storage, and data scanning rates apply to exported control plane logs. For more information, see <a href="http://aws.amazon.com/cloudwatch/pricing/">CloudWatch Pricing</a>.</p>
/// </note>
pub fn set_logging(mut self, input: ::std::option::Option<crate::types::Logging>) -> Self {
self.logging = input;
self
}
/// <p>Enable or disable exporting the Kubernetes control plane logs for your cluster to CloudWatch Logs . By default, cluster control plane logs aren't exported to CloudWatch Logs . For more information, see <a href="https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html">Amazon EKS cluster control plane logs</a> in the <i> <i>Amazon EKS User Guide</i> </i>.</p><note>
/// <p>CloudWatch Logs ingestion, archive storage, and data scanning rates apply to exported control plane logs. For more information, see <a href="http://aws.amazon.com/cloudwatch/pricing/">CloudWatch Pricing</a>.</p>
/// </note>
pub fn get_logging(&self) -> &::std::option::Option<crate::types::Logging> {
&self.logging
}
/// <p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.</p>
pub fn client_request_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.client_request_token = ::std::option::Option::Some(input.into());
self
}
/// <p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.</p>
pub fn set_client_request_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.client_request_token = input;
self
}
/// <p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.</p>
pub fn get_client_request_token(&self) -> &::std::option::Option<::std::string::String> {
&self.client_request_token
}
/// <p>The access configuration for the cluster.</p>
pub fn access_config(mut self, input: crate::types::UpdateAccessConfigRequest) -> Self {
self.access_config = ::std::option::Option::Some(input);
self
}
/// <p>The access configuration for the cluster.</p>
pub fn set_access_config(mut self, input: ::std::option::Option<crate::types::UpdateAccessConfigRequest>) -> Self {
self.access_config = input;
self
}
/// <p>The access configuration for the cluster.</p>
pub fn get_access_config(&self) -> &::std::option::Option<crate::types::UpdateAccessConfigRequest> {
&self.access_config
}
/// <p>You can enable or disable extended support for clusters currently on standard support. You cannot disable extended support once it starts. You must enable extended support before your cluster exits standard support.</p>
pub fn upgrade_policy(mut self, input: crate::types::UpgradePolicyRequest) -> Self {
self.upgrade_policy = ::std::option::Option::Some(input);
self
}
/// <p>You can enable or disable extended support for clusters currently on standard support. You cannot disable extended support once it starts. You must enable extended support before your cluster exits standard support.</p>
pub fn set_upgrade_policy(mut self, input: ::std::option::Option<crate::types::UpgradePolicyRequest>) -> Self {
self.upgrade_policy = input;
self
}
/// <p>You can enable or disable extended support for clusters currently on standard support. You cannot disable extended support once it starts. You must enable extended support before your cluster exits standard support.</p>
pub fn get_upgrade_policy(&self) -> &::std::option::Option<crate::types::UpgradePolicyRequest> {
&self.upgrade_policy
}
/// <p>Enable or disable ARC zonal shift for the cluster. If zonal shift is enabled, Amazon Web Services configures zonal autoshift for the cluster.</p>
/// <p>Zonal shift is a feature of Amazon Application Recovery Controller (ARC). ARC zonal shift is designed to be a temporary measure that allows you to move traffic for a resource away from an impaired AZ until the zonal shift expires or you cancel it. You can extend the zonal shift if necessary.</p>
/// <p>You can start a zonal shift for an EKS cluster, or you can allow Amazon Web Services to do it for you by enabling <i>zonal autoshift</i>. This shift updates the flow of east-to-west network traffic in your cluster to only consider network endpoints for Pods running on worker nodes in healthy AZs. Additionally, any ALB or NLB handling ingress traffic for applications in your EKS cluster will automatically route traffic to targets in the healthy AZs. For more information about zonal shift in EKS, see <a href="https://docs.aws.amazon.com/eks/latest/userguide/zone-shift.html">Learn about Amazon Application Recovery Controller (ARC) Zonal Shift in Amazon EKS</a> in the <i> <i>Amazon EKS User Guide</i> </i>.</p>
pub fn zonal_shift_config(mut self, input: crate::types::ZonalShiftConfigRequest) -> Self {
self.zonal_shift_config = ::std::option::Option::Some(input);
self
}
/// <p>Enable or disable ARC zonal shift for the cluster. If zonal shift is enabled, Amazon Web Services configures zonal autoshift for the cluster.</p>
/// <p>Zonal shift is a feature of Amazon Application Recovery Controller (ARC). ARC zonal shift is designed to be a temporary measure that allows you to move traffic for a resource away from an impaired AZ until the zonal shift expires or you cancel it. You can extend the zonal shift if necessary.</p>
/// <p>You can start a zonal shift for an EKS cluster, or you can allow Amazon Web Services to do it for you by enabling <i>zonal autoshift</i>. This shift updates the flow of east-to-west network traffic in your cluster to only consider network endpoints for Pods running on worker nodes in healthy AZs. Additionally, any ALB or NLB handling ingress traffic for applications in your EKS cluster will automatically route traffic to targets in the healthy AZs. For more information about zonal shift in EKS, see <a href="https://docs.aws.amazon.com/eks/latest/userguide/zone-shift.html">Learn about Amazon Application Recovery Controller (ARC) Zonal Shift in Amazon EKS</a> in the <i> <i>Amazon EKS User Guide</i> </i>.</p>
pub fn set_zonal_shift_config(mut self, input: ::std::option::Option<crate::types::ZonalShiftConfigRequest>) -> Self {
self.zonal_shift_config = input;
self
}
/// <p>Enable or disable ARC zonal shift for the cluster. If zonal shift is enabled, Amazon Web Services configures zonal autoshift for the cluster.</p>
/// <p>Zonal shift is a feature of Amazon Application Recovery Controller (ARC). ARC zonal shift is designed to be a temporary measure that allows you to move traffic for a resource away from an impaired AZ until the zonal shift expires or you cancel it. You can extend the zonal shift if necessary.</p>
/// <p>You can start a zonal shift for an EKS cluster, or you can allow Amazon Web Services to do it for you by enabling <i>zonal autoshift</i>. This shift updates the flow of east-to-west network traffic in your cluster to only consider network endpoints for Pods running on worker nodes in healthy AZs. Additionally, any ALB or NLB handling ingress traffic for applications in your EKS cluster will automatically route traffic to targets in the healthy AZs. For more information about zonal shift in EKS, see <a href="https://docs.aws.amazon.com/eks/latest/userguide/zone-shift.html">Learn about Amazon Application Recovery Controller (ARC) Zonal Shift in Amazon EKS</a> in the <i> <i>Amazon EKS User Guide</i> </i>.</p>
pub fn get_zonal_shift_config(&self) -> &::std::option::Option<crate::types::ZonalShiftConfigRequest> {
&self.zonal_shift_config
}
/// <p>Update the configuration of the compute capability of your EKS Auto Mode cluster. For example, enable the capability.</p>
pub fn compute_config(mut self, input: crate::types::ComputeConfigRequest) -> Self {
self.compute_config = ::std::option::Option::Some(input);
self
}
/// <p>Update the configuration of the compute capability of your EKS Auto Mode cluster. For example, enable the capability.</p>
pub fn set_compute_config(mut self, input: ::std::option::Option<crate::types::ComputeConfigRequest>) -> Self {
self.compute_config = input;
self
}
/// <p>Update the configuration of the compute capability of your EKS Auto Mode cluster. For example, enable the capability.</p>
pub fn get_compute_config(&self) -> &::std::option::Option<crate::types::ComputeConfigRequest> {
&self.compute_config
}
/// <p>The Kubernetes network configuration for the cluster.</p>
pub fn kubernetes_network_config(mut self, input: crate::types::KubernetesNetworkConfigRequest) -> Self {
self.kubernetes_network_config = ::std::option::Option::Some(input);
self
}
/// <p>The Kubernetes network configuration for the cluster.</p>
pub fn set_kubernetes_network_config(mut self, input: ::std::option::Option<crate::types::KubernetesNetworkConfigRequest>) -> Self {
self.kubernetes_network_config = input;
self
}
/// <p>The Kubernetes network configuration for the cluster.</p>
pub fn get_kubernetes_network_config(&self) -> &::std::option::Option<crate::types::KubernetesNetworkConfigRequest> {
&self.kubernetes_network_config
}
/// <p>Update the configuration of the block storage capability of your EKS Auto Mode cluster. For example, enable the capability.</p>
pub fn storage_config(mut self, input: crate::types::StorageConfigRequest) -> Self {
self.storage_config = ::std::option::Option::Some(input);
self
}
/// <p>Update the configuration of the block storage capability of your EKS Auto Mode cluster. For example, enable the capability.</p>
pub fn set_storage_config(mut self, input: ::std::option::Option<crate::types::StorageConfigRequest>) -> Self {
self.storage_config = input;
self
}
/// <p>Update the configuration of the block storage capability of your EKS Auto Mode cluster. For example, enable the capability.</p>
pub fn get_storage_config(&self) -> &::std::option::Option<crate::types::StorageConfigRequest> {
&self.storage_config
}
/// <p>The configuration in the cluster for EKS Hybrid Nodes. You can add, change, or remove this configuration after the cluster is created.</p>
pub fn remote_network_config(mut self, input: crate::types::RemoteNetworkConfigRequest) -> Self {
self.remote_network_config = ::std::option::Option::Some(input);
self
}
/// <p>The configuration in the cluster for EKS Hybrid Nodes. You can add, change, or remove this configuration after the cluster is created.</p>
pub fn set_remote_network_config(mut self, input: ::std::option::Option<crate::types::RemoteNetworkConfigRequest>) -> Self {
self.remote_network_config = input;
self
}
/// <p>The configuration in the cluster for EKS Hybrid Nodes. You can add, change, or remove this configuration after the cluster is created.</p>
pub fn get_remote_network_config(&self) -> &::std::option::Option<crate::types::RemoteNetworkConfigRequest> {
&self.remote_network_config
}
/// <p>Specifies whether to enable or disable deletion protection for the cluster. When enabled (<code>true</code>), the cluster cannot be deleted until deletion protection is explicitly disabled. When disabled (<code>false</code>), the cluster can be deleted normally.</p>
pub fn deletion_protection(mut self, input: bool) -> Self {
self.deletion_protection = ::std::option::Option::Some(input);
self
}
/// <p>Specifies whether to enable or disable deletion protection for the cluster. When enabled (<code>true</code>), the cluster cannot be deleted until deletion protection is explicitly disabled. When disabled (<code>false</code>), the cluster can be deleted normally.</p>
pub fn set_deletion_protection(mut self, input: ::std::option::Option<bool>) -> Self {
self.deletion_protection = input;
self
}
/// <p>Specifies whether to enable or disable deletion protection for the cluster. When enabled (<code>true</code>), the cluster cannot be deleted until deletion protection is explicitly disabled. When disabled (<code>false</code>), the cluster can be deleted normally.</p>
pub fn get_deletion_protection(&self) -> &::std::option::Option<bool> {
&self.deletion_protection
}
/// <p>The control plane scaling tier configuration. For more information, see EKS Provisioned Control Plane in the Amazon EKS User Guide.</p>
pub fn control_plane_scaling_config(mut self, input: crate::types::ControlPlaneScalingConfig) -> Self {
self.control_plane_scaling_config = ::std::option::Option::Some(input);
self
}
/// <p>The control plane scaling tier configuration. For more information, see EKS Provisioned Control Plane in the Amazon EKS User Guide.</p>
pub fn set_control_plane_scaling_config(mut self, input: ::std::option::Option<crate::types::ControlPlaneScalingConfig>) -> Self {
self.control_plane_scaling_config = input;
self
}
/// <p>The control plane scaling tier configuration. For more information, see EKS Provisioned Control Plane in the Amazon EKS User Guide.</p>
pub fn get_control_plane_scaling_config(&self) -> &::std::option::Option<crate::types::ControlPlaneScalingConfig> {
&self.control_plane_scaling_config
}
/// Consumes the builder and constructs a [`UpdateClusterConfigInput`](crate::operation::update_cluster_config::UpdateClusterConfigInput).
pub fn build(
self,
) -> ::std::result::Result<crate::operation::update_cluster_config::UpdateClusterConfigInput, ::aws_smithy_types::error::operation::BuildError>
{
::std::result::Result::Ok(crate::operation::update_cluster_config::UpdateClusterConfigInput {
name: self.name,
resources_vpc_config: self.resources_vpc_config,
logging: self.logging,
client_request_token: self.client_request_token,
access_config: self.access_config,
upgrade_policy: self.upgrade_policy,
zonal_shift_config: self.zonal_shift_config,
compute_config: self.compute_config,
kubernetes_network_config: self.kubernetes_network_config,
storage_config: self.storage_config,
remote_network_config: self.remote_network_config,
deletion_protection: self.deletion_protection,
control_plane_scaling_config: self.control_plane_scaling_config,
})
}
}