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>
55 template <
typename NodegroupNameT = Aws::String>
57 m_nodegroupNameHasBeenSet =
true;
58 m_nodegroupName = std::forward<NodegroupNameT>(value);
60 template <
typename NodegroupNameT = Aws::String>
73 template <
typename NodegroupArnT = Aws::String>
75 m_nodegroupArnHasBeenSet =
true;
76 m_nodegroupArn = std::forward<NodegroupArnT>(value);
78 template <
typename NodegroupArnT = Aws::String>
91 template <
typename ClusterNameT = Aws::String>
93 m_clusterNameHasBeenSet =
true;
94 m_clusterName = std::forward<ClusterNameT>(value);
96 template <
typename ClusterNameT = Aws::String>
109 template <
typename VersionT = Aws::String>
111 m_versionHasBeenSet =
true;
112 m_version = std::forward<VersionT>(value);
114 template <
typename VersionT = Aws::String>
130 template <
typename ReleaseVersionT = Aws::String>
132 m_releaseVersionHasBeenSet =
true;
133 m_releaseVersion = std::forward<ReleaseVersionT>(value);
135 template <
typename ReleaseVersionT = Aws::String>
148 template <
typename CreatedAtT = Aws::Utils::DateTime>
150 m_createdAtHasBeenSet =
true;
151 m_createdAt = std::forward<CreatedAtT>(value);
153 template <
typename CreatedAtT = Aws::Utils::DateTime>
166 template <
typename ModifiedAtT = Aws::Utils::DateTime>
168 m_modifiedAtHasBeenSet =
true;
169 m_modifiedAt = std::forward<ModifiedAtT>(value);
171 template <
typename ModifiedAtT = Aws::Utils::DateTime>
185 m_statusHasBeenSet =
true;
201 m_capacityTypeHasBeenSet =
true;
202 m_capacityType = value;
217 template <
typename ScalingConfigT = NodegroupScalingConfig>
219 m_scalingConfigHasBeenSet =
true;
220 m_scalingConfig = std::forward<ScalingConfigT>(value);
222 template <
typename ScalingConfigT = NodegroupScalingConfig>
237 template <
typename InstanceTypesT = Aws::Vector<Aws::String>>
239 m_instanceTypesHasBeenSet =
true;
240 m_instanceTypes = std::forward<InstanceTypesT>(value);
242 template <
typename InstanceTypesT = Aws::Vector<Aws::String>>
247 template <
typename InstanceTypesT = Aws::String>
249 m_instanceTypesHasBeenSet =
true;
250 m_instanceTypes.emplace_back(std::forward<InstanceTypesT>(value));
262 template <
typename SubnetsT = Aws::Vector<Aws::String>>
264 m_subnetsHasBeenSet =
true;
265 m_subnets = std::forward<SubnetsT>(value);
267 template <
typename SubnetsT = Aws::Vector<Aws::String>>
272 template <
typename SubnetsT = Aws::String>
274 m_subnetsHasBeenSet =
true;
275 m_subnets.emplace_back(std::forward<SubnetsT>(value));
288 template <
typename RemoteAccessT = RemoteAccessConfig>
290 m_remoteAccessHasBeenSet =
true;
291 m_remoteAccess = std::forward<RemoteAccessT>(value);
293 template <
typename RemoteAccessT = RemoteAccessConfig>
310 m_amiTypeHasBeenSet =
true;
328 template <
typename NodeRoleT = Aws::String>
330 m_nodeRoleHasBeenSet =
true;
331 m_nodeRole = std::forward<NodeRoleT>(value);
333 template <
typename NodeRoleT = Aws::String>
349 template <
typename LabelsT = Aws::Map<Aws::String, Aws::String>>
351 m_labelsHasBeenSet =
true;
352 m_labels = std::forward<LabelsT>(value);
354 template <
typename LabelsT = Aws::Map<Aws::String, Aws::String>>
359 template <
typename LabelsKeyT = Aws::String,
typename LabelsValueT = Aws::String>
361 m_labelsHasBeenSet =
true;
362 m_labels.emplace(std::forward<LabelsKeyT>(key), std::forward<LabelsValueT>(value));
379 template <
typename Ta
intsT = Aws::Vector<Ta
int>>
381 m_taintsHasBeenSet =
true;
382 m_taints = std::forward<TaintsT>(value);
384 template <
typename Ta
intsT = Aws::Vector<Ta
int>>
389 template <
typename Ta
intsT = Ta
int>
391 m_taintsHasBeenSet =
true;
392 m_taints.emplace_back(std::forward<TaintsT>(value));
404 template <
typename ResourcesT = NodegroupResources>
406 m_resourcesHasBeenSet =
true;
407 m_resources = std::forward<ResourcesT>(value);
409 template <
typename ResourcesT = NodegroupResources>
425 m_diskSizeHasBeenSet =
true;
441 template <
typename HealthT = NodegroupHealth>
443 m_healthHasBeenSet =
true;
444 m_health = std::forward<HealthT>(value);
446 template <
typename HealthT = NodegroupHealth>
459 template <
typename UpdateConfigT = NodegroupUpdateConfig>
461 m_updateConfigHasBeenSet =
true;
462 m_updateConfig = std::forward<UpdateConfigT>(value);
464 template <
typename UpdateConfigT = NodegroupUpdateConfig>
477 template <
typename NodeRepairConfigT = NodeRepairConfig>
479 m_nodeRepairConfigHasBeenSet =
true;
480 m_nodeRepairConfig = std::forward<NodeRepairConfigT>(value);
482 template <
typename NodeRepairConfigT = NodeRepairConfig>
496 template <
typename LaunchTemplateT = LaunchTemplateSpecification>
498 m_launchTemplateHasBeenSet =
true;
499 m_launchTemplate = std::forward<LaunchTemplateT>(value);
501 template <
typename LaunchTemplateT = LaunchTemplateSpecification>
516 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
518 m_tagsHasBeenSet =
true;
519 m_tags = std::forward<TagsT>(value);
521 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
523 SetTags(std::forward<TagsT>(value));
526 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
528 m_tagsHasBeenSet =
true;
529 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
552 NodegroupScalingConfig m_scalingConfig;
558 RemoteAccessConfig m_remoteAccess;
568 NodegroupResources m_resources;
572 NodegroupHealth m_health;
574 NodegroupUpdateConfig m_updateConfig;
578 LaunchTemplateSpecification m_launchTemplate;
581 bool m_nodegroupNameHasBeenSet =
false;
582 bool m_nodegroupArnHasBeenSet =
false;
583 bool m_clusterNameHasBeenSet =
false;
584 bool m_versionHasBeenSet =
false;
585 bool m_releaseVersionHasBeenSet =
false;
586 bool m_createdAtHasBeenSet =
false;
587 bool m_modifiedAtHasBeenSet =
false;
588 bool m_statusHasBeenSet =
false;
589 bool m_capacityTypeHasBeenSet =
false;
590 bool m_scalingConfigHasBeenSet =
false;
591 bool m_instanceTypesHasBeenSet =
false;
592 bool m_subnetsHasBeenSet =
false;
593 bool m_remoteAccessHasBeenSet =
false;
594 bool m_amiTypeHasBeenSet =
false;
595 bool m_nodeRoleHasBeenSet =
false;
596 bool m_labelsHasBeenSet =
false;
597 bool m_taintsHasBeenSet =
false;
598 bool m_resourcesHasBeenSet =
false;
599 bool m_diskSizeHasBeenSet =
false;
600 bool m_healthHasBeenSet =
false;
601 bool m_updateConfigHasBeenSet =
false;
602 bool m_nodeRepairConfigHasBeenSet =
false;
603 bool m_launchTemplateHasBeenSet =
false;
604 bool m_tagsHasBeenSet =
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)
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 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
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
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