/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The configuration of your local Amazon EKS cluster on an Amazon Web Services
* Outpost. Before creating a cluster on an Outpost, review Creating
* a local cluster on an Outpost in the Amazon EKS User Guide. This API
* isn't available for Amazon EKS clusters on the Amazon Web Services
* cloud.See Also:
AWS
* API Reference
The ARN of the Outpost that you want to use for your local Amazon EKS cluster * on Outposts. Only a single Outpost ARN is supported.
*/ inline const Aws::VectorThe ARN of the Outpost that you want to use for your local Amazon EKS cluster * on Outposts. Only a single Outpost ARN is supported.
*/ inline bool OutpostArnsHasBeenSet() const { return m_outpostArnsHasBeenSet; } /** *The ARN of the Outpost that you want to use for your local Amazon EKS cluster * on Outposts. Only a single Outpost ARN is supported.
*/ inline void SetOutpostArns(const Aws::VectorThe ARN of the Outpost that you want to use for your local Amazon EKS cluster * on Outposts. Only a single Outpost ARN is supported.
*/ inline void SetOutpostArns(Aws::VectorThe ARN of the Outpost that you want to use for your local Amazon EKS cluster * on Outposts. Only a single Outpost ARN is supported.
*/ inline OutpostConfigRequest& WithOutpostArns(const Aws::VectorThe ARN of the Outpost that you want to use for your local Amazon EKS cluster * on Outposts. Only a single Outpost ARN is supported.
*/ inline OutpostConfigRequest& WithOutpostArns(Aws::VectorThe ARN of the Outpost that you want to use for your local Amazon EKS cluster * on Outposts. Only a single Outpost ARN is supported.
*/ inline OutpostConfigRequest& AddOutpostArns(const Aws::String& value) { m_outpostArnsHasBeenSet = true; m_outpostArns.push_back(value); return *this; } /** *The ARN of the Outpost that you want to use for your local Amazon EKS cluster * on Outposts. Only a single Outpost ARN is supported.
*/ inline OutpostConfigRequest& AddOutpostArns(Aws::String&& value) { m_outpostArnsHasBeenSet = true; m_outpostArns.push_back(std::move(value)); return *this; } /** *The ARN of the Outpost that you want to use for your local Amazon EKS cluster * on Outposts. Only a single Outpost ARN is supported.
*/ inline OutpostConfigRequest& AddOutpostArns(const char* value) { m_outpostArnsHasBeenSet = true; m_outpostArns.push_back(value); return *this; } /** *The Amazon EC2 instance type that you want to use for your local Amazon EKS * cluster on Outposts. Choose an instance type based on the number of nodes that * your cluster will have. For more information, see Capacity * considerations in the Amazon EKS User Guide.
The instance type * that you specify is used for all Kubernetes control plane instances. The * instance type can't be changed after cluster creation. The control plane is not * automatically scaled by Amazon EKS.
*/ inline const Aws::String& GetControlPlaneInstanceType() const{ return m_controlPlaneInstanceType; } /** *
The Amazon EC2 instance type that you want to use for your local Amazon EKS * cluster on Outposts. Choose an instance type based on the number of nodes that * your cluster will have. For more information, see Capacity * considerations in the Amazon EKS User Guide.
The instance type * that you specify is used for all Kubernetes control plane instances. The * instance type can't be changed after cluster creation. The control plane is not * automatically scaled by Amazon EKS.
*/ inline bool ControlPlaneInstanceTypeHasBeenSet() const { return m_controlPlaneInstanceTypeHasBeenSet; } /** *
The Amazon EC2 instance type that you want to use for your local Amazon EKS * cluster on Outposts. Choose an instance type based on the number of nodes that * your cluster will have. For more information, see Capacity * considerations in the Amazon EKS User Guide.
The instance type * that you specify is used for all Kubernetes control plane instances. The * instance type can't be changed after cluster creation. The control plane is not * automatically scaled by Amazon EKS.
*/ inline void SetControlPlaneInstanceType(const Aws::String& value) { m_controlPlaneInstanceTypeHasBeenSet = true; m_controlPlaneInstanceType = value; } /** *
The Amazon EC2 instance type that you want to use for your local Amazon EKS * cluster on Outposts. Choose an instance type based on the number of nodes that * your cluster will have. For more information, see Capacity * considerations in the Amazon EKS User Guide.
The instance type * that you specify is used for all Kubernetes control plane instances. The * instance type can't be changed after cluster creation. The control plane is not * automatically scaled by Amazon EKS.
*/ inline void SetControlPlaneInstanceType(Aws::String&& value) { m_controlPlaneInstanceTypeHasBeenSet = true; m_controlPlaneInstanceType = std::move(value); } /** *
The Amazon EC2 instance type that you want to use for your local Amazon EKS * cluster on Outposts. Choose an instance type based on the number of nodes that * your cluster will have. For more information, see Capacity * considerations in the Amazon EKS User Guide.
The instance type * that you specify is used for all Kubernetes control plane instances. The * instance type can't be changed after cluster creation. The control plane is not * automatically scaled by Amazon EKS.
*/ inline void SetControlPlaneInstanceType(const char* value) { m_controlPlaneInstanceTypeHasBeenSet = true; m_controlPlaneInstanceType.assign(value); } /** *
The Amazon EC2 instance type that you want to use for your local Amazon EKS * cluster on Outposts. Choose an instance type based on the number of nodes that * your cluster will have. For more information, see Capacity * considerations in the Amazon EKS User Guide.
The instance type * that you specify is used for all Kubernetes control plane instances. The * instance type can't be changed after cluster creation. The control plane is not * automatically scaled by Amazon EKS.
*/ inline OutpostConfigRequest& WithControlPlaneInstanceType(const Aws::String& value) { SetControlPlaneInstanceType(value); return *this;} /** *
The Amazon EC2 instance type that you want to use for your local Amazon EKS * cluster on Outposts. Choose an instance type based on the number of nodes that * your cluster will have. For more information, see Capacity * considerations in the Amazon EKS User Guide.
The instance type * that you specify is used for all Kubernetes control plane instances. The * instance type can't be changed after cluster creation. The control plane is not * automatically scaled by Amazon EKS.
*/ inline OutpostConfigRequest& WithControlPlaneInstanceType(Aws::String&& value) { SetControlPlaneInstanceType(std::move(value)); return *this;} /** *
The Amazon EC2 instance type that you want to use for your local Amazon EKS * cluster on Outposts. Choose an instance type based on the number of nodes that * your cluster will have. For more information, see Capacity * considerations in the Amazon EKS User Guide.
The instance type * that you specify is used for all Kubernetes control plane instances. The * instance type can't be changed after cluster creation. The control plane is not * automatically scaled by Amazon EKS.
*/ inline OutpostConfigRequest& WithControlPlaneInstanceType(const char* value) { SetControlPlaneInstanceType(value); return *this;} /** *
An object representing the placement configuration for all the control plane * instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. * For more information, see Capacity * considerations in the Amazon EKS User Guide.
*/ inline const ControlPlanePlacementRequest& GetControlPlanePlacement() const{ return m_controlPlanePlacement; } /** *An object representing the placement configuration for all the control plane * instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. * For more information, see Capacity * considerations in the Amazon EKS User Guide.
*/ inline bool ControlPlanePlacementHasBeenSet() const { return m_controlPlanePlacementHasBeenSet; } /** *An object representing the placement configuration for all the control plane * instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. * For more information, see Capacity * considerations in the Amazon EKS User Guide.
*/ inline void SetControlPlanePlacement(const ControlPlanePlacementRequest& value) { m_controlPlanePlacementHasBeenSet = true; m_controlPlanePlacement = value; } /** *An object representing the placement configuration for all the control plane * instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. * For more information, see Capacity * considerations in the Amazon EKS User Guide.
*/ inline void SetControlPlanePlacement(ControlPlanePlacementRequest&& value) { m_controlPlanePlacementHasBeenSet = true; m_controlPlanePlacement = std::move(value); } /** *An object representing the placement configuration for all the control plane * instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. * For more information, see Capacity * considerations in the Amazon EKS User Guide.
*/ inline OutpostConfigRequest& WithControlPlanePlacement(const ControlPlanePlacementRequest& value) { SetControlPlanePlacement(value); return *this;} /** *An object representing the placement configuration for all the control plane * instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. * For more information, see Capacity * considerations in the Amazon EKS User Guide.
*/ inline OutpostConfigRequest& WithControlPlanePlacement(ControlPlanePlacementRequest&& value) { SetControlPlanePlacement(std::move(value)); return *this;} private: Aws::Vector