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>
21#include <aws/eks/model/WarmPoolConfig.h>
49 template <
typename ClusterNameT = Aws::String>
51 m_clusterNameHasBeenSet =
true;
52 m_clusterName = std::forward<ClusterNameT>(value);
54 template <
typename ClusterNameT = Aws::String>
67 template <
typename NodegroupNameT = Aws::String>
69 m_nodegroupNameHasBeenSet =
true;
70 m_nodegroupName = std::forward<NodegroupNameT>(value);
72 template <
typename NodegroupNameT = Aws::String>
86 template <
typename ScalingConfigT = NodegroupScalingConfig>
88 m_scalingConfigHasBeenSet =
true;
89 m_scalingConfig = std::forward<ScalingConfigT>(value);
91 template <
typename ScalingConfigT = NodegroupScalingConfig>
111 m_diskSizeHasBeenSet =
true;
132 template <
typename SubnetsT = Aws::Vector<Aws::String>>
134 m_subnetsHasBeenSet =
true;
135 m_subnets = std::forward<SubnetsT>(value);
137 template <
typename SubnetsT = Aws::Vector<Aws::String>>
142 template <
typename SubnetsT = Aws::String>
144 m_subnetsHasBeenSet =
true;
145 m_subnets.emplace_back(std::forward<SubnetsT>(value));
170 template <
typename InstanceTypesT = Aws::Vector<Aws::String>>
172 m_instanceTypesHasBeenSet =
true;
173 m_instanceTypes = std::forward<InstanceTypesT>(value);
175 template <
typename InstanceTypesT = Aws::Vector<Aws::String>>
180 template <
typename InstanceTypesT = Aws::String>
182 m_instanceTypesHasBeenSet =
true;
183 m_instanceTypes.emplace_back(std::forward<InstanceTypesT>(value));
203 m_amiTypeHasBeenSet =
true;
224 template <
typename RemoteAccessT = RemoteAccessConfig>
226 m_remoteAccessHasBeenSet =
true;
227 m_remoteAccess = std::forward<RemoteAccessT>(value);
229 template <
typename RemoteAccessT = RemoteAccessConfig>
255 template <
typename NodeRoleT = Aws::String>
257 m_nodeRoleHasBeenSet =
true;
258 m_nodeRole = std::forward<NodeRoleT>(value);
260 template <
typename NodeRoleT = Aws::String>
274 template <
typename LabelsT = Aws::Map<Aws::String, Aws::String>>
276 m_labelsHasBeenSet =
true;
277 m_labels = std::forward<LabelsT>(value);
279 template <
typename LabelsT = Aws::Map<Aws::String, Aws::String>>
284 template <
typename LabelsKeyT = Aws::String,
typename LabelsValueT = Aws::String>
286 m_labelsHasBeenSet =
true;
287 m_labels.emplace(std::forward<LabelsKeyT>(key), std::forward<LabelsValueT>(value));
301 template <
typename Ta
intsT = Aws::Vector<Ta
int>>
303 m_taintsHasBeenSet =
true;
304 m_taints = std::forward<TaintsT>(value);
306 template <
typename Ta
intsT = Aws::Vector<Ta
int>>
311 template <
typename Ta
intsT = Ta
int>
313 m_taintsHasBeenSet =
true;
314 m_taints.emplace_back(std::forward<TaintsT>(value));
327 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
329 m_tagsHasBeenSet =
true;
330 m_tags = std::forward<TagsT>(value);
332 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
334 SetTags(std::forward<TagsT>(value));
337 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
339 m_tagsHasBeenSet =
true;
340 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
352 template <
typename ClientRequestTokenT = Aws::String>
354 m_clientRequestTokenHasBeenSet =
true;
355 m_clientRequestToken = std::forward<ClientRequestTokenT>(value);
357 template <
typename ClientRequestTokenT = Aws::String>
377 template <
typename LaunchTemplateT = LaunchTemplateSpecification>
379 m_launchTemplateHasBeenSet =
true;
380 m_launchTemplate = std::forward<LaunchTemplateT>(value);
382 template <
typename LaunchTemplateT = LaunchTemplateSpecification>
395 template <
typename UpdateConfigT = NodegroupUpdateConfig>
397 m_updateConfigHasBeenSet =
true;
398 m_updateConfig = std::forward<UpdateConfigT>(value);
400 template <
typename UpdateConfigT = NodegroupUpdateConfig>
413 template <
typename NodeRepairConfigT = NodeRepairConfig>
415 m_nodeRepairConfigHasBeenSet =
true;
416 m_nodeRepairConfig = std::forward<NodeRepairConfigT>(value);
418 template <
typename NodeRepairConfigT = NodeRepairConfig>
432 m_capacityTypeHasBeenSet =
true;
433 m_capacityType = value;
454 template <
typename VersionT = Aws::String>
456 m_versionHasBeenSet =
true;
457 m_version = std::forward<VersionT>(value);
459 template <
typename VersionT = Aws::String>
486 template <
typename ReleaseVersionT = Aws::String>
488 m_releaseVersionHasBeenSet =
true;
489 m_releaseVersion = std::forward<ReleaseVersionT>(value);
491 template <
typename ReleaseVersionT = Aws::String>
507 template <
typename WarmPoolConfigT = WarmPoolConfig>
509 m_warmPoolConfigHasBeenSet =
true;
510 m_warmPoolConfig = std::forward<WarmPoolConfigT>(value);
512 template <
typename WarmPoolConfigT = WarmPoolConfig>
533 RemoteAccessConfig m_remoteAccess;
545 LaunchTemplateSpecification m_launchTemplate;
547 NodegroupUpdateConfig m_updateConfig;
549 NodeRepairConfig m_nodeRepairConfig;
557 WarmPoolConfig m_warmPoolConfig;
558 bool m_clusterNameHasBeenSet =
false;
559 bool m_nodegroupNameHasBeenSet =
false;
560 bool m_scalingConfigHasBeenSet =
false;
561 bool m_diskSizeHasBeenSet =
false;
562 bool m_subnetsHasBeenSet =
false;
563 bool m_instanceTypesHasBeenSet =
false;
564 bool m_amiTypeHasBeenSet =
false;
565 bool m_remoteAccessHasBeenSet =
false;
566 bool m_nodeRoleHasBeenSet =
false;
567 bool m_labelsHasBeenSet =
false;
568 bool m_taintsHasBeenSet =
false;
569 bool m_tagsHasBeenSet =
false;
570 bool m_clientRequestTokenHasBeenSet =
true;
571 bool m_launchTemplateHasBeenSet =
false;
572 bool m_updateConfigHasBeenSet =
false;
573 bool m_nodeRepairConfigHasBeenSet =
false;
574 bool m_capacityTypeHasBeenSet =
false;
575 bool m_versionHasBeenSet =
false;
576 bool m_releaseVersionHasBeenSet =
false;
577 bool m_warmPoolConfigHasBeenSet =
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 WarmPoolConfig & GetWarmPoolConfig() 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 & WithWarmPoolConfig(WarmPoolConfigT &&value)
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
void SetWarmPoolConfig(WarmPoolConfigT &&value)
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)
bool WarmPoolConfigHasBeenSet() const
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