AWS SDK for C++

AWS SDK for C++ Version 1.11.781

Loading...
Searching...
No Matches
ClusterInstanceGroupDetails.h
1
6#pragma once
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/ClusterInstanceStorageConfig.h>
14#include <aws/sagemaker/model/ClusterInstanceType.h>
15#include <aws/sagemaker/model/ClusterKubernetesConfigDetails.h>
16#include <aws/sagemaker/model/ClusterLifeCycleConfig.h>
17#include <aws/sagemaker/model/ClusterSlurmConfigDetails.h>
18#include <aws/sagemaker/model/DeepHealthCheckType.h>
19#include <aws/sagemaker/model/DeploymentConfiguration.h>
20#include <aws/sagemaker/model/InstanceGroupStatus.h>
21#include <aws/sagemaker/model/ScheduledUpdateConfig.h>
22#include <aws/sagemaker/model/SoftwareUpdateStatus.h>
23#include <aws/sagemaker/model/VpcConfig.h>
24
25#include <utility>
26
27namespace Aws {
28namespace Utils {
29namespace Json {
30class JsonValue;
31class JsonView;
32} // namespace Json
33} // namespace Utils
34namespace SageMaker {
35namespace Model {
36
44 public:
45 AWS_SAGEMAKER_API ClusterInstanceGroupDetails() = default;
48 AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const;
49
51
55 inline int GetCurrentCount() const { return m_currentCount; }
56 inline bool CurrentCountHasBeenSet() const { return m_currentCountHasBeenSet; }
57 inline void SetCurrentCount(int value) {
58 m_currentCountHasBeenSet = true;
59 m_currentCount = value;
60 }
62 SetCurrentCount(value);
63 return *this;
64 }
66
68
72 inline int GetTargetCount() const { return m_targetCount; }
73 inline bool TargetCountHasBeenSet() const { return m_targetCountHasBeenSet; }
74 inline void SetTargetCount(int value) {
75 m_targetCountHasBeenSet = true;
76 m_targetCount = value;
77 }
79 SetTargetCount(value);
80 return *this;
81 }
83
85
90 inline int GetMinCount() const { return m_minCount; }
91 inline bool MinCountHasBeenSet() const { return m_minCountHasBeenSet; }
92 inline void SetMinCount(int value) {
93 m_minCountHasBeenSet = true;
94 m_minCount = value;
95 }
97 SetMinCount(value);
98 return *this;
99 }
101
103
106 inline const Aws::String& GetInstanceGroupName() const { return m_instanceGroupName; }
107 inline bool InstanceGroupNameHasBeenSet() const { return m_instanceGroupNameHasBeenSet; }
108 template <typename InstanceGroupNameT = Aws::String>
109 void SetInstanceGroupName(InstanceGroupNameT&& value) {
110 m_instanceGroupNameHasBeenSet = true;
111 m_instanceGroupName = std::forward<InstanceGroupNameT>(value);
112 }
113 template <typename InstanceGroupNameT = Aws::String>
115 SetInstanceGroupName(std::forward<InstanceGroupNameT>(value));
116 return *this;
117 }
119
121
124 inline ClusterInstanceType GetInstanceType() const { return m_instanceType; }
125 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
127 m_instanceTypeHasBeenSet = true;
128 m_instanceType = value;
129 }
131 SetInstanceType(value);
132 return *this;
133 }
135
137
140 inline const ClusterLifeCycleConfig& GetLifeCycleConfig() const { return m_lifeCycleConfig; }
141 inline bool LifeCycleConfigHasBeenSet() const { return m_lifeCycleConfigHasBeenSet; }
142 template <typename LifeCycleConfigT = ClusterLifeCycleConfig>
143 void SetLifeCycleConfig(LifeCycleConfigT&& value) {
144 m_lifeCycleConfigHasBeenSet = true;
145 m_lifeCycleConfig = std::forward<LifeCycleConfigT>(value);
146 }
147 template <typename LifeCycleConfigT = ClusterLifeCycleConfig>
149 SetLifeCycleConfig(std::forward<LifeCycleConfigT>(value));
150 return *this;
151 }
153
155
158 inline const Aws::String& GetExecutionRole() const { return m_executionRole; }
159 inline bool ExecutionRoleHasBeenSet() const { return m_executionRoleHasBeenSet; }
160 template <typename ExecutionRoleT = Aws::String>
161 void SetExecutionRole(ExecutionRoleT&& value) {
162 m_executionRoleHasBeenSet = true;
163 m_executionRole = std::forward<ExecutionRoleT>(value);
164 }
165 template <typename ExecutionRoleT = Aws::String>
167 SetExecutionRole(std::forward<ExecutionRoleT>(value));
168 return *this;
169 }
171
173
183 inline int GetThreadsPerCore() const { return m_threadsPerCore; }
184 inline bool ThreadsPerCoreHasBeenSet() const { return m_threadsPerCoreHasBeenSet; }
185 inline void SetThreadsPerCore(int value) {
186 m_threadsPerCoreHasBeenSet = true;
187 m_threadsPerCore = value;
188 }
190 SetThreadsPerCore(value);
191 return *this;
192 }
194
196
200 inline const Aws::Vector<ClusterInstanceStorageConfig>& GetInstanceStorageConfigs() const { return m_instanceStorageConfigs; }
201 inline bool InstanceStorageConfigsHasBeenSet() const { return m_instanceStorageConfigsHasBeenSet; }
202 template <typename InstanceStorageConfigsT = Aws::Vector<ClusterInstanceStorageConfig>>
203 void SetInstanceStorageConfigs(InstanceStorageConfigsT&& value) {
204 m_instanceStorageConfigsHasBeenSet = true;
205 m_instanceStorageConfigs = std::forward<InstanceStorageConfigsT>(value);
206 }
207 template <typename InstanceStorageConfigsT = Aws::Vector<ClusterInstanceStorageConfig>>
208 ClusterInstanceGroupDetails& WithInstanceStorageConfigs(InstanceStorageConfigsT&& value) {
209 SetInstanceStorageConfigs(std::forward<InstanceStorageConfigsT>(value));
210 return *this;
211 }
212 template <typename InstanceStorageConfigsT = ClusterInstanceStorageConfig>
213 ClusterInstanceGroupDetails& AddInstanceStorageConfigs(InstanceStorageConfigsT&& value) {
214 m_instanceStorageConfigsHasBeenSet = true;
215 m_instanceStorageConfigs.emplace_back(std::forward<InstanceStorageConfigsT>(value));
216 return *this;
217 }
219
221
225 inline const Aws::Vector<DeepHealthCheckType>& GetOnStartDeepHealthChecks() const { return m_onStartDeepHealthChecks; }
226 inline bool OnStartDeepHealthChecksHasBeenSet() const { return m_onStartDeepHealthChecksHasBeenSet; }
227 template <typename OnStartDeepHealthChecksT = Aws::Vector<DeepHealthCheckType>>
228 void SetOnStartDeepHealthChecks(OnStartDeepHealthChecksT&& value) {
229 m_onStartDeepHealthChecksHasBeenSet = true;
230 m_onStartDeepHealthChecks = std::forward<OnStartDeepHealthChecksT>(value);
231 }
232 template <typename OnStartDeepHealthChecksT = Aws::Vector<DeepHealthCheckType>>
233 ClusterInstanceGroupDetails& WithOnStartDeepHealthChecks(OnStartDeepHealthChecksT&& value) {
234 SetOnStartDeepHealthChecks(std::forward<OnStartDeepHealthChecksT>(value));
235 return *this;
236 }
238 m_onStartDeepHealthChecksHasBeenSet = true;
239 m_onStartDeepHealthChecks.push_back(value);
240 return *this;
241 }
243
245
256 inline InstanceGroupStatus GetStatus() const { return m_status; }
257 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
258 inline void SetStatus(InstanceGroupStatus value) {
259 m_statusHasBeenSet = true;
260 m_status = value;
261 }
263 SetStatus(value);
264 return *this;
265 }
267
269
277 inline const Aws::String& GetTrainingPlanArn() const { return m_trainingPlanArn; }
278 inline bool TrainingPlanArnHasBeenSet() const { return m_trainingPlanArnHasBeenSet; }
279 template <typename TrainingPlanArnT = Aws::String>
280 void SetTrainingPlanArn(TrainingPlanArnT&& value) {
281 m_trainingPlanArnHasBeenSet = true;
282 m_trainingPlanArn = std::forward<TrainingPlanArnT>(value);
283 }
284 template <typename TrainingPlanArnT = Aws::String>
286 SetTrainingPlanArn(std::forward<TrainingPlanArnT>(value));
287 return *this;
288 }
290
292
296 inline const Aws::String& GetTrainingPlanStatus() const { return m_trainingPlanStatus; }
297 inline bool TrainingPlanStatusHasBeenSet() const { return m_trainingPlanStatusHasBeenSet; }
298 template <typename TrainingPlanStatusT = Aws::String>
299 void SetTrainingPlanStatus(TrainingPlanStatusT&& value) {
300 m_trainingPlanStatusHasBeenSet = true;
301 m_trainingPlanStatus = std::forward<TrainingPlanStatusT>(value);
302 }
303 template <typename TrainingPlanStatusT = Aws::String>
305 SetTrainingPlanStatus(std::forward<TrainingPlanStatusT>(value));
306 return *this;
307 }
309
311
316 inline const VpcConfig& GetOverrideVpcConfig() const { return m_overrideVpcConfig; }
317 inline bool OverrideVpcConfigHasBeenSet() const { return m_overrideVpcConfigHasBeenSet; }
318 template <typename OverrideVpcConfigT = VpcConfig>
319 void SetOverrideVpcConfig(OverrideVpcConfigT&& value) {
320 m_overrideVpcConfigHasBeenSet = true;
321 m_overrideVpcConfig = std::forward<OverrideVpcConfigT>(value);
322 }
323 template <typename OverrideVpcConfigT = VpcConfig>
325 SetOverrideVpcConfig(std::forward<OverrideVpcConfigT>(value));
326 return *this;
327 }
329
331
335 inline const ScheduledUpdateConfig& GetScheduledUpdateConfig() const { return m_scheduledUpdateConfig; }
336 inline bool ScheduledUpdateConfigHasBeenSet() const { return m_scheduledUpdateConfigHasBeenSet; }
337 template <typename ScheduledUpdateConfigT = ScheduledUpdateConfig>
338 void SetScheduledUpdateConfig(ScheduledUpdateConfigT&& value) {
339 m_scheduledUpdateConfigHasBeenSet = true;
340 m_scheduledUpdateConfig = std::forward<ScheduledUpdateConfigT>(value);
341 }
342 template <typename ScheduledUpdateConfigT = ScheduledUpdateConfig>
344 SetScheduledUpdateConfig(std::forward<ScheduledUpdateConfigT>(value));
345 return *this;
346 }
348
350
354 inline const Aws::String& GetCurrentImageId() const { return m_currentImageId; }
355 inline bool CurrentImageIdHasBeenSet() const { return m_currentImageIdHasBeenSet; }
356 template <typename CurrentImageIdT = Aws::String>
357 void SetCurrentImageId(CurrentImageIdT&& value) {
358 m_currentImageIdHasBeenSet = true;
359 m_currentImageId = std::forward<CurrentImageIdT>(value);
360 }
361 template <typename CurrentImageIdT = Aws::String>
363 SetCurrentImageId(std::forward<CurrentImageIdT>(value));
364 return *this;
365 }
367
369
372 inline const Aws::String& GetDesiredImageId() const { return m_desiredImageId; }
373 inline bool DesiredImageIdHasBeenSet() const { return m_desiredImageIdHasBeenSet; }
374 template <typename DesiredImageIdT = Aws::String>
375 void SetDesiredImageId(DesiredImageIdT&& value) {
376 m_desiredImageIdHasBeenSet = true;
377 m_desiredImageId = std::forward<DesiredImageIdT>(value);
378 }
379 template <typename DesiredImageIdT = Aws::String>
381 SetDesiredImageId(std::forward<DesiredImageIdT>(value));
382 return *this;
383 }
385
387
392 inline const Aws::Map<ActiveClusterOperationName, int>& GetActiveOperations() const { return m_activeOperations; }
393 inline bool ActiveOperationsHasBeenSet() const { return m_activeOperationsHasBeenSet; }
394 template <typename ActiveOperationsT = Aws::Map<ActiveClusterOperationName, int>>
395 void SetActiveOperations(ActiveOperationsT&& value) {
396 m_activeOperationsHasBeenSet = true;
397 m_activeOperations = std::forward<ActiveOperationsT>(value);
398 }
399 template <typename ActiveOperationsT = Aws::Map<ActiveClusterOperationName, int>>
401 SetActiveOperations(std::forward<ActiveOperationsT>(value));
402 return *this;
403 }
405 m_activeOperationsHasBeenSet = true;
406 m_activeOperations.emplace(key, value);
407 return *this;
408 }
410
412
416 inline const ClusterKubernetesConfigDetails& GetKubernetesConfig() const { return m_kubernetesConfig; }
417 inline bool KubernetesConfigHasBeenSet() const { return m_kubernetesConfigHasBeenSet; }
418 template <typename KubernetesConfigT = ClusterKubernetesConfigDetails>
419 void SetKubernetesConfig(KubernetesConfigT&& value) {
420 m_kubernetesConfigHasBeenSet = true;
421 m_kubernetesConfig = std::forward<KubernetesConfigT>(value);
422 }
423 template <typename KubernetesConfigT = ClusterKubernetesConfigDetails>
425 SetKubernetesConfig(std::forward<KubernetesConfigT>(value));
426 return *this;
427 }
429
431
434 inline const ClusterCapacityRequirements& GetCapacityRequirements() const { return m_capacityRequirements; }
435 inline bool CapacityRequirementsHasBeenSet() const { return m_capacityRequirementsHasBeenSet; }
436 template <typename CapacityRequirementsT = ClusterCapacityRequirements>
437 void SetCapacityRequirements(CapacityRequirementsT&& value) {
438 m_capacityRequirementsHasBeenSet = true;
439 m_capacityRequirements = std::forward<CapacityRequirementsT>(value);
440 }
441 template <typename CapacityRequirementsT = ClusterCapacityRequirements>
443 SetCapacityRequirements(std::forward<CapacityRequirementsT>(value));
444 return *this;
445 }
447
449
463 inline int GetTargetStateCount() const { return m_targetStateCount; }
464 inline bool TargetStateCountHasBeenSet() const { return m_targetStateCountHasBeenSet; }
465 inline void SetTargetStateCount(int value) {
466 m_targetStateCountHasBeenSet = true;
467 m_targetStateCount = value;
468 }
470 SetTargetStateCount(value);
471 return *this;
472 }
474
476
483 inline SoftwareUpdateStatus GetSoftwareUpdateStatus() const { return m_softwareUpdateStatus; }
484 inline bool SoftwareUpdateStatusHasBeenSet() const { return m_softwareUpdateStatusHasBeenSet; }
486 m_softwareUpdateStatusHasBeenSet = true;
487 m_softwareUpdateStatus = value;
488 }
491 return *this;
492 }
494
496
497 inline const DeploymentConfiguration& GetActiveSoftwareUpdateConfig() const { return m_activeSoftwareUpdateConfig; }
498 inline bool ActiveSoftwareUpdateConfigHasBeenSet() const { return m_activeSoftwareUpdateConfigHasBeenSet; }
499 template <typename ActiveSoftwareUpdateConfigT = DeploymentConfiguration>
500 void SetActiveSoftwareUpdateConfig(ActiveSoftwareUpdateConfigT&& value) {
501 m_activeSoftwareUpdateConfigHasBeenSet = true;
502 m_activeSoftwareUpdateConfig = std::forward<ActiveSoftwareUpdateConfigT>(value);
503 }
504 template <typename ActiveSoftwareUpdateConfigT = DeploymentConfiguration>
505 ClusterInstanceGroupDetails& WithActiveSoftwareUpdateConfig(ActiveSoftwareUpdateConfigT&& value) {
506 SetActiveSoftwareUpdateConfig(std::forward<ActiveSoftwareUpdateConfigT>(value));
507 return *this;
508 }
510
512
515 inline const ClusterSlurmConfigDetails& GetSlurmConfig() const { return m_slurmConfig; }
516 inline bool SlurmConfigHasBeenSet() const { return m_slurmConfigHasBeenSet; }
517 template <typename SlurmConfigT = ClusterSlurmConfigDetails>
518 void SetSlurmConfig(SlurmConfigT&& value) {
519 m_slurmConfigHasBeenSet = true;
520 m_slurmConfig = std::forward<SlurmConfigT>(value);
521 }
522 template <typename SlurmConfigT = ClusterSlurmConfigDetails>
524 SetSlurmConfig(std::forward<SlurmConfigT>(value));
525 return *this;
526 }
528 private:
529 int m_currentCount{0};
530
531 int m_targetCount{0};
532
533 int m_minCount{0};
534
535 Aws::String m_instanceGroupName;
536
538
539 ClusterLifeCycleConfig m_lifeCycleConfig;
540
541 Aws::String m_executionRole;
542
543 int m_threadsPerCore{0};
544
545 Aws::Vector<ClusterInstanceStorageConfig> m_instanceStorageConfigs;
546
547 Aws::Vector<DeepHealthCheckType> m_onStartDeepHealthChecks;
548
550
551 Aws::String m_trainingPlanArn;
552
553 Aws::String m_trainingPlanStatus;
554
555 VpcConfig m_overrideVpcConfig;
556
557 ScheduledUpdateConfig m_scheduledUpdateConfig;
558
559 Aws::String m_currentImageId;
560
561 Aws::String m_desiredImageId;
562
564
565 ClusterKubernetesConfigDetails m_kubernetesConfig;
566
567 ClusterCapacityRequirements m_capacityRequirements;
568
569 int m_targetStateCount{0};
570
572
573 DeploymentConfiguration m_activeSoftwareUpdateConfig;
574
575 ClusterSlurmConfigDetails m_slurmConfig;
576 bool m_currentCountHasBeenSet = false;
577 bool m_targetCountHasBeenSet = false;
578 bool m_minCountHasBeenSet = false;
579 bool m_instanceGroupNameHasBeenSet = false;
580 bool m_instanceTypeHasBeenSet = false;
581 bool m_lifeCycleConfigHasBeenSet = false;
582 bool m_executionRoleHasBeenSet = false;
583 bool m_threadsPerCoreHasBeenSet = false;
584 bool m_instanceStorageConfigsHasBeenSet = false;
585 bool m_onStartDeepHealthChecksHasBeenSet = false;
586 bool m_statusHasBeenSet = false;
587 bool m_trainingPlanArnHasBeenSet = false;
588 bool m_trainingPlanStatusHasBeenSet = false;
589 bool m_overrideVpcConfigHasBeenSet = false;
590 bool m_scheduledUpdateConfigHasBeenSet = false;
591 bool m_currentImageIdHasBeenSet = false;
592 bool m_desiredImageIdHasBeenSet = false;
593 bool m_activeOperationsHasBeenSet = false;
594 bool m_kubernetesConfigHasBeenSet = false;
595 bool m_capacityRequirementsHasBeenSet = false;
596 bool m_targetStateCountHasBeenSet = false;
597 bool m_softwareUpdateStatusHasBeenSet = false;
598 bool m_activeSoftwareUpdateConfigHasBeenSet = false;
599 bool m_slurmConfigHasBeenSet = false;
600};
601
602} // namespace Model
603} // namespace SageMaker
604} // namespace Aws
ClusterInstanceGroupDetails & WithOverrideVpcConfig(OverrideVpcConfigT &&value)
ClusterInstanceGroupDetails & WithCurrentImageId(CurrentImageIdT &&value)
void SetInstanceStorageConfigs(InstanceStorageConfigsT &&value)
ClusterInstanceGroupDetails & WithMinCount(int value)
ClusterInstanceGroupDetails & WithCapacityRequirements(CapacityRequirementsT &&value)
ClusterInstanceGroupDetails & WithTrainingPlanArn(TrainingPlanArnT &&value)
ClusterInstanceGroupDetails & WithInstanceType(ClusterInstanceType value)
const Aws::Vector< DeepHealthCheckType > & GetOnStartDeepHealthChecks() const
ClusterInstanceGroupDetails & AddActiveOperations(ActiveClusterOperationName key, int value)
ClusterInstanceGroupDetails & WithSlurmConfig(SlurmConfigT &&value)
ClusterInstanceGroupDetails & WithTrainingPlanStatus(TrainingPlanStatusT &&value)
ClusterInstanceGroupDetails & WithSoftwareUpdateStatus(SoftwareUpdateStatus value)
ClusterInstanceGroupDetails & WithStatus(InstanceGroupStatus value)
ClusterInstanceGroupDetails & WithActiveOperations(ActiveOperationsT &&value)
const Aws::Map< ActiveClusterOperationName, int > & GetActiveOperations() const
ClusterInstanceGroupDetails & AddOnStartDeepHealthChecks(DeepHealthCheckType value)
ClusterInstanceGroupDetails & AddInstanceStorageConfigs(InstanceStorageConfigsT &&value)
ClusterInstanceGroupDetails & WithThreadsPerCore(int value)
ClusterInstanceGroupDetails & WithTargetCount(int value)
AWS_SAGEMAKER_API ClusterInstanceGroupDetails()=default
ClusterInstanceGroupDetails & WithTargetStateCount(int value)
ClusterInstanceGroupDetails & WithInstanceGroupName(InstanceGroupNameT &&value)
ClusterInstanceGroupDetails & WithInstanceStorageConfigs(InstanceStorageConfigsT &&value)
const ClusterKubernetesConfigDetails & GetKubernetesConfig() const
const ClusterSlurmConfigDetails & GetSlurmConfig() const
AWS_SAGEMAKER_API ClusterInstanceGroupDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
ClusterInstanceGroupDetails & WithExecutionRole(ExecutionRoleT &&value)
ClusterInstanceGroupDetails & WithCurrentCount(int value)
ClusterInstanceGroupDetails & WithOnStartDeepHealthChecks(OnStartDeepHealthChecksT &&value)
ClusterInstanceGroupDetails & WithLifeCycleConfig(LifeCycleConfigT &&value)
AWS_SAGEMAKER_API ClusterInstanceGroupDetails(Aws::Utils::Json::JsonView jsonValue)
ClusterInstanceGroupDetails & WithActiveSoftwareUpdateConfig(ActiveSoftwareUpdateConfigT &&value)
ClusterInstanceGroupDetails & WithScheduledUpdateConfig(ScheduledUpdateConfigT &&value)
const Aws::Vector< ClusterInstanceStorageConfig > & GetInstanceStorageConfigs() const
AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const
void SetActiveSoftwareUpdateConfig(ActiveSoftwareUpdateConfigT &&value)
void SetOnStartDeepHealthChecks(OnStartDeepHealthChecksT &&value)
const DeploymentConfiguration & GetActiveSoftwareUpdateConfig() const
const ScheduledUpdateConfig & GetScheduledUpdateConfig() const
ClusterInstanceGroupDetails & WithKubernetesConfig(KubernetesConfigT &&value)
const ClusterCapacityRequirements & GetCapacityRequirements() const
ClusterInstanceGroupDetails & WithDesiredImageId(DesiredImageIdT &&value)
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