7#include <aws/core/utils/DateTime.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/EKS_EXPORTS.h>
12#include <aws/eks/model/AMITypes.h>
13#include <aws/eks/model/CapacityTypes.h>
14#include <aws/eks/model/LaunchTemplateSpecification.h>
15#include <aws/eks/model/NodeRepairConfig.h>
16#include <aws/eks/model/NodegroupHealth.h>
17#include <aws/eks/model/NodegroupResources.h>
18#include <aws/eks/model/NodegroupScalingConfig.h>
19#include <aws/eks/model/NodegroupStatus.h>
20#include <aws/eks/model/NodegroupUpdateConfig.h>
21#include <aws/eks/model/RemoteAccessConfig.h>
22#include <aws/eks/model/Taint.h>
23#include <aws/eks/model/WarmPoolConfig.h>
56 template <
typename NodegroupNameT = Aws::String>
58 m_nodegroupNameHasBeenSet =
true;
59 m_nodegroupName = std::forward<NodegroupNameT>(value);
61 template <
typename NodegroupNameT = Aws::String>
74 template <
typename NodegroupArnT = Aws::String>
76 m_nodegroupArnHasBeenSet =
true;
77 m_nodegroupArn = std::forward<NodegroupArnT>(value);
79 template <
typename NodegroupArnT = Aws::String>
92 template <
typename ClusterNameT = Aws::String>
94 m_clusterNameHasBeenSet =
true;
95 m_clusterName = std::forward<ClusterNameT>(value);
97 template <
typename ClusterNameT = Aws::String>
110 template <
typename VersionT = Aws::String>
112 m_versionHasBeenSet =
true;
113 m_version = std::forward<VersionT>(value);
115 template <
typename VersionT = Aws::String>
131 template <
typename ReleaseVersionT = Aws::String>
133 m_releaseVersionHasBeenSet =
true;
134 m_releaseVersion = std::forward<ReleaseVersionT>(value);
136 template <
typename ReleaseVersionT = Aws::String>
149 template <
typename CreatedAtT = Aws::Utils::DateTime>
151 m_createdAtHasBeenSet =
true;
152 m_createdAt = std::forward<CreatedAtT>(value);
154 template <
typename CreatedAtT = Aws::Utils::DateTime>
167 template <
typename ModifiedAtT = Aws::Utils::DateTime>
169 m_modifiedAtHasBeenSet =
true;
170 m_modifiedAt = std::forward<ModifiedAtT>(value);
172 template <
typename ModifiedAtT = Aws::Utils::DateTime>
186 m_statusHasBeenSet =
true;
202 m_capacityTypeHasBeenSet =
true;
203 m_capacityType = value;
218 template <
typename ScalingConfigT = NodegroupScalingConfig>
220 m_scalingConfigHasBeenSet =
true;
221 m_scalingConfig = std::forward<ScalingConfigT>(value);
223 template <
typename ScalingConfigT = NodegroupScalingConfig>
238 template <
typename InstanceTypesT = Aws::Vector<Aws::String>>
240 m_instanceTypesHasBeenSet =
true;
241 m_instanceTypes = std::forward<InstanceTypesT>(value);
243 template <
typename InstanceTypesT = Aws::Vector<Aws::String>>
248 template <
typename InstanceTypesT = Aws::String>
250 m_instanceTypesHasBeenSet =
true;
251 m_instanceTypes.emplace_back(std::forward<InstanceTypesT>(value));
263 template <
typename SubnetsT = Aws::Vector<Aws::String>>
265 m_subnetsHasBeenSet =
true;
266 m_subnets = std::forward<SubnetsT>(value);
268 template <
typename SubnetsT = Aws::Vector<Aws::String>>
273 template <
typename SubnetsT = Aws::String>
275 m_subnetsHasBeenSet =
true;
276 m_subnets.emplace_back(std::forward<SubnetsT>(value));
289 template <
typename RemoteAccessT = RemoteAccessConfig>
291 m_remoteAccessHasBeenSet =
true;
292 m_remoteAccess = std::forward<RemoteAccessT>(value);
294 template <
typename RemoteAccessT = RemoteAccessConfig>
311 m_amiTypeHasBeenSet =
true;
329 template <
typename NodeRoleT = Aws::String>
331 m_nodeRoleHasBeenSet =
true;
332 m_nodeRole = std::forward<NodeRoleT>(value);
334 template <
typename NodeRoleT = Aws::String>
350 template <
typename LabelsT = Aws::Map<Aws::String, Aws::String>>
352 m_labelsHasBeenSet =
true;
353 m_labels = std::forward<LabelsT>(value);
355 template <
typename LabelsT = Aws::Map<Aws::String, Aws::String>>
360 template <
typename LabelsKeyT = Aws::String,
typename LabelsValueT = Aws::String>
362 m_labelsHasBeenSet =
true;
363 m_labels.emplace(std::forward<LabelsKeyT>(key), std::forward<LabelsValueT>(value));
380 template <
typename Ta
intsT = Aws::Vector<Ta
int>>
382 m_taintsHasBeenSet =
true;
383 m_taints = std::forward<TaintsT>(value);
385 template <
typename Ta
intsT = Aws::Vector<Ta
int>>
390 template <
typename Ta
intsT = Ta
int>
392 m_taintsHasBeenSet =
true;
393 m_taints.emplace_back(std::forward<TaintsT>(value));
405 template <
typename ResourcesT = NodegroupResources>
407 m_resourcesHasBeenSet =
true;
408 m_resources = std::forward<ResourcesT>(value);
410 template <
typename ResourcesT = NodegroupResources>
426 m_diskSizeHasBeenSet =
true;
442 template <
typename HealthT = NodegroupHealth>
444 m_healthHasBeenSet =
true;
445 m_health = std::forward<HealthT>(value);
447 template <
typename HealthT = NodegroupHealth>
460 template <
typename UpdateConfigT = NodegroupUpdateConfig>
462 m_updateConfigHasBeenSet =
true;
463 m_updateConfig = std::forward<UpdateConfigT>(value);
465 template <
typename UpdateConfigT = NodegroupUpdateConfig>
478 template <
typename NodeRepairConfigT = NodeRepairConfig>
480 m_nodeRepairConfigHasBeenSet =
true;
481 m_nodeRepairConfig = std::forward<NodeRepairConfigT>(value);
483 template <
typename NodeRepairConfigT = NodeRepairConfig>
497 template <
typename LaunchTemplateT = LaunchTemplateSpecification>
499 m_launchTemplateHasBeenSet =
true;
500 m_launchTemplate = std::forward<LaunchTemplateT>(value);
502 template <
typename LaunchTemplateT = LaunchTemplateSpecification>
517 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
519 m_tagsHasBeenSet =
true;
520 m_tags = std::forward<TagsT>(value);
522 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
524 SetTags(std::forward<TagsT>(value));
527 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
529 m_tagsHasBeenSet =
true;
530 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
544 template <
typename WarmPoolConfigT = WarmPoolConfig>
546 m_warmPoolConfigHasBeenSet =
true;
547 m_warmPoolConfig = std::forward<WarmPoolConfigT>(value);
549 template <
typename WarmPoolConfigT = WarmPoolConfig>
574 NodegroupScalingConfig m_scalingConfig;
580 RemoteAccessConfig m_remoteAccess;
590 NodegroupResources m_resources;
594 NodegroupHealth m_health;
596 NodegroupUpdateConfig m_updateConfig;
600 LaunchTemplateSpecification m_launchTemplate;
604 WarmPoolConfig m_warmPoolConfig;
605 bool m_nodegroupNameHasBeenSet =
false;
606 bool m_nodegroupArnHasBeenSet =
false;
607 bool m_clusterNameHasBeenSet =
false;
608 bool m_versionHasBeenSet =
false;
609 bool m_releaseVersionHasBeenSet =
false;
610 bool m_createdAtHasBeenSet =
false;
611 bool m_modifiedAtHasBeenSet =
false;
612 bool m_statusHasBeenSet =
false;
613 bool m_capacityTypeHasBeenSet =
false;
614 bool m_scalingConfigHasBeenSet =
false;
615 bool m_instanceTypesHasBeenSet =
false;
616 bool m_subnetsHasBeenSet =
false;
617 bool m_remoteAccessHasBeenSet =
false;
618 bool m_amiTypeHasBeenSet =
false;
619 bool m_nodeRoleHasBeenSet =
false;
620 bool m_labelsHasBeenSet =
false;
621 bool m_taintsHasBeenSet =
false;
622 bool m_resourcesHasBeenSet =
false;
623 bool m_diskSizeHasBeenSet =
false;
624 bool m_healthHasBeenSet =
false;
625 bool m_updateConfigHasBeenSet =
false;
626 bool m_nodeRepairConfigHasBeenSet =
false;
627 bool m_launchTemplateHasBeenSet =
false;
628 bool m_tagsHasBeenSet =
false;
629 bool m_warmPoolConfigHasBeenSet =
false;
void SetLabels(LabelsT &&value)
void SetTags(TagsT &&value)
Nodegroup & WithNodeRole(NodeRoleT &&value)
AMITypes GetAmiType() const
bool LaunchTemplateHasBeenSet() const
const NodegroupScalingConfig & GetScalingConfig() const
void SetLaunchTemplate(LaunchTemplateT &&value)
Nodegroup & WithAmiType(AMITypes value)
const WarmPoolConfig & GetWarmPoolConfig() const
Nodegroup & WithNodegroupArn(NodegroupArnT &&value)
Nodegroup & WithCreatedAt(CreatedAtT &&value)
bool CreatedAtHasBeenSet() const
bool TaintsHasBeenSet() const
Nodegroup & WithDiskSize(int value)
bool RemoteAccessHasBeenSet() const
void SetHealth(HealthT &&value)
bool TagsHasBeenSet() const
void SetScalingConfig(ScalingConfigT &&value)
const Aws::Map< Aws::String, Aws::String > & GetLabels() const
const Aws::String & GetNodeRole() const
Nodegroup & WithScalingConfig(ScalingConfigT &&value)
Nodegroup & WithClusterName(ClusterNameT &&value)
const NodegroupHealth & GetHealth() const
void SetClusterName(ClusterNameT &&value)
void SetTaints(TaintsT &&value)
bool NodegroupNameHasBeenSet() const
void SetVersion(VersionT &&value)
void SetResources(ResourcesT &&value)
void SetNodegroupArn(NodegroupArnT &&value)
Nodegroup & WithVersion(VersionT &&value)
const Aws::Vector< Aws::String > & GetSubnets() const
void SetWarmPoolConfig(WarmPoolConfigT &&value)
void SetCreatedAt(CreatedAtT &&value)
void SetReleaseVersion(ReleaseVersionT &&value)
bool CapacityTypeHasBeenSet() const
NodegroupStatus GetStatus() const
void SetCapacityType(CapacityTypes value)
Nodegroup & WithModifiedAt(ModifiedAtT &&value)
const Aws::String & GetNodegroupName() const
bool StatusHasBeenSet() const
bool NodeRepairConfigHasBeenSet() const
Nodegroup & WithReleaseVersion(ReleaseVersionT &&value)
const Aws::Utils::DateTime & GetModifiedAt() const
Nodegroup & WithNodegroupName(NodegroupNameT &&value)
Nodegroup & WithHealth(HealthT &&value)
void SetAmiType(AMITypes value)
bool NodeRoleHasBeenSet() const
void SetModifiedAt(ModifiedAtT &&value)
const NodegroupResources & GetResources() const
Nodegroup & WithSubnets(SubnetsT &&value)
void SetNodegroupName(NodegroupNameT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
bool LabelsHasBeenSet() const
void SetRemoteAccess(RemoteAccessT &&value)
Nodegroup & AddSubnets(SubnetsT &&value)
bool ScalingConfigHasBeenSet() const
void SetDiskSize(int value)
AWS_EKS_API Nodegroup(Aws::Utils::Json::JsonView jsonValue)
AWS_EKS_API Nodegroup & operator=(Aws::Utils::Json::JsonView jsonValue)
Nodegroup & WithLabels(LabelsT &&value)
void SetSubnets(SubnetsT &&value)
Nodegroup & WithRemoteAccess(RemoteAccessT &&value)
Nodegroup & WithInstanceTypes(InstanceTypesT &&value)
bool ModifiedAtHasBeenSet() const
AWS_EKS_API Nodegroup()=default
bool AmiTypeHasBeenSet() const
const Aws::Vector< Aws::String > & GetInstanceTypes() const
Nodegroup & WithTags(TagsT &&value)
const Aws::String & GetReleaseVersion() const
Nodegroup & AddTags(TagsKeyT &&key, TagsValueT &&value)
Nodegroup & AddTaints(TaintsT &&value)
Nodegroup & WithUpdateConfig(UpdateConfigT &&value)
const NodeRepairConfig & GetNodeRepairConfig() const
const RemoteAccessConfig & GetRemoteAccess() const
Nodegroup & WithWarmPoolConfig(WarmPoolConfigT &&value)
const Aws::String & GetNodegroupArn() const
bool SubnetsHasBeenSet() const
const Aws::String & GetVersion() const
bool UpdateConfigHasBeenSet() const
CapacityTypes GetCapacityType() const
bool HealthHasBeenSet() const
AWS_EKS_API Aws::Utils::Json::JsonValue Jsonize() const
bool ReleaseVersionHasBeenSet() const
bool DiskSizeHasBeenSet() const
bool InstanceTypesHasBeenSet() const
Nodegroup & WithStatus(NodegroupStatus value)
Nodegroup & WithLaunchTemplate(LaunchTemplateT &&value)
Nodegroup & WithTaints(TaintsT &&value)
bool NodegroupArnHasBeenSet() const
const Aws::String & GetClusterName() const
void SetStatus(NodegroupStatus value)
const Aws::Vector< Taint > & GetTaints() const
Nodegroup & AddInstanceTypes(InstanceTypesT &&value)
void SetInstanceTypes(InstanceTypesT &&value)
bool ResourcesHasBeenSet() const
Nodegroup & WithNodeRepairConfig(NodeRepairConfigT &&value)
void SetNodeRole(NodeRoleT &&value)
void SetUpdateConfig(UpdateConfigT &&value)
const NodegroupUpdateConfig & GetUpdateConfig() const
void SetNodeRepairConfig(NodeRepairConfigT &&value)
Nodegroup & WithResources(ResourcesT &&value)
const LaunchTemplateSpecification & GetLaunchTemplate() const
Nodegroup & WithCapacityType(CapacityTypes value)
bool VersionHasBeenSet() const
bool WarmPoolConfigHasBeenSet() const
const Aws::Utils::DateTime & GetCreatedAt() const
Nodegroup & AddLabels(LabelsKeyT &&key, LabelsValueT &&value)
bool ClusterNameHasBeenSet() const
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
Aws::Utils::Json::JsonValue JsonValue