7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/sagemaker/SageMaker_EXPORTS.h>
10#include <aws/sagemaker/model/ClusterAutoPatchConfig.h>
11#include <aws/sagemaker/model/ClusterCapacityRequirements.h>
12#include <aws/sagemaker/model/ClusterInstanceRequirements.h>
13#include <aws/sagemaker/model/ClusterInstanceStorageConfig.h>
14#include <aws/sagemaker/model/ClusterInstanceType.h>
15#include <aws/sagemaker/model/ClusterKubernetesConfig.h>
16#include <aws/sagemaker/model/ClusterLifeCycleConfig.h>
17#include <aws/sagemaker/model/ClusterNetworkInterface.h>
18#include <aws/sagemaker/model/ClusterSlurmConfig.h>
19#include <aws/sagemaker/model/DeepHealthCheckType.h>
20#include <aws/sagemaker/model/ScheduledUpdateConfig.h>
21#include <aws/sagemaker/model/VpcConfig.h>
56 m_instanceCountHasBeenSet =
true;
57 m_instanceCount = value;
78 m_minInstanceCountHasBeenSet =
true;
79 m_minInstanceCount = value;
93 template <
typename InstanceGroupNameT = Aws::String>
95 m_instanceGroupNameHasBeenSet =
true;
96 m_instanceGroupName = std::forward<InstanceGroupNameT>(value);
98 template <
typename InstanceGroupNameT = Aws::String>
112 m_instanceTypeHasBeenSet =
true;
113 m_instanceType = value;
130 template <
typename InstanceRequirementsT = ClusterInstanceRequirements>
132 m_instanceRequirementsHasBeenSet =
true;
133 m_instanceRequirements = std::forward<InstanceRequirementsT>(value);
135 template <
typename InstanceRequirementsT = ClusterInstanceRequirements>
148 template <
typename LifeCycleConfigT = ClusterLifeCycleConfig>
150 m_lifeCycleConfigHasBeenSet =
true;
151 m_lifeCycleConfig = std::forward<LifeCycleConfigT>(value);
153 template <
typename LifeCycleConfigT = ClusterLifeCycleConfig>
166 template <
typename ExecutionRoleT = Aws::String>
168 m_executionRoleHasBeenSet =
true;
169 m_executionRole = std::forward<ExecutionRoleT>(value);
171 template <
typename ExecutionRoleT = Aws::String>
192 m_threadsPerCoreHasBeenSet =
true;
193 m_threadsPerCore = value;
208 template <
typename InstanceStorageConfigsT = Aws::Vector<ClusterInstanceStorageConfig>>
210 m_instanceStorageConfigsHasBeenSet =
true;
211 m_instanceStorageConfigs = std::forward<InstanceStorageConfigsT>(value);
213 template <
typename InstanceStorageConfigsT = Aws::Vector<ClusterInstanceStorageConfig>>
218 template <
typename InstanceStorageConfigsT = ClusterInstanceStorageConfig>
220 m_instanceStorageConfigsHasBeenSet =
true;
221 m_instanceStorageConfigs.emplace_back(std::forward<InstanceStorageConfigsT>(value));
233 template <
typename OnStartDeepHealthChecksT = Aws::Vector<DeepHealthCheckType>>
235 m_onStartDeepHealthChecksHasBeenSet =
true;
236 m_onStartDeepHealthChecks = std::forward<OnStartDeepHealthChecksT>(value);
238 template <
typename OnStartDeepHealthChecksT = Aws::Vector<DeepHealthCheckType>>
244 m_onStartDeepHealthChecksHasBeenSet =
true;
245 m_onStartDeepHealthChecks.push_back(value);
261 template <
typename TrainingPlanArnT = Aws::String>
263 m_trainingPlanArnHasBeenSet =
true;
264 m_trainingPlanArn = std::forward<TrainingPlanArnT>(value);
266 template <
typename TrainingPlanArnT = Aws::String>
304 template <
typename Overr
ideVpcConfigT = VpcConfig>
306 m_overrideVpcConfigHasBeenSet =
true;
307 m_overrideVpcConfig = std::forward<OverrideVpcConfigT>(value);
309 template <
typename Overr
ideVpcConfigT = VpcConfig>
323 template <
typename ScheduledUpdateConfigT = ScheduledUpdateConfig>
325 m_scheduledUpdateConfigHasBeenSet =
true;
326 m_scheduledUpdateConfig = std::forward<ScheduledUpdateConfigT>(value);
328 template <
typename ScheduledUpdateConfigT = ScheduledUpdateConfig>
356 template <
typename ImageIdT = Aws::String>
358 m_imageIdHasBeenSet =
true;
359 m_imageId = std::forward<ImageIdT>(value);
361 template <
typename ImageIdT = Aws::String>
375 template <
typename AutoPatchConfigT = ClusterAutoPatchConfig>
377 m_autoPatchConfigHasBeenSet =
true;
378 m_autoPatchConfig = std::forward<AutoPatchConfigT>(value);
380 template <
typename AutoPatchConfigT = ClusterAutoPatchConfig>
395 template <
typename ImageReleaseVersionT = Aws::String>
397 m_imageReleaseVersionHasBeenSet =
true;
398 m_imageReleaseVersion = std::forward<ImageReleaseVersionT>(value);
400 template <
typename ImageReleaseVersionT = Aws::String>
416 template <
typename KubernetesConfigT = ClusterKubernetesConfig>
418 m_kubernetesConfigHasBeenSet =
true;
419 m_kubernetesConfig = std::forward<KubernetesConfigT>(value);
421 template <
typename KubernetesConfigT = ClusterKubernetesConfig>
434 template <
typename SlurmConfigT = ClusterSlurmConfig>
436 m_slurmConfigHasBeenSet =
true;
437 m_slurmConfig = std::forward<SlurmConfigT>(value);
439 template <
typename SlurmConfigT = ClusterSlurmConfig>
452 template <
typename CapacityRequirementsT = ClusterCapacityRequirements>
454 m_capacityRequirementsHasBeenSet =
true;
455 m_capacityRequirements = std::forward<CapacityRequirementsT>(value);
457 template <
typename CapacityRequirementsT = ClusterCapacityRequirements>
470 template <
typename NetworkInterfaceT = ClusterNetworkInterface>
472 m_networkInterfaceHasBeenSet =
true;
473 m_networkInterface = std::forward<NetworkInterfaceT>(value);
475 template <
typename NetworkInterfaceT = ClusterNetworkInterface>
482 int m_instanceCount{0};
484 int m_minInstanceCount{0};
490 ClusterInstanceRequirements m_instanceRequirements;
492 ClusterLifeCycleConfig m_lifeCycleConfig;
496 int m_threadsPerCore{0};
504 VpcConfig m_overrideVpcConfig;
506 ScheduledUpdateConfig m_scheduledUpdateConfig;
510 ClusterAutoPatchConfig m_autoPatchConfig;
514 ClusterKubernetesConfig m_kubernetesConfig;
516 ClusterSlurmConfig m_slurmConfig;
518 ClusterCapacityRequirements m_capacityRequirements;
520 ClusterNetworkInterface m_networkInterface;
521 bool m_instanceCountHasBeenSet =
false;
522 bool m_minInstanceCountHasBeenSet =
false;
523 bool m_instanceGroupNameHasBeenSet =
false;
524 bool m_instanceTypeHasBeenSet =
false;
525 bool m_instanceRequirementsHasBeenSet =
false;
526 bool m_lifeCycleConfigHasBeenSet =
false;
527 bool m_executionRoleHasBeenSet =
false;
528 bool m_threadsPerCoreHasBeenSet =
false;
529 bool m_instanceStorageConfigsHasBeenSet =
false;
530 bool m_onStartDeepHealthChecksHasBeenSet =
false;
531 bool m_trainingPlanArnHasBeenSet =
false;
532 bool m_overrideVpcConfigHasBeenSet =
false;
533 bool m_scheduledUpdateConfigHasBeenSet =
false;
534 bool m_imageIdHasBeenSet =
false;
535 bool m_autoPatchConfigHasBeenSet =
false;
536 bool m_imageReleaseVersionHasBeenSet =
false;
537 bool m_kubernetesConfigHasBeenSet =
false;
538 bool m_slurmConfigHasBeenSet =
false;
539 bool m_capacityRequirementsHasBeenSet =
false;
540 bool m_networkInterfaceHasBeenSet =
false;
void SetOnStartDeepHealthChecks(OnStartDeepHealthChecksT &&value)
ClusterInstanceGroupSpecification & WithImageId(ImageIdT &&value)
bool OverrideVpcConfigHasBeenSet() const
bool ImageIdHasBeenSet() const
void SetOverrideVpcConfig(OverrideVpcConfigT &&value)
void SetKubernetesConfig(KubernetesConfigT &&value)
ClusterInstanceGroupSpecification & WithNetworkInterface(NetworkInterfaceT &&value)
const ClusterAutoPatchConfig & GetAutoPatchConfig() const
void SetExecutionRole(ExecutionRoleT &&value)
void SetThreadsPerCore(int value)
ClusterInstanceGroupSpecification & WithExecutionRole(ExecutionRoleT &&value)
void SetMinInstanceCount(int value)
void SetScheduledUpdateConfig(ScheduledUpdateConfigT &&value)
const ClusterCapacityRequirements & GetCapacityRequirements() const
void SetCapacityRequirements(CapacityRequirementsT &&value)
int GetInstanceCount() const
ClusterInstanceGroupSpecification & WithOnStartDeepHealthChecks(OnStartDeepHealthChecksT &&value)
void SetLifeCycleConfig(LifeCycleConfigT &&value)
bool NetworkInterfaceHasBeenSet() const
ClusterInstanceGroupSpecification & WithTrainingPlanArn(TrainingPlanArnT &&value)
ClusterInstanceGroupSpecification & WithInstanceRequirements(InstanceRequirementsT &&value)
ClusterInstanceGroupSpecification & AddInstanceStorageConfigs(InstanceStorageConfigsT &&value)
void SetInstanceType(ClusterInstanceType value)
void SetSlurmConfig(SlurmConfigT &&value)
ClusterInstanceGroupSpecification & WithThreadsPerCore(int value)
ClusterInstanceGroupSpecification & WithOverrideVpcConfig(OverrideVpcConfigT &&value)
AWS_SAGEMAKER_API ClusterInstanceGroupSpecification(Aws::Utils::Json::JsonView jsonValue)
bool ExecutionRoleHasBeenSet() const
const Aws::Vector< ClusterInstanceStorageConfig > & GetInstanceStorageConfigs() const
const Aws::String & GetImageId() const
ClusterInstanceGroupSpecification & WithAutoPatchConfig(AutoPatchConfigT &&value)
const Aws::String & GetTrainingPlanArn() const
ClusterInstanceGroupSpecification & WithScheduledUpdateConfig(ScheduledUpdateConfigT &&value)
int GetMinInstanceCount() const
bool ThreadsPerCoreHasBeenSet() const
ClusterInstanceGroupSpecification & WithInstanceGroupName(InstanceGroupNameT &&value)
ClusterInstanceGroupSpecification & WithCapacityRequirements(CapacityRequirementsT &&value)
void SetInstanceGroupName(InstanceGroupNameT &&value)
void SetInstanceCount(int value)
bool LifeCycleConfigHasBeenSet() const
bool TrainingPlanArnHasBeenSet() const
AWS_SAGEMAKER_API ClusterInstanceGroupSpecification & operator=(Aws::Utils::Json::JsonView jsonValue)
const ClusterInstanceRequirements & GetInstanceRequirements() const
const ClusterLifeCycleConfig & GetLifeCycleConfig() const
const Aws::String & GetInstanceGroupName() const
bool ImageReleaseVersionHasBeenSet() const
const VpcConfig & GetOverrideVpcConfig() const
void SetInstanceRequirements(InstanceRequirementsT &&value)
int GetThreadsPerCore() const
ClusterInstanceGroupSpecification & WithInstanceCount(int value)
void SetImageReleaseVersion(ImageReleaseVersionT &&value)
const ClusterKubernetesConfig & GetKubernetesConfig() const
void SetImageId(ImageIdT &&value)
const ClusterSlurmConfig & GetSlurmConfig() const
bool ScheduledUpdateConfigHasBeenSet() const
ClusterInstanceGroupSpecification & WithMinInstanceCount(int value)
void SetTrainingPlanArn(TrainingPlanArnT &&value)
bool InstanceTypeHasBeenSet() const
AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const
bool MinInstanceCountHasBeenSet() const
bool AutoPatchConfigHasBeenSet() const
const ClusterNetworkInterface & GetNetworkInterface() const
bool SlurmConfigHasBeenSet() const
ClusterInstanceGroupSpecification & WithInstanceType(ClusterInstanceType value)
const Aws::Vector< DeepHealthCheckType > & GetOnStartDeepHealthChecks() const
bool InstanceGroupNameHasBeenSet() const
ClusterInstanceType GetInstanceType() const
bool InstanceCountHasBeenSet() const
bool KubernetesConfigHasBeenSet() const
ClusterInstanceGroupSpecification & WithLifeCycleConfig(LifeCycleConfigT &&value)
bool InstanceRequirementsHasBeenSet() const
void SetNetworkInterface(NetworkInterfaceT &&value)
void SetInstanceStorageConfigs(InstanceStorageConfigsT &&value)
bool CapacityRequirementsHasBeenSet() const
void SetAutoPatchConfig(AutoPatchConfigT &&value)
ClusterInstanceGroupSpecification & WithKubernetesConfig(KubernetesConfigT &&value)
const Aws::String & GetImageReleaseVersion() const
ClusterInstanceGroupSpecification & WithSlurmConfig(SlurmConfigT &&value)
const ScheduledUpdateConfig & GetScheduledUpdateConfig() const
ClusterInstanceGroupSpecification & WithImageReleaseVersion(ImageReleaseVersionT &&value)
const Aws::String & GetExecutionRole() const
ClusterInstanceGroupSpecification & AddOnStartDeepHealthChecks(DeepHealthCheckType value)
ClusterInstanceGroupSpecification & WithInstanceStorageConfigs(InstanceStorageConfigsT &&value)
AWS_SAGEMAKER_API ClusterInstanceGroupSpecification()=default
bool InstanceStorageConfigsHasBeenSet() const
bool OnStartDeepHealthChecksHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue