7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/eks/EKSRequest.h>
12#include <aws/eks/EKS_EXPORTS.h>
13#include <aws/eks/model/AMITypes.h>
14#include <aws/eks/model/CapacityTypes.h>
15#include <aws/eks/model/LaunchTemplateSpecification.h>
16#include <aws/eks/model/NodeRepairConfig.h>
17#include <aws/eks/model/NodegroupScalingConfig.h>
18#include <aws/eks/model/NodegroupUpdateConfig.h>
19#include <aws/eks/model/RemoteAccessConfig.h>
20#include <aws/eks/model/Taint.h>
48 template <
typename ClusterNameT = Aws::String>
50 m_clusterNameHasBeenSet =
true;
51 m_clusterName = std::forward<ClusterNameT>(value);
53 template <
typename ClusterNameT = Aws::String>
66 template <
typename NodegroupNameT = Aws::String>
68 m_nodegroupNameHasBeenSet =
true;
69 m_nodegroupName = std::forward<NodegroupNameT>(value);
71 template <
typename NodegroupNameT = Aws::String>
85 template <
typename ScalingConfigT = NodegroupScalingConfig>
87 m_scalingConfigHasBeenSet =
true;
88 m_scalingConfig = std::forward<ScalingConfigT>(value);
90 template <
typename ScalingConfigT = NodegroupScalingConfig>
110 m_diskSizeHasBeenSet =
true;
131 template <
typename SubnetsT = Aws::Vector<Aws::String>>
133 m_subnetsHasBeenSet =
true;
134 m_subnets = std::forward<SubnetsT>(value);
136 template <
typename SubnetsT = Aws::Vector<Aws::String>>
141 template <
typename SubnetsT = Aws::String>
143 m_subnetsHasBeenSet =
true;
144 m_subnets.emplace_back(std::forward<SubnetsT>(value));
169 template <
typename InstanceTypesT = Aws::Vector<Aws::String>>
171 m_instanceTypesHasBeenSet =
true;
172 m_instanceTypes = std::forward<InstanceTypesT>(value);
174 template <
typename InstanceTypesT = Aws::Vector<Aws::String>>
179 template <
typename InstanceTypesT = Aws::String>
181 m_instanceTypesHasBeenSet =
true;
182 m_instanceTypes.emplace_back(std::forward<InstanceTypesT>(value));
202 m_amiTypeHasBeenSet =
true;
223 template <
typename RemoteAccessT = RemoteAccessConfig>
225 m_remoteAccessHasBeenSet =
true;
226 m_remoteAccess = std::forward<RemoteAccessT>(value);
228 template <
typename RemoteAccessT = RemoteAccessConfig>
254 template <
typename NodeRoleT = Aws::String>
256 m_nodeRoleHasBeenSet =
true;
257 m_nodeRole = std::forward<NodeRoleT>(value);
259 template <
typename NodeRoleT = Aws::String>
273 template <
typename LabelsT = Aws::Map<Aws::String, Aws::String>>
275 m_labelsHasBeenSet =
true;
276 m_labels = std::forward<LabelsT>(value);
278 template <
typename LabelsT = Aws::Map<Aws::String, Aws::String>>
283 template <
typename LabelsKeyT = Aws::String,
typename LabelsValueT = Aws::String>
285 m_labelsHasBeenSet =
true;
286 m_labels.emplace(std::forward<LabelsKeyT>(key), std::forward<LabelsValueT>(value));
300 template <
typename Ta
intsT = Aws::Vector<Ta
int>>
302 m_taintsHasBeenSet =
true;
303 m_taints = std::forward<TaintsT>(value);
305 template <
typename Ta
intsT = Aws::Vector<Ta
int>>
310 template <
typename Ta
intsT = Ta
int>
312 m_taintsHasBeenSet =
true;
313 m_taints.emplace_back(std::forward<TaintsT>(value));
326 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
328 m_tagsHasBeenSet =
true;
329 m_tags = std::forward<TagsT>(value);
331 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
333 SetTags(std::forward<TagsT>(value));
336 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
338 m_tagsHasBeenSet =
true;
339 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
351 template <
typename ClientRequestTokenT = Aws::String>
353 m_clientRequestTokenHasBeenSet =
true;
354 m_clientRequestToken = std::forward<ClientRequestTokenT>(value);
356 template <
typename ClientRequestTokenT = Aws::String>
376 template <
typename LaunchTemplateT = LaunchTemplateSpecification>
378 m_launchTemplateHasBeenSet =
true;
379 m_launchTemplate = std::forward<LaunchTemplateT>(value);
381 template <
typename LaunchTemplateT = LaunchTemplateSpecification>
394 template <
typename UpdateConfigT = NodegroupUpdateConfig>
396 m_updateConfigHasBeenSet =
true;
397 m_updateConfig = std::forward<UpdateConfigT>(value);
399 template <
typename UpdateConfigT = NodegroupUpdateConfig>
412 template <
typename NodeRepairConfigT = NodeRepairConfig>
414 m_nodeRepairConfigHasBeenSet =
true;
415 m_nodeRepairConfig = std::forward<NodeRepairConfigT>(value);
417 template <
typename NodeRepairConfigT = NodeRepairConfig>
431 m_capacityTypeHasBeenSet =
true;
432 m_capacityType = value;
453 template <
typename VersionT = Aws::String>
455 m_versionHasBeenSet =
true;
456 m_version = std::forward<VersionT>(value);
458 template <
typename VersionT = Aws::String>
485 template <
typename ReleaseVersionT = Aws::String>
487 m_releaseVersionHasBeenSet =
true;
488 m_releaseVersion = std::forward<ReleaseVersionT>(value);
490 template <
typename ReleaseVersionT = Aws::String>
511 RemoteAccessConfig m_remoteAccess;
523 LaunchTemplateSpecification m_launchTemplate;
525 NodegroupUpdateConfig m_updateConfig;
527 NodeRepairConfig m_nodeRepairConfig;
534 bool m_clusterNameHasBeenSet =
false;
535 bool m_nodegroupNameHasBeenSet =
false;
536 bool m_scalingConfigHasBeenSet =
false;
537 bool m_diskSizeHasBeenSet =
false;
538 bool m_subnetsHasBeenSet =
false;
539 bool m_instanceTypesHasBeenSet =
false;
540 bool m_amiTypeHasBeenSet =
false;
541 bool m_remoteAccessHasBeenSet =
false;
542 bool m_nodeRoleHasBeenSet =
false;
543 bool m_labelsHasBeenSet =
false;
544 bool m_taintsHasBeenSet =
false;
545 bool m_tagsHasBeenSet =
false;
546 bool m_clientRequestTokenHasBeenSet =
true;
547 bool m_launchTemplateHasBeenSet =
false;
548 bool m_updateConfigHasBeenSet =
false;
549 bool m_nodeRepairConfigHasBeenSet =
false;
550 bool m_capacityTypeHasBeenSet =
false;
551 bool m_versionHasBeenSet =
false;
552 bool m_releaseVersionHasBeenSet =
false;
const Aws::String & GetNodeRole() const
void SetNodegroupName(NodegroupNameT &&value)
bool UpdateConfigHasBeenSet() const
void SetLabels(LabelsT &&value)
bool SubnetsHasBeenSet() const
AWS_EKS_API CreateNodegroupRequest()=default
CreateNodegroupRequest & WithRemoteAccess(RemoteAccessT &&value)
void SetVersion(VersionT &&value)
bool VersionHasBeenSet() const
CreateNodegroupRequest & WithClusterName(ClusterNameT &&value)
CreateNodegroupRequest & WithReleaseVersion(ReleaseVersionT &&value)
CreateNodegroupRequest & WithAmiType(AMITypes value)
bool LabelsHasBeenSet() const
CreateNodegroupRequest & WithLaunchTemplate(LaunchTemplateT &&value)
CreateNodegroupRequest & AddTaints(TaintsT &&value)
void SetSubnets(SubnetsT &&value)
void SetTags(TagsT &&value)
bool ClientRequestTokenHasBeenSet() const
void SetCapacityType(CapacityTypes value)
const Aws::Vector< Aws::String > & GetSubnets() const
void SetReleaseVersion(ReleaseVersionT &&value)
CreateNodegroupRequest & WithLabels(LabelsT &&value)
bool RemoteAccessHasBeenSet() const
void SetClientRequestToken(ClientRequestTokenT &&value)
const Aws::String & GetReleaseVersion() const
void SetUpdateConfig(UpdateConfigT &&value)
void SetNodeRepairConfig(NodeRepairConfigT &&value)
bool DiskSizeHasBeenSet() const
CreateNodegroupRequest & WithTaints(TaintsT &&value)
bool AmiTypeHasBeenSet() const
bool TagsHasBeenSet() const
const Aws::Map< Aws::String, Aws::String > & GetLabels() const
CreateNodegroupRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
void SetClusterName(ClusterNameT &&value)
const Aws::Vector< Taint > & GetTaints() const
CreateNodegroupRequest & WithNodeRepairConfig(NodeRepairConfigT &&value)
const Aws::Vector< Aws::String > & GetInstanceTypes() const
virtual const char * GetServiceRequestName() const override
CreateNodegroupRequest & WithUpdateConfig(UpdateConfigT &&value)
bool ReleaseVersionHasBeenSet() const
CreateNodegroupRequest & WithCapacityType(CapacityTypes value)
AMITypes GetAmiType() const
void SetScalingConfig(ScalingConfigT &&value)
bool ScalingConfigHasBeenSet() const
const Aws::String & GetClusterName() const
CapacityTypes GetCapacityType() const
void SetDiskSize(int value)
bool LaunchTemplateHasBeenSet() const
const NodegroupUpdateConfig & GetUpdateConfig() const
CreateNodegroupRequest & WithScalingConfig(ScalingConfigT &&value)
void SetRemoteAccess(RemoteAccessT &&value)
const NodeRepairConfig & GetNodeRepairConfig() const
bool TaintsHasBeenSet() const
bool NodeRoleHasBeenSet() const
const LaunchTemplateSpecification & GetLaunchTemplate() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
AWS_EKS_API Aws::String SerializePayload() const override
CreateNodegroupRequest & WithTags(TagsT &&value)
CreateNodegroupRequest & WithNodegroupName(NodegroupNameT &&value)
const Aws::String & GetNodegroupName() const
CreateNodegroupRequest & WithInstanceTypes(InstanceTypesT &&value)
void SetTaints(TaintsT &&value)
void SetLaunchTemplate(LaunchTemplateT &&value)
CreateNodegroupRequest & AddInstanceTypes(InstanceTypesT &&value)
CreateNodegroupRequest & WithSubnets(SubnetsT &&value)
const RemoteAccessConfig & GetRemoteAccess() const
const NodegroupScalingConfig & GetScalingConfig() const
const Aws::String & GetClientRequestToken() const
CreateNodegroupRequest & AddLabels(LabelsKeyT &&key, LabelsValueT &&value)
CreateNodegroupRequest & AddSubnets(SubnetsT &&value)
void SetAmiType(AMITypes value)
CreateNodegroupRequest & WithNodeRole(NodeRoleT &&value)
bool NodegroupNameHasBeenSet() const
bool NodeRepairConfigHasBeenSet() const
bool CapacityTypeHasBeenSet() const
void SetInstanceTypes(InstanceTypesT &&value)
const Aws::String & GetVersion() const
bool InstanceTypesHasBeenSet() const
CreateNodegroupRequest & WithClientRequestToken(ClientRequestTokenT &&value)
void SetNodeRole(NodeRoleT &&value)
CreateNodegroupRequest & WithVersion(VersionT &&value)
CreateNodegroupRequest & WithDiskSize(int value)
bool ClusterNameHasBeenSet() const
static Aws::Utils::UUID PseudoRandomUUID()
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector