7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/sagemaker/SageMaker_EXPORTS.h>
11#include <aws/sagemaker/model/ActiveClusterOperationName.h>
12#include <aws/sagemaker/model/ClusterCapacityRequirements.h>
13#include <aws/sagemaker/model/ClusterImageVersionStatus.h>
14#include <aws/sagemaker/model/ClusterInstanceRequirementDetails.h>
15#include <aws/sagemaker/model/ClusterInstanceStorageConfig.h>
16#include <aws/sagemaker/model/ClusterInstanceType.h>
17#include <aws/sagemaker/model/ClusterInstanceTypeDetail.h>
18#include <aws/sagemaker/model/ClusterKubernetesConfigDetails.h>
19#include <aws/sagemaker/model/ClusterLifeCycleConfig.h>
20#include <aws/sagemaker/model/ClusterNetworkInterfaceDetails.h>
21#include <aws/sagemaker/model/ClusterSlurmConfigDetails.h>
22#include <aws/sagemaker/model/DeepHealthCheckType.h>
23#include <aws/sagemaker/model/DeploymentConfiguration.h>
24#include <aws/sagemaker/model/InstanceGroupStatus.h>
25#include <aws/sagemaker/model/ScheduledUpdateConfig.h>
26#include <aws/sagemaker/model/SoftwareUpdateStatus.h>
27#include <aws/sagemaker/model/VpcConfig.h>
62 m_currentCountHasBeenSet =
true;
63 m_currentCount = value;
79 m_targetCountHasBeenSet =
true;
80 m_targetCount = value;
97 m_minCountHasBeenSet =
true;
112 template <
typename InstanceGroupNameT = Aws::String>
114 m_instanceGroupNameHasBeenSet =
true;
115 m_instanceGroupName = std::forward<InstanceGroupNameT>(value);
117 template <
typename InstanceGroupNameT = Aws::String>
131 m_instanceTypeHasBeenSet =
true;
132 m_instanceType = value;
148 template <
typename InstanceRequirementsT = ClusterInstanceRequirementDetails>
150 m_instanceRequirementsHasBeenSet =
true;
151 m_instanceRequirements = std::forward<InstanceRequirementsT>(value);
153 template <
typename InstanceRequirementsT = ClusterInstanceRequirementDetails>
168 template <
typename InstanceTypeDetailsT = Aws::Vector<ClusterInstanceTypeDetail>>
170 m_instanceTypeDetailsHasBeenSet =
true;
171 m_instanceTypeDetails = std::forward<InstanceTypeDetailsT>(value);
173 template <
typename InstanceTypeDetailsT = Aws::Vector<ClusterInstanceTypeDetail>>
178 template <
typename InstanceTypeDetailsT = ClusterInstanceTypeDetail>
180 m_instanceTypeDetailsHasBeenSet =
true;
181 m_instanceTypeDetails.emplace_back(std::forward<InstanceTypeDetailsT>(value));
192 template <
typename LifeCycleConfigT = ClusterLifeCycleConfig>
194 m_lifeCycleConfigHasBeenSet =
true;
195 m_lifeCycleConfig = std::forward<LifeCycleConfigT>(value);
197 template <
typename LifeCycleConfigT = ClusterLifeCycleConfig>
210 template <
typename ExecutionRoleT = Aws::String>
212 m_executionRoleHasBeenSet =
true;
213 m_executionRole = std::forward<ExecutionRoleT>(value);
215 template <
typename ExecutionRoleT = Aws::String>
236 m_threadsPerCoreHasBeenSet =
true;
237 m_threadsPerCore = value;
252 template <
typename InstanceStorageConfigsT = Aws::Vector<ClusterInstanceStorageConfig>>
254 m_instanceStorageConfigsHasBeenSet =
true;
255 m_instanceStorageConfigs = std::forward<InstanceStorageConfigsT>(value);
257 template <
typename InstanceStorageConfigsT = Aws::Vector<ClusterInstanceStorageConfig>>
262 template <
typename InstanceStorageConfigsT = ClusterInstanceStorageConfig>
264 m_instanceStorageConfigsHasBeenSet =
true;
265 m_instanceStorageConfigs.emplace_back(std::forward<InstanceStorageConfigsT>(value));
277 template <
typename OnStartDeepHealthChecksT = Aws::Vector<DeepHealthCheckType>>
279 m_onStartDeepHealthChecksHasBeenSet =
true;
280 m_onStartDeepHealthChecks = std::forward<OnStartDeepHealthChecksT>(value);
282 template <
typename OnStartDeepHealthChecksT = Aws::Vector<DeepHealthCheckType>>
288 m_onStartDeepHealthChecksHasBeenSet =
true;
289 m_onStartDeepHealthChecks.push_back(value);
309 m_statusHasBeenSet =
true;
329 template <
typename TrainingPlanArnT = Aws::String>
331 m_trainingPlanArnHasBeenSet =
true;
332 m_trainingPlanArn = std::forward<TrainingPlanArnT>(value);
334 template <
typename TrainingPlanArnT = Aws::String>
348 template <
typename TrainingPlanStatusT = Aws::String>
350 m_trainingPlanStatusHasBeenSet =
true;
351 m_trainingPlanStatus = std::forward<TrainingPlanStatusT>(value);
353 template <
typename TrainingPlanStatusT = Aws::String>
368 template <
typename Overr
ideVpcConfigT = VpcConfig>
370 m_overrideVpcConfigHasBeenSet =
true;
371 m_overrideVpcConfig = std::forward<OverrideVpcConfigT>(value);
373 template <
typename Overr
ideVpcConfigT = VpcConfig>
387 template <
typename ScheduledUpdateConfigT = ScheduledUpdateConfig>
389 m_scheduledUpdateConfigHasBeenSet =
true;
390 m_scheduledUpdateConfig = std::forward<ScheduledUpdateConfigT>(value);
392 template <
typename ScheduledUpdateConfigT = ScheduledUpdateConfig>
406 template <
typename CurrentImageIdT = Aws::String>
408 m_currentImageIdHasBeenSet =
true;
409 m_currentImageId = std::forward<CurrentImageIdT>(value);
411 template <
typename CurrentImageIdT = Aws::String>
424 template <
typename DesiredImageIdT = Aws::String>
426 m_desiredImageIdHasBeenSet =
true;
427 m_desiredImageId = std::forward<DesiredImageIdT>(value);
429 template <
typename DesiredImageIdT = Aws::String>
445 m_imageVersionStatusHasBeenSet =
true;
446 m_imageVersionStatus = value;
462 template <
typename ActiveOperationsT = Aws::Map<ActiveClusterOperationName,
int>>
464 m_activeOperationsHasBeenSet =
true;
465 m_activeOperations = std::forward<ActiveOperationsT>(value);
467 template <
typename ActiveOperationsT = Aws::Map<ActiveClusterOperationName,
int>>
473 m_activeOperationsHasBeenSet =
true;
474 m_activeOperations.emplace(key, value);
486 template <
typename KubernetesConfigT = ClusterKubernetesConfigDetails>
488 m_kubernetesConfigHasBeenSet =
true;
489 m_kubernetesConfig = std::forward<KubernetesConfigT>(value);
491 template <
typename KubernetesConfigT = ClusterKubernetesConfigDetails>
504 template <
typename CapacityRequirementsT = ClusterCapacityRequirements>
506 m_capacityRequirementsHasBeenSet =
true;
507 m_capacityRequirements = std::forward<CapacityRequirementsT>(value);
509 template <
typename CapacityRequirementsT = ClusterCapacityRequirements>
534 m_targetStateCountHasBeenSet =
true;
535 m_targetStateCount = value;
554 m_softwareUpdateStatusHasBeenSet =
true;
555 m_softwareUpdateStatus = value;
567 template <
typename ActiveSoftwareUpdateConfigT = DeploymentConfiguration>
569 m_activeSoftwareUpdateConfigHasBeenSet =
true;
570 m_activeSoftwareUpdateConfig = std::forward<ActiveSoftwareUpdateConfigT>(value);
572 template <
typename ActiveSoftwareUpdateConfigT = DeploymentConfiguration>
585 template <
typename SlurmConfigT = ClusterSlurmConfigDetails>
587 m_slurmConfigHasBeenSet =
true;
588 m_slurmConfig = std::forward<SlurmConfigT>(value);
590 template <
typename SlurmConfigT = ClusterSlurmConfigDetails>
603 template <
typename NetworkInterfaceT = ClusterNetworkInterfaceDetails>
605 m_networkInterfaceHasBeenSet =
true;
606 m_networkInterface = std::forward<NetworkInterfaceT>(value);
608 template <
typename NetworkInterfaceT = ClusterNetworkInterfaceDetails>
615 int m_currentCount{0};
617 int m_targetCount{0};
625 ClusterInstanceRequirementDetails m_instanceRequirements;
629 ClusterLifeCycleConfig m_lifeCycleConfig;
633 int m_threadsPerCore{0};
645 VpcConfig m_overrideVpcConfig;
647 ScheduledUpdateConfig m_scheduledUpdateConfig;
657 ClusterKubernetesConfigDetails m_kubernetesConfig;
659 ClusterCapacityRequirements m_capacityRequirements;
661 int m_targetStateCount{0};
665 DeploymentConfiguration m_activeSoftwareUpdateConfig;
667 ClusterSlurmConfigDetails m_slurmConfig;
669 ClusterNetworkInterfaceDetails m_networkInterface;
670 bool m_currentCountHasBeenSet =
false;
671 bool m_targetCountHasBeenSet =
false;
672 bool m_minCountHasBeenSet =
false;
673 bool m_instanceGroupNameHasBeenSet =
false;
674 bool m_instanceTypeHasBeenSet =
false;
675 bool m_instanceRequirementsHasBeenSet =
false;
676 bool m_instanceTypeDetailsHasBeenSet =
false;
677 bool m_lifeCycleConfigHasBeenSet =
false;
678 bool m_executionRoleHasBeenSet =
false;
679 bool m_threadsPerCoreHasBeenSet =
false;
680 bool m_instanceStorageConfigsHasBeenSet =
false;
681 bool m_onStartDeepHealthChecksHasBeenSet =
false;
682 bool m_statusHasBeenSet =
false;
683 bool m_trainingPlanArnHasBeenSet =
false;
684 bool m_trainingPlanStatusHasBeenSet =
false;
685 bool m_overrideVpcConfigHasBeenSet =
false;
686 bool m_scheduledUpdateConfigHasBeenSet =
false;
687 bool m_currentImageIdHasBeenSet =
false;
688 bool m_desiredImageIdHasBeenSet =
false;
689 bool m_imageVersionStatusHasBeenSet =
false;
690 bool m_activeOperationsHasBeenSet =
false;
691 bool m_kubernetesConfigHasBeenSet =
false;
692 bool m_capacityRequirementsHasBeenSet =
false;
693 bool m_targetStateCountHasBeenSet =
false;
694 bool m_softwareUpdateStatusHasBeenSet =
false;
695 bool m_activeSoftwareUpdateConfigHasBeenSet =
false;
696 bool m_slurmConfigHasBeenSet =
false;
697 bool m_networkInterfaceHasBeenSet =
false;
bool KubernetesConfigHasBeenSet() const
ClusterInstanceGroupDetails & WithImageVersionStatus(ClusterImageVersionStatus value)
bool InstanceRequirementsHasBeenSet() const
bool ActiveSoftwareUpdateConfigHasBeenSet() const
ClusterInstanceGroupDetails & WithOverrideVpcConfig(OverrideVpcConfigT &&value)
ClusterInstanceGroupDetails & WithCurrentImageId(CurrentImageIdT &&value)
ClusterInstanceGroupDetails & WithNetworkInterface(NetworkInterfaceT &&value)
void SetInstanceStorageConfigs(InstanceStorageConfigsT &&value)
bool InstanceTypeHasBeenSet() const
const ClusterLifeCycleConfig & GetLifeCycleConfig() const
bool OverrideVpcConfigHasBeenSet() const
ClusterInstanceGroupDetails & WithMinCount(int value)
void SetTargetStateCount(int value)
bool MinCountHasBeenSet() const
void SetTrainingPlanArn(TrainingPlanArnT &&value)
void SetTargetCount(int value)
bool TrainingPlanArnHasBeenSet() const
ClusterInstanceGroupDetails & WithCapacityRequirements(CapacityRequirementsT &&value)
ClusterInstanceGroupDetails & WithTrainingPlanArn(TrainingPlanArnT &&value)
ClusterInstanceGroupDetails & WithInstanceType(ClusterInstanceType value)
const Aws::Vector< DeepHealthCheckType > & GetOnStartDeepHealthChecks() const
ClusterInstanceGroupDetails & AddActiveOperations(ActiveClusterOperationName key, int value)
const Aws::String & GetCurrentImageId() const
ClusterInstanceGroupDetails & WithSlurmConfig(SlurmConfigT &&value)
const ClusterInstanceRequirementDetails & GetInstanceRequirements() const
ClusterInstanceGroupDetails & WithTrainingPlanStatus(TrainingPlanStatusT &&value)
bool CapacityRequirementsHasBeenSet() const
int GetThreadsPerCore() const
ClusterInstanceType GetInstanceType() const
bool LifeCycleConfigHasBeenSet() const
bool NetworkInterfaceHasBeenSet() const
bool InstanceGroupNameHasBeenSet() const
void SetInstanceType(ClusterInstanceType value)
ClusterInstanceGroupDetails & WithSoftwareUpdateStatus(SoftwareUpdateStatus value)
void SetImageVersionStatus(ClusterImageVersionStatus value)
ClusterInstanceGroupDetails & WithStatus(InstanceGroupStatus value)
void SetStatus(InstanceGroupStatus value)
ClusterInstanceGroupDetails & WithActiveOperations(ActiveOperationsT &&value)
void SetNetworkInterface(NetworkInterfaceT &&value)
void SetCapacityRequirements(CapacityRequirementsT &&value)
void SetCurrentImageId(CurrentImageIdT &&value)
const Aws::Map< ActiveClusterOperationName, int > & GetActiveOperations() const
const VpcConfig & GetOverrideVpcConfig() const
ClusterInstanceGroupDetails & AddOnStartDeepHealthChecks(DeepHealthCheckType value)
ClusterInstanceGroupDetails & AddInstanceStorageConfigs(InstanceStorageConfigsT &&value)
ClusterInstanceGroupDetails & WithThreadsPerCore(int value)
int GetCurrentCount() const
ClusterInstanceGroupDetails & WithTargetCount(int value)
bool ImageVersionStatusHasBeenSet() const
AWS_SAGEMAKER_API ClusterInstanceGroupDetails()=default
int GetTargetStateCount() const
const Aws::String & GetDesiredImageId() const
bool InstanceTypeDetailsHasBeenSet() const
bool ScheduledUpdateConfigHasBeenSet() const
bool SlurmConfigHasBeenSet() const
ClusterInstanceGroupDetails & WithTargetStateCount(int value)
ClusterInstanceGroupDetails & WithInstanceGroupName(InstanceGroupNameT &&value)
bool ActiveOperationsHasBeenSet() const
void SetExecutionRole(ExecutionRoleT &&value)
bool DesiredImageIdHasBeenSet() const
ClusterInstanceGroupDetails & WithInstanceStorageConfigs(InstanceStorageConfigsT &&value)
void SetSlurmConfig(SlurmConfigT &&value)
const Aws::Vector< ClusterInstanceTypeDetail > & GetInstanceTypeDetails() const
const ClusterKubernetesConfigDetails & GetKubernetesConfig() const
bool TargetCountHasBeenSet() const
void SetSoftwareUpdateStatus(SoftwareUpdateStatus value)
const ClusterSlurmConfigDetails & GetSlurmConfig() const
const Aws::String & GetInstanceGroupName() const
ClusterInstanceGroupDetails & AddInstanceTypeDetails(InstanceTypeDetailsT &&value)
void SetInstanceGroupName(InstanceGroupNameT &&value)
void SetLifeCycleConfig(LifeCycleConfigT &&value)
AWS_SAGEMAKER_API ClusterInstanceGroupDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetThreadsPerCore(int value)
ClusterInstanceGroupDetails & WithExecutionRole(ExecutionRoleT &&value)
void SetMinCount(int value)
void SetScheduledUpdateConfig(ScheduledUpdateConfigT &&value)
int GetTargetCount() const
ClusterInstanceGroupDetails & WithCurrentCount(int value)
SoftwareUpdateStatus GetSoftwareUpdateStatus() const
void SetDesiredImageId(DesiredImageIdT &&value)
const Aws::String & GetExecutionRole() const
void SetCurrentCount(int value)
ClusterInstanceGroupDetails & WithOnStartDeepHealthChecks(OnStartDeepHealthChecksT &&value)
ClusterInstanceGroupDetails & WithInstanceRequirements(InstanceRequirementsT &&value)
void SetKubernetesConfig(KubernetesConfigT &&value)
const ClusterNetworkInterfaceDetails & GetNetworkInterface() const
ClusterInstanceGroupDetails & WithInstanceTypeDetails(InstanceTypeDetailsT &&value)
ClusterInstanceGroupDetails & WithLifeCycleConfig(LifeCycleConfigT &&value)
const Aws::String & GetTrainingPlanStatus() const
AWS_SAGEMAKER_API ClusterInstanceGroupDetails(Aws::Utils::Json::JsonView jsonValue)
bool ExecutionRoleHasBeenSet() const
bool TrainingPlanStatusHasBeenSet() const
bool StatusHasBeenSet() const
ClusterInstanceGroupDetails & WithActiveSoftwareUpdateConfig(ActiveSoftwareUpdateConfigT &&value)
ClusterInstanceGroupDetails & WithScheduledUpdateConfig(ScheduledUpdateConfigT &&value)
bool CurrentCountHasBeenSet() const
ClusterImageVersionStatus GetImageVersionStatus() const
const Aws::Vector< ClusterInstanceStorageConfig > & GetInstanceStorageConfigs() const
bool InstanceStorageConfigsHasBeenSet() const
bool TargetStateCountHasBeenSet() const
void SetInstanceRequirements(InstanceRequirementsT &&value)
AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const
bool SoftwareUpdateStatusHasBeenSet() const
void SetActiveSoftwareUpdateConfig(ActiveSoftwareUpdateConfigT &&value)
void SetInstanceTypeDetails(InstanceTypeDetailsT &&value)
void SetTrainingPlanStatus(TrainingPlanStatusT &&value)
void SetOnStartDeepHealthChecks(OnStartDeepHealthChecksT &&value)
const DeploymentConfiguration & GetActiveSoftwareUpdateConfig() const
void SetOverrideVpcConfig(OverrideVpcConfigT &&value)
bool CurrentImageIdHasBeenSet() const
bool ThreadsPerCoreHasBeenSet() const
const ScheduledUpdateConfig & GetScheduledUpdateConfig() const
bool OnStartDeepHealthChecksHasBeenSet() const
const Aws::String & GetTrainingPlanArn() const
void SetActiveOperations(ActiveOperationsT &&value)
ClusterInstanceGroupDetails & WithKubernetesConfig(KubernetesConfigT &&value)
const ClusterCapacityRequirements & GetCapacityRequirements() const
ClusterInstanceGroupDetails & WithDesiredImageId(DesiredImageIdT &&value)
InstanceGroupStatus GetStatus() const
ClusterImageVersionStatus
ActiveClusterOperationName
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