AWS SDK for C++

AWS SDK for C++ Version 1.11.918

Loading...
Searching...
No Matches
CreateDeploymentGroupRequest.h
1
6#pragma once
7#include <aws/codedeploy/CodeDeployRequest.h>
8#include <aws/codedeploy/CodeDeploy_EXPORTS.h>
9#include <aws/codedeploy/model/AlarmConfiguration.h>
10#include <aws/codedeploy/model/AutoRollbackConfiguration.h>
11#include <aws/codedeploy/model/BlueGreenDeploymentConfiguration.h>
12#include <aws/codedeploy/model/DeploymentStyle.h>
13#include <aws/codedeploy/model/EC2DeploymentOptions.h>
14#include <aws/codedeploy/model/EC2TagFilter.h>
15#include <aws/codedeploy/model/EC2TagSet.h>
16#include <aws/codedeploy/model/ECSService.h>
17#include <aws/codedeploy/model/LoadBalancerInfo.h>
18#include <aws/codedeploy/model/OnPremisesTagSet.h>
19#include <aws/codedeploy/model/OutdatedInstancesStrategy.h>
20#include <aws/codedeploy/model/Tag.h>
21#include <aws/codedeploy/model/TagFilter.h>
22#include <aws/codedeploy/model/TriggerConfig.h>
23#include <aws/core/utils/memory/stl/AWSString.h>
24#include <aws/core/utils/memory/stl/AWSVector.h>
25
26#include <utility>
27
28namespace Aws {
29namespace CodeDeploy {
30namespace Model {
31
39 public:
40 AWS_CODEDEPLOY_API CreateDeploymentGroupRequest() = default;
41
42 // Service request name is the Operation name which will send this request out,
43 // each operation should has unique request name, so that we can get operation's name from this request.
44 // Note: this is not true for response, multiple operations may have the same response name,
45 // so we can not get operation's name from response.
46 inline virtual const char* GetServiceRequestName() const override { return "CreateDeploymentGroup"; }
47
48 AWS_CODEDEPLOY_API Aws::String SerializePayload() const override;
49
51
53
57 inline const Aws::String& GetApplicationName() const { return m_applicationName; }
58 inline bool ApplicationNameHasBeenSet() const { return m_applicationNameHasBeenSet; }
59 template <typename ApplicationNameT = Aws::String>
60 void SetApplicationName(ApplicationNameT&& value) {
61 m_applicationNameHasBeenSet = true;
62 m_applicationName = std::forward<ApplicationNameT>(value);
63 }
64 template <typename ApplicationNameT = Aws::String>
66 SetApplicationName(std::forward<ApplicationNameT>(value));
67 return *this;
68 }
70
72
75 inline const Aws::String& GetDeploymentGroupName() const { return m_deploymentGroupName; }
76 inline bool DeploymentGroupNameHasBeenSet() const { return m_deploymentGroupNameHasBeenSet; }
77 template <typename DeploymentGroupNameT = Aws::String>
78 void SetDeploymentGroupName(DeploymentGroupNameT&& value) {
79 m_deploymentGroupNameHasBeenSet = true;
80 m_deploymentGroupName = std::forward<DeploymentGroupNameT>(value);
81 }
82 template <typename DeploymentGroupNameT = Aws::String>
84 SetDeploymentGroupName(std::forward<DeploymentGroupNameT>(value));
85 return *this;
86 }
88
90
102 inline const Aws::String& GetDeploymentConfigName() const { return m_deploymentConfigName; }
103 inline bool DeploymentConfigNameHasBeenSet() const { return m_deploymentConfigNameHasBeenSet; }
104 template <typename DeploymentConfigNameT = Aws::String>
105 void SetDeploymentConfigName(DeploymentConfigNameT&& value) {
106 m_deploymentConfigNameHasBeenSet = true;
107 m_deploymentConfigName = std::forward<DeploymentConfigNameT>(value);
108 }
109 template <typename DeploymentConfigNameT = Aws::String>
111 SetDeploymentConfigName(std::forward<DeploymentConfigNameT>(value));
112 return *this;
113 }
115
117
122 inline const Aws::Vector<EC2TagFilter>& GetEc2TagFilters() const { return m_ec2TagFilters; }
123 inline bool Ec2TagFiltersHasBeenSet() const { return m_ec2TagFiltersHasBeenSet; }
124 template <typename Ec2TagFiltersT = Aws::Vector<EC2TagFilter>>
125 void SetEc2TagFilters(Ec2TagFiltersT&& value) {
126 m_ec2TagFiltersHasBeenSet = true;
127 m_ec2TagFilters = std::forward<Ec2TagFiltersT>(value);
128 }
129 template <typename Ec2TagFiltersT = Aws::Vector<EC2TagFilter>>
131 SetEc2TagFilters(std::forward<Ec2TagFiltersT>(value));
132 return *this;
133 }
134 template <typename Ec2TagFiltersT = EC2TagFilter>
136 m_ec2TagFiltersHasBeenSet = true;
137 m_ec2TagFilters.emplace_back(std::forward<Ec2TagFiltersT>(value));
138 return *this;
139 }
141
143
148 inline const Aws::Vector<TagFilter>& GetOnPremisesInstanceTagFilters() const { return m_onPremisesInstanceTagFilters; }
149 inline bool OnPremisesInstanceTagFiltersHasBeenSet() const { return m_onPremisesInstanceTagFiltersHasBeenSet; }
150 template <typename OnPremisesInstanceTagFiltersT = Aws::Vector<TagFilter>>
151 void SetOnPremisesInstanceTagFilters(OnPremisesInstanceTagFiltersT&& value) {
152 m_onPremisesInstanceTagFiltersHasBeenSet = true;
153 m_onPremisesInstanceTagFilters = std::forward<OnPremisesInstanceTagFiltersT>(value);
154 }
155 template <typename OnPremisesInstanceTagFiltersT = Aws::Vector<TagFilter>>
156 CreateDeploymentGroupRequest& WithOnPremisesInstanceTagFilters(OnPremisesInstanceTagFiltersT&& value) {
157 SetOnPremisesInstanceTagFilters(std::forward<OnPremisesInstanceTagFiltersT>(value));
158 return *this;
159 }
160 template <typename OnPremisesInstanceTagFiltersT = TagFilter>
161 CreateDeploymentGroupRequest& AddOnPremisesInstanceTagFilters(OnPremisesInstanceTagFiltersT&& value) {
162 m_onPremisesInstanceTagFiltersHasBeenSet = true;
163 m_onPremisesInstanceTagFilters.emplace_back(std::forward<OnPremisesInstanceTagFiltersT>(value));
164 return *this;
165 }
167
169
172 inline const Aws::Vector<Aws::String>& GetAutoScalingGroups() const { return m_autoScalingGroups; }
173 inline bool AutoScalingGroupsHasBeenSet() const { return m_autoScalingGroupsHasBeenSet; }
174 template <typename AutoScalingGroupsT = Aws::Vector<Aws::String>>
175 void SetAutoScalingGroups(AutoScalingGroupsT&& value) {
176 m_autoScalingGroupsHasBeenSet = true;
177 m_autoScalingGroups = std::forward<AutoScalingGroupsT>(value);
178 }
179 template <typename AutoScalingGroupsT = Aws::Vector<Aws::String>>
181 SetAutoScalingGroups(std::forward<AutoScalingGroupsT>(value));
182 return *this;
183 }
184 template <typename AutoScalingGroupsT = Aws::String>
186 m_autoScalingGroupsHasBeenSet = true;
187 m_autoScalingGroups.emplace_back(std::forward<AutoScalingGroupsT>(value));
188 return *this;
189 }
191
193
197 inline const Aws::String& GetServiceRoleArn() const { return m_serviceRoleArn; }
198 inline bool ServiceRoleArnHasBeenSet() const { return m_serviceRoleArnHasBeenSet; }
199 template <typename ServiceRoleArnT = Aws::String>
200 void SetServiceRoleArn(ServiceRoleArnT&& value) {
201 m_serviceRoleArnHasBeenSet = true;
202 m_serviceRoleArn = std::forward<ServiceRoleArnT>(value);
203 }
204 template <typename ServiceRoleArnT = Aws::String>
206 SetServiceRoleArn(std::forward<ServiceRoleArnT>(value));
207 return *this;
208 }
210
212
218 inline const Aws::Vector<TriggerConfig>& GetTriggerConfigurations() const { return m_triggerConfigurations; }
219 inline bool TriggerConfigurationsHasBeenSet() const { return m_triggerConfigurationsHasBeenSet; }
220 template <typename TriggerConfigurationsT = Aws::Vector<TriggerConfig>>
221 void SetTriggerConfigurations(TriggerConfigurationsT&& value) {
222 m_triggerConfigurationsHasBeenSet = true;
223 m_triggerConfigurations = std::forward<TriggerConfigurationsT>(value);
224 }
225 template <typename TriggerConfigurationsT = Aws::Vector<TriggerConfig>>
227 SetTriggerConfigurations(std::forward<TriggerConfigurationsT>(value));
228 return *this;
229 }
230 template <typename TriggerConfigurationsT = TriggerConfig>
232 m_triggerConfigurationsHasBeenSet = true;
233 m_triggerConfigurations.emplace_back(std::forward<TriggerConfigurationsT>(value));
234 return *this;
235 }
237
239
243 inline const AlarmConfiguration& GetAlarmConfiguration() const { return m_alarmConfiguration; }
244 inline bool AlarmConfigurationHasBeenSet() const { return m_alarmConfigurationHasBeenSet; }
245 template <typename AlarmConfigurationT = AlarmConfiguration>
246 void SetAlarmConfiguration(AlarmConfigurationT&& value) {
247 m_alarmConfigurationHasBeenSet = true;
248 m_alarmConfiguration = std::forward<AlarmConfigurationT>(value);
249 }
250 template <typename AlarmConfigurationT = AlarmConfiguration>
252 SetAlarmConfiguration(std::forward<AlarmConfigurationT>(value));
253 return *this;
254 }
256
258
262 inline const AutoRollbackConfiguration& GetAutoRollbackConfiguration() const { return m_autoRollbackConfiguration; }
263 inline bool AutoRollbackConfigurationHasBeenSet() const { return m_autoRollbackConfigurationHasBeenSet; }
264 template <typename AutoRollbackConfigurationT = AutoRollbackConfiguration>
265 void SetAutoRollbackConfiguration(AutoRollbackConfigurationT&& value) {
266 m_autoRollbackConfigurationHasBeenSet = true;
267 m_autoRollbackConfiguration = std::forward<AutoRollbackConfigurationT>(value);
268 }
269 template <typename AutoRollbackConfigurationT = AutoRollbackConfiguration>
270 CreateDeploymentGroupRequest& WithAutoRollbackConfiguration(AutoRollbackConfigurationT&& value) {
271 SetAutoRollbackConfiguration(std::forward<AutoRollbackConfigurationT>(value));
272 return *this;
273 }
275
277
287 inline OutdatedInstancesStrategy GetOutdatedInstancesStrategy() const { return m_outdatedInstancesStrategy; }
288 inline bool OutdatedInstancesStrategyHasBeenSet() const { return m_outdatedInstancesStrategyHasBeenSet; }
290 m_outdatedInstancesStrategyHasBeenSet = true;
291 m_outdatedInstancesStrategy = value;
292 }
295 return *this;
296 }
298
300
304 inline const DeploymentStyle& GetDeploymentStyle() const { return m_deploymentStyle; }
305 inline bool DeploymentStyleHasBeenSet() const { return m_deploymentStyleHasBeenSet; }
306 template <typename DeploymentStyleT = DeploymentStyle>
307 void SetDeploymentStyle(DeploymentStyleT&& value) {
308 m_deploymentStyleHasBeenSet = true;
309 m_deploymentStyle = std::forward<DeploymentStyleT>(value);
310 }
311 template <typename DeploymentStyleT = DeploymentStyle>
313 SetDeploymentStyle(std::forward<DeploymentStyleT>(value));
314 return *this;
315 }
317
319
322 inline const BlueGreenDeploymentConfiguration& GetBlueGreenDeploymentConfiguration() const { return m_blueGreenDeploymentConfiguration; }
323 inline bool BlueGreenDeploymentConfigurationHasBeenSet() const { return m_blueGreenDeploymentConfigurationHasBeenSet; }
324 template <typename BlueGreenDeploymentConfigurationT = BlueGreenDeploymentConfiguration>
325 void SetBlueGreenDeploymentConfiguration(BlueGreenDeploymentConfigurationT&& value) {
326 m_blueGreenDeploymentConfigurationHasBeenSet = true;
327 m_blueGreenDeploymentConfiguration = std::forward<BlueGreenDeploymentConfigurationT>(value);
328 }
329 template <typename BlueGreenDeploymentConfigurationT = BlueGreenDeploymentConfiguration>
330 CreateDeploymentGroupRequest& WithBlueGreenDeploymentConfiguration(BlueGreenDeploymentConfigurationT&& value) {
331 SetBlueGreenDeploymentConfiguration(std::forward<BlueGreenDeploymentConfigurationT>(value));
332 return *this;
333 }
335
337
340 inline const LoadBalancerInfo& GetLoadBalancerInfo() const { return m_loadBalancerInfo; }
341 inline bool LoadBalancerInfoHasBeenSet() const { return m_loadBalancerInfoHasBeenSet; }
342 template <typename LoadBalancerInfoT = LoadBalancerInfo>
343 void SetLoadBalancerInfo(LoadBalancerInfoT&& value) {
344 m_loadBalancerInfoHasBeenSet = true;
345 m_loadBalancerInfo = std::forward<LoadBalancerInfoT>(value);
346 }
347 template <typename LoadBalancerInfoT = LoadBalancerInfo>
349 SetLoadBalancerInfo(std::forward<LoadBalancerInfoT>(value));
350 return *this;
351 }
353
355
360 inline const EC2TagSet& GetEc2TagSet() const { return m_ec2TagSet; }
361 inline bool Ec2TagSetHasBeenSet() const { return m_ec2TagSetHasBeenSet; }
362 template <typename Ec2TagSetT = EC2TagSet>
363 void SetEc2TagSet(Ec2TagSetT&& value) {
364 m_ec2TagSetHasBeenSet = true;
365 m_ec2TagSet = std::forward<Ec2TagSetT>(value);
366 }
367 template <typename Ec2TagSetT = EC2TagSet>
369 SetEc2TagSet(std::forward<Ec2TagSetT>(value));
370 return *this;
371 }
373
375
381 inline const Aws::Vector<ECSService>& GetEcsServices() const { return m_ecsServices; }
382 inline bool EcsServicesHasBeenSet() const { return m_ecsServicesHasBeenSet; }
383 template <typename EcsServicesT = Aws::Vector<ECSService>>
384 void SetEcsServices(EcsServicesT&& value) {
385 m_ecsServicesHasBeenSet = true;
386 m_ecsServices = std::forward<EcsServicesT>(value);
387 }
388 template <typename EcsServicesT = Aws::Vector<ECSService>>
390 SetEcsServices(std::forward<EcsServicesT>(value));
391 return *this;
392 }
393 template <typename EcsServicesT = ECSService>
395 m_ecsServicesHasBeenSet = true;
396 m_ecsServices.emplace_back(std::forward<EcsServicesT>(value));
397 return *this;
398 }
400
402
408 inline const OnPremisesTagSet& GetOnPremisesTagSet() const { return m_onPremisesTagSet; }
409 inline bool OnPremisesTagSetHasBeenSet() const { return m_onPremisesTagSetHasBeenSet; }
410 template <typename OnPremisesTagSetT = OnPremisesTagSet>
411 void SetOnPremisesTagSet(OnPremisesTagSetT&& value) {
412 m_onPremisesTagSetHasBeenSet = true;
413 m_onPremisesTagSet = std::forward<OnPremisesTagSetT>(value);
414 }
415 template <typename OnPremisesTagSetT = OnPremisesTagSet>
417 SetOnPremisesTagSet(std::forward<OnPremisesTagSetT>(value));
418 return *this;
419 }
421
423
428 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
429 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
430 template <typename TagsT = Aws::Vector<Tag>>
431 void SetTags(TagsT&& value) {
432 m_tagsHasBeenSet = true;
433 m_tags = std::forward<TagsT>(value);
434 }
435 template <typename TagsT = Aws::Vector<Tag>>
437 SetTags(std::forward<TagsT>(value));
438 return *this;
439 }
440 template <typename TagsT = Tag>
442 m_tagsHasBeenSet = true;
443 m_tags.emplace_back(std::forward<TagsT>(value));
444 return *this;
445 }
447
449
450 inline const EC2DeploymentOptions& GetEc2DeploymentOptions() const { return m_ec2DeploymentOptions; }
451 inline bool Ec2DeploymentOptionsHasBeenSet() const { return m_ec2DeploymentOptionsHasBeenSet; }
452 template <typename Ec2DeploymentOptionsT = EC2DeploymentOptions>
453 void SetEc2DeploymentOptions(Ec2DeploymentOptionsT&& value) {
454 m_ec2DeploymentOptionsHasBeenSet = true;
455 m_ec2DeploymentOptions = std::forward<Ec2DeploymentOptionsT>(value);
456 }
457 template <typename Ec2DeploymentOptionsT = EC2DeploymentOptions>
459 SetEc2DeploymentOptions(std::forward<Ec2DeploymentOptionsT>(value));
460 return *this;
461 }
463
465
482 inline bool GetTerminationHookEnabled() const { return m_terminationHookEnabled; }
483 inline bool TerminationHookEnabledHasBeenSet() const { return m_terminationHookEnabledHasBeenSet; }
484 inline void SetTerminationHookEnabled(bool value) {
485 m_terminationHookEnabledHasBeenSet = true;
486 m_terminationHookEnabled = value;
487 }
490 return *this;
491 }
493 private:
494 Aws::String m_applicationName;
495
496 Aws::String m_deploymentGroupName;
497
498 Aws::String m_deploymentConfigName;
499
500 Aws::Vector<EC2TagFilter> m_ec2TagFilters;
501
502 Aws::Vector<TagFilter> m_onPremisesInstanceTagFilters;
503
504 Aws::Vector<Aws::String> m_autoScalingGroups;
505
506 Aws::String m_serviceRoleArn;
507
508 Aws::Vector<TriggerConfig> m_triggerConfigurations;
509
510 AlarmConfiguration m_alarmConfiguration;
511
512 AutoRollbackConfiguration m_autoRollbackConfiguration;
513
515
516 DeploymentStyle m_deploymentStyle;
517
518 BlueGreenDeploymentConfiguration m_blueGreenDeploymentConfiguration;
519
520 LoadBalancerInfo m_loadBalancerInfo;
521
522 EC2TagSet m_ec2TagSet;
523
524 Aws::Vector<ECSService> m_ecsServices;
525
526 OnPremisesTagSet m_onPremisesTagSet;
527
528 Aws::Vector<Tag> m_tags;
529
530 EC2DeploymentOptions m_ec2DeploymentOptions;
531
532 bool m_terminationHookEnabled{false};
533 bool m_applicationNameHasBeenSet = false;
534 bool m_deploymentGroupNameHasBeenSet = false;
535 bool m_deploymentConfigNameHasBeenSet = false;
536 bool m_ec2TagFiltersHasBeenSet = false;
537 bool m_onPremisesInstanceTagFiltersHasBeenSet = false;
538 bool m_autoScalingGroupsHasBeenSet = false;
539 bool m_serviceRoleArnHasBeenSet = false;
540 bool m_triggerConfigurationsHasBeenSet = false;
541 bool m_alarmConfigurationHasBeenSet = false;
542 bool m_autoRollbackConfigurationHasBeenSet = false;
543 bool m_outdatedInstancesStrategyHasBeenSet = false;
544 bool m_deploymentStyleHasBeenSet = false;
545 bool m_blueGreenDeploymentConfigurationHasBeenSet = false;
546 bool m_loadBalancerInfoHasBeenSet = false;
547 bool m_ec2TagSetHasBeenSet = false;
548 bool m_ecsServicesHasBeenSet = false;
549 bool m_onPremisesTagSetHasBeenSet = false;
550 bool m_tagsHasBeenSet = false;
551 bool m_ec2DeploymentOptionsHasBeenSet = false;
552 bool m_terminationHookEnabledHasBeenSet = false;
553};
554
555} // namespace Model
556} // namespace CodeDeploy
557} // namespace Aws
void SetAutoRollbackConfiguration(AutoRollbackConfigurationT &&value)
CreateDeploymentGroupRequest & WithTags(TagsT &&value)
const BlueGreenDeploymentConfiguration & GetBlueGreenDeploymentConfiguration() const
CreateDeploymentGroupRequest & WithDeploymentConfigName(DeploymentConfigNameT &&value)
CreateDeploymentGroupRequest & WithLoadBalancerInfo(LoadBalancerInfoT &&value)
const AutoRollbackConfiguration & GetAutoRollbackConfiguration() const
CreateDeploymentGroupRequest & WithOutdatedInstancesStrategy(OutdatedInstancesStrategy value)
CreateDeploymentGroupRequest & WithDeploymentGroupName(DeploymentGroupNameT &&value)
CreateDeploymentGroupRequest & WithEc2TagFilters(Ec2TagFiltersT &&value)
CreateDeploymentGroupRequest & WithEcsServices(EcsServicesT &&value)
AWS_CODEDEPLOY_API Aws::String SerializePayload() const override
CreateDeploymentGroupRequest & WithEc2DeploymentOptions(Ec2DeploymentOptionsT &&value)
CreateDeploymentGroupRequest & WithDeploymentStyle(DeploymentStyleT &&value)
const Aws::Vector< Aws::String > & GetAutoScalingGroups() const
CreateDeploymentGroupRequest & WithServiceRoleArn(ServiceRoleArnT &&value)
CreateDeploymentGroupRequest & WithOnPremisesTagSet(OnPremisesTagSetT &&value)
CreateDeploymentGroupRequest & AddAutoScalingGroups(AutoScalingGroupsT &&value)
CreateDeploymentGroupRequest & WithAutoRollbackConfiguration(AutoRollbackConfigurationT &&value)
AWS_CODEDEPLOY_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateDeploymentGroupRequest & AddEcsServices(EcsServicesT &&value)
void SetBlueGreenDeploymentConfiguration(BlueGreenDeploymentConfigurationT &&value)
CreateDeploymentGroupRequest & WithTriggerConfigurations(TriggerConfigurationsT &&value)
CreateDeploymentGroupRequest & WithEc2TagSet(Ec2TagSetT &&value)
CreateDeploymentGroupRequest & WithAlarmConfiguration(AlarmConfigurationT &&value)
const Aws::Vector< TriggerConfig > & GetTriggerConfigurations() const
CreateDeploymentGroupRequest & AddEc2TagFilters(Ec2TagFiltersT &&value)
CreateDeploymentGroupRequest & WithBlueGreenDeploymentConfiguration(BlueGreenDeploymentConfigurationT &&value)
const Aws::Vector< EC2TagFilter > & GetEc2TagFilters() const
CreateDeploymentGroupRequest & AddTags(TagsT &&value)
CreateDeploymentGroupRequest & WithTerminationHookEnabled(bool value)
AWS_CODEDEPLOY_API CreateDeploymentGroupRequest()=default
CreateDeploymentGroupRequest & WithApplicationName(ApplicationNameT &&value)
CreateDeploymentGroupRequest & WithOnPremisesInstanceTagFilters(OnPremisesInstanceTagFiltersT &&value)
CreateDeploymentGroupRequest & WithAutoScalingGroups(AutoScalingGroupsT &&value)
CreateDeploymentGroupRequest & AddOnPremisesInstanceTagFilters(OnPremisesInstanceTagFiltersT &&value)
void SetOnPremisesInstanceTagFilters(OnPremisesInstanceTagFiltersT &&value)
const Aws::Vector< TagFilter > & GetOnPremisesInstanceTagFilters() const
CreateDeploymentGroupRequest & AddTriggerConfigurations(TriggerConfigurationsT &&value)
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector