AWS SDK for C++

AWS SDK for C++ Version 1.11.719

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/EC2TagFilter.h>
14#include <aws/codedeploy/model/EC2TagSet.h>
15#include <aws/codedeploy/model/ECSService.h>
16#include <aws/codedeploy/model/LoadBalancerInfo.h>
17#include <aws/codedeploy/model/OnPremisesTagSet.h>
18#include <aws/codedeploy/model/OutdatedInstancesStrategy.h>
19#include <aws/codedeploy/model/Tag.h>
20#include <aws/codedeploy/model/TagFilter.h>
21#include <aws/codedeploy/model/TriggerConfig.h>
22#include <aws/core/utils/memory/stl/AWSString.h>
23#include <aws/core/utils/memory/stl/AWSVector.h>
24
25#include <utility>
26
27namespace Aws {
28namespace CodeDeploy {
29namespace Model {
30
38 public:
39 AWS_CODEDEPLOY_API CreateDeploymentGroupRequest() = default;
40
41 // Service request name is the Operation name which will send this request out,
42 // each operation should has unique request name, so that we can get operation's name from this request.
43 // Note: this is not true for response, multiple operations may have the same response name,
44 // so we can not get operation's name from response.
45 inline virtual const char* GetServiceRequestName() const override { return "CreateDeploymentGroup"; }
46
47 AWS_CODEDEPLOY_API Aws::String SerializePayload() const override;
48
50
52
56 inline const Aws::String& GetApplicationName() const { return m_applicationName; }
57 inline bool ApplicationNameHasBeenSet() const { return m_applicationNameHasBeenSet; }
58 template <typename ApplicationNameT = Aws::String>
59 void SetApplicationName(ApplicationNameT&& value) {
60 m_applicationNameHasBeenSet = true;
61 m_applicationName = std::forward<ApplicationNameT>(value);
62 }
63 template <typename ApplicationNameT = Aws::String>
65 SetApplicationName(std::forward<ApplicationNameT>(value));
66 return *this;
67 }
69
71
74 inline const Aws::String& GetDeploymentGroupName() const { return m_deploymentGroupName; }
75 inline bool DeploymentGroupNameHasBeenSet() const { return m_deploymentGroupNameHasBeenSet; }
76 template <typename DeploymentGroupNameT = Aws::String>
77 void SetDeploymentGroupName(DeploymentGroupNameT&& value) {
78 m_deploymentGroupNameHasBeenSet = true;
79 m_deploymentGroupName = std::forward<DeploymentGroupNameT>(value);
80 }
81 template <typename DeploymentGroupNameT = Aws::String>
83 SetDeploymentGroupName(std::forward<DeploymentGroupNameT>(value));
84 return *this;
85 }
87
89
101 inline const Aws::String& GetDeploymentConfigName() const { return m_deploymentConfigName; }
102 inline bool DeploymentConfigNameHasBeenSet() const { return m_deploymentConfigNameHasBeenSet; }
103 template <typename DeploymentConfigNameT = Aws::String>
104 void SetDeploymentConfigName(DeploymentConfigNameT&& value) {
105 m_deploymentConfigNameHasBeenSet = true;
106 m_deploymentConfigName = std::forward<DeploymentConfigNameT>(value);
107 }
108 template <typename DeploymentConfigNameT = Aws::String>
110 SetDeploymentConfigName(std::forward<DeploymentConfigNameT>(value));
111 return *this;
112 }
114
116
121 inline const Aws::Vector<EC2TagFilter>& GetEc2TagFilters() const { return m_ec2TagFilters; }
122 inline bool Ec2TagFiltersHasBeenSet() const { return m_ec2TagFiltersHasBeenSet; }
123 template <typename Ec2TagFiltersT = Aws::Vector<EC2TagFilter>>
124 void SetEc2TagFilters(Ec2TagFiltersT&& value) {
125 m_ec2TagFiltersHasBeenSet = true;
126 m_ec2TagFilters = std::forward<Ec2TagFiltersT>(value);
127 }
128 template <typename Ec2TagFiltersT = Aws::Vector<EC2TagFilter>>
130 SetEc2TagFilters(std::forward<Ec2TagFiltersT>(value));
131 return *this;
132 }
133 template <typename Ec2TagFiltersT = EC2TagFilter>
135 m_ec2TagFiltersHasBeenSet = true;
136 m_ec2TagFilters.emplace_back(std::forward<Ec2TagFiltersT>(value));
137 return *this;
138 }
140
142
147 inline const Aws::Vector<TagFilter>& GetOnPremisesInstanceTagFilters() const { return m_onPremisesInstanceTagFilters; }
148 inline bool OnPremisesInstanceTagFiltersHasBeenSet() const { return m_onPremisesInstanceTagFiltersHasBeenSet; }
149 template <typename OnPremisesInstanceTagFiltersT = Aws::Vector<TagFilter>>
150 void SetOnPremisesInstanceTagFilters(OnPremisesInstanceTagFiltersT&& value) {
151 m_onPremisesInstanceTagFiltersHasBeenSet = true;
152 m_onPremisesInstanceTagFilters = std::forward<OnPremisesInstanceTagFiltersT>(value);
153 }
154 template <typename OnPremisesInstanceTagFiltersT = Aws::Vector<TagFilter>>
155 CreateDeploymentGroupRequest& WithOnPremisesInstanceTagFilters(OnPremisesInstanceTagFiltersT&& value) {
156 SetOnPremisesInstanceTagFilters(std::forward<OnPremisesInstanceTagFiltersT>(value));
157 return *this;
158 }
159 template <typename OnPremisesInstanceTagFiltersT = TagFilter>
160 CreateDeploymentGroupRequest& AddOnPremisesInstanceTagFilters(OnPremisesInstanceTagFiltersT&& value) {
161 m_onPremisesInstanceTagFiltersHasBeenSet = true;
162 m_onPremisesInstanceTagFilters.emplace_back(std::forward<OnPremisesInstanceTagFiltersT>(value));
163 return *this;
164 }
166
168
171 inline const Aws::Vector<Aws::String>& GetAutoScalingGroups() const { return m_autoScalingGroups; }
172 inline bool AutoScalingGroupsHasBeenSet() const { return m_autoScalingGroupsHasBeenSet; }
173 template <typename AutoScalingGroupsT = Aws::Vector<Aws::String>>
174 void SetAutoScalingGroups(AutoScalingGroupsT&& value) {
175 m_autoScalingGroupsHasBeenSet = true;
176 m_autoScalingGroups = std::forward<AutoScalingGroupsT>(value);
177 }
178 template <typename AutoScalingGroupsT = Aws::Vector<Aws::String>>
180 SetAutoScalingGroups(std::forward<AutoScalingGroupsT>(value));
181 return *this;
182 }
183 template <typename AutoScalingGroupsT = Aws::String>
185 m_autoScalingGroupsHasBeenSet = true;
186 m_autoScalingGroups.emplace_back(std::forward<AutoScalingGroupsT>(value));
187 return *this;
188 }
190
192
196 inline const Aws::String& GetServiceRoleArn() const { return m_serviceRoleArn; }
197 inline bool ServiceRoleArnHasBeenSet() const { return m_serviceRoleArnHasBeenSet; }
198 template <typename ServiceRoleArnT = Aws::String>
199 void SetServiceRoleArn(ServiceRoleArnT&& value) {
200 m_serviceRoleArnHasBeenSet = true;
201 m_serviceRoleArn = std::forward<ServiceRoleArnT>(value);
202 }
203 template <typename ServiceRoleArnT = Aws::String>
205 SetServiceRoleArn(std::forward<ServiceRoleArnT>(value));
206 return *this;
207 }
209
211
217 inline const Aws::Vector<TriggerConfig>& GetTriggerConfigurations() const { return m_triggerConfigurations; }
218 inline bool TriggerConfigurationsHasBeenSet() const { return m_triggerConfigurationsHasBeenSet; }
219 template <typename TriggerConfigurationsT = Aws::Vector<TriggerConfig>>
220 void SetTriggerConfigurations(TriggerConfigurationsT&& value) {
221 m_triggerConfigurationsHasBeenSet = true;
222 m_triggerConfigurations = std::forward<TriggerConfigurationsT>(value);
223 }
224 template <typename TriggerConfigurationsT = Aws::Vector<TriggerConfig>>
226 SetTriggerConfigurations(std::forward<TriggerConfigurationsT>(value));
227 return *this;
228 }
229 template <typename TriggerConfigurationsT = TriggerConfig>
231 m_triggerConfigurationsHasBeenSet = true;
232 m_triggerConfigurations.emplace_back(std::forward<TriggerConfigurationsT>(value));
233 return *this;
234 }
236
238
242 inline const AlarmConfiguration& GetAlarmConfiguration() const { return m_alarmConfiguration; }
243 inline bool AlarmConfigurationHasBeenSet() const { return m_alarmConfigurationHasBeenSet; }
244 template <typename AlarmConfigurationT = AlarmConfiguration>
245 void SetAlarmConfiguration(AlarmConfigurationT&& value) {
246 m_alarmConfigurationHasBeenSet = true;
247 m_alarmConfiguration = std::forward<AlarmConfigurationT>(value);
248 }
249 template <typename AlarmConfigurationT = AlarmConfiguration>
251 SetAlarmConfiguration(std::forward<AlarmConfigurationT>(value));
252 return *this;
253 }
255
257
261 inline const AutoRollbackConfiguration& GetAutoRollbackConfiguration() const { return m_autoRollbackConfiguration; }
262 inline bool AutoRollbackConfigurationHasBeenSet() const { return m_autoRollbackConfigurationHasBeenSet; }
263 template <typename AutoRollbackConfigurationT = AutoRollbackConfiguration>
264 void SetAutoRollbackConfiguration(AutoRollbackConfigurationT&& value) {
265 m_autoRollbackConfigurationHasBeenSet = true;
266 m_autoRollbackConfiguration = std::forward<AutoRollbackConfigurationT>(value);
267 }
268 template <typename AutoRollbackConfigurationT = AutoRollbackConfiguration>
269 CreateDeploymentGroupRequest& WithAutoRollbackConfiguration(AutoRollbackConfigurationT&& value) {
270 SetAutoRollbackConfiguration(std::forward<AutoRollbackConfigurationT>(value));
271 return *this;
272 }
274
276
286 inline OutdatedInstancesStrategy GetOutdatedInstancesStrategy() const { return m_outdatedInstancesStrategy; }
287 inline bool OutdatedInstancesStrategyHasBeenSet() const { return m_outdatedInstancesStrategyHasBeenSet; }
289 m_outdatedInstancesStrategyHasBeenSet = true;
290 m_outdatedInstancesStrategy = value;
291 }
294 return *this;
295 }
297
299
303 inline const DeploymentStyle& GetDeploymentStyle() const { return m_deploymentStyle; }
304 inline bool DeploymentStyleHasBeenSet() const { return m_deploymentStyleHasBeenSet; }
305 template <typename DeploymentStyleT = DeploymentStyle>
306 void SetDeploymentStyle(DeploymentStyleT&& value) {
307 m_deploymentStyleHasBeenSet = true;
308 m_deploymentStyle = std::forward<DeploymentStyleT>(value);
309 }
310 template <typename DeploymentStyleT = DeploymentStyle>
312 SetDeploymentStyle(std::forward<DeploymentStyleT>(value));
313 return *this;
314 }
316
318
321 inline const BlueGreenDeploymentConfiguration& GetBlueGreenDeploymentConfiguration() const { return m_blueGreenDeploymentConfiguration; }
322 inline bool BlueGreenDeploymentConfigurationHasBeenSet() const { return m_blueGreenDeploymentConfigurationHasBeenSet; }
323 template <typename BlueGreenDeploymentConfigurationT = BlueGreenDeploymentConfiguration>
324 void SetBlueGreenDeploymentConfiguration(BlueGreenDeploymentConfigurationT&& value) {
325 m_blueGreenDeploymentConfigurationHasBeenSet = true;
326 m_blueGreenDeploymentConfiguration = std::forward<BlueGreenDeploymentConfigurationT>(value);
327 }
328 template <typename BlueGreenDeploymentConfigurationT = BlueGreenDeploymentConfiguration>
329 CreateDeploymentGroupRequest& WithBlueGreenDeploymentConfiguration(BlueGreenDeploymentConfigurationT&& value) {
330 SetBlueGreenDeploymentConfiguration(std::forward<BlueGreenDeploymentConfigurationT>(value));
331 return *this;
332 }
334
336
339 inline const LoadBalancerInfo& GetLoadBalancerInfo() const { return m_loadBalancerInfo; }
340 inline bool LoadBalancerInfoHasBeenSet() const { return m_loadBalancerInfoHasBeenSet; }
341 template <typename LoadBalancerInfoT = LoadBalancerInfo>
342 void SetLoadBalancerInfo(LoadBalancerInfoT&& value) {
343 m_loadBalancerInfoHasBeenSet = true;
344 m_loadBalancerInfo = std::forward<LoadBalancerInfoT>(value);
345 }
346 template <typename LoadBalancerInfoT = LoadBalancerInfo>
348 SetLoadBalancerInfo(std::forward<LoadBalancerInfoT>(value));
349 return *this;
350 }
352
354
359 inline const EC2TagSet& GetEc2TagSet() const { return m_ec2TagSet; }
360 inline bool Ec2TagSetHasBeenSet() const { return m_ec2TagSetHasBeenSet; }
361 template <typename Ec2TagSetT = EC2TagSet>
362 void SetEc2TagSet(Ec2TagSetT&& value) {
363 m_ec2TagSetHasBeenSet = true;
364 m_ec2TagSet = std::forward<Ec2TagSetT>(value);
365 }
366 template <typename Ec2TagSetT = EC2TagSet>
368 SetEc2TagSet(std::forward<Ec2TagSetT>(value));
369 return *this;
370 }
372
374
380 inline const Aws::Vector<ECSService>& GetEcsServices() const { return m_ecsServices; }
381 inline bool EcsServicesHasBeenSet() const { return m_ecsServicesHasBeenSet; }
382 template <typename EcsServicesT = Aws::Vector<ECSService>>
383 void SetEcsServices(EcsServicesT&& value) {
384 m_ecsServicesHasBeenSet = true;
385 m_ecsServices = std::forward<EcsServicesT>(value);
386 }
387 template <typename EcsServicesT = Aws::Vector<ECSService>>
389 SetEcsServices(std::forward<EcsServicesT>(value));
390 return *this;
391 }
392 template <typename EcsServicesT = ECSService>
394 m_ecsServicesHasBeenSet = true;
395 m_ecsServices.emplace_back(std::forward<EcsServicesT>(value));
396 return *this;
397 }
399
401
407 inline const OnPremisesTagSet& GetOnPremisesTagSet() const { return m_onPremisesTagSet; }
408 inline bool OnPremisesTagSetHasBeenSet() const { return m_onPremisesTagSetHasBeenSet; }
409 template <typename OnPremisesTagSetT = OnPremisesTagSet>
410 void SetOnPremisesTagSet(OnPremisesTagSetT&& value) {
411 m_onPremisesTagSetHasBeenSet = true;
412 m_onPremisesTagSet = std::forward<OnPremisesTagSetT>(value);
413 }
414 template <typename OnPremisesTagSetT = OnPremisesTagSet>
416 SetOnPremisesTagSet(std::forward<OnPremisesTagSetT>(value));
417 return *this;
418 }
420
422
427 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
428 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
429 template <typename TagsT = Aws::Vector<Tag>>
430 void SetTags(TagsT&& value) {
431 m_tagsHasBeenSet = true;
432 m_tags = std::forward<TagsT>(value);
433 }
434 template <typename TagsT = Aws::Vector<Tag>>
436 SetTags(std::forward<TagsT>(value));
437 return *this;
438 }
439 template <typename TagsT = Tag>
441 m_tagsHasBeenSet = true;
442 m_tags.emplace_back(std::forward<TagsT>(value));
443 return *this;
444 }
446
448
465 inline bool GetTerminationHookEnabled() const { return m_terminationHookEnabled; }
466 inline bool TerminationHookEnabledHasBeenSet() const { return m_terminationHookEnabledHasBeenSet; }
467 inline void SetTerminationHookEnabled(bool value) {
468 m_terminationHookEnabledHasBeenSet = true;
469 m_terminationHookEnabled = value;
470 }
473 return *this;
474 }
476 private:
477 Aws::String m_applicationName;
478
479 Aws::String m_deploymentGroupName;
480
481 Aws::String m_deploymentConfigName;
482
483 Aws::Vector<EC2TagFilter> m_ec2TagFilters;
484
485 Aws::Vector<TagFilter> m_onPremisesInstanceTagFilters;
486
487 Aws::Vector<Aws::String> m_autoScalingGroups;
488
489 Aws::String m_serviceRoleArn;
490
491 Aws::Vector<TriggerConfig> m_triggerConfigurations;
492
493 AlarmConfiguration m_alarmConfiguration;
494
495 AutoRollbackConfiguration m_autoRollbackConfiguration;
496
498
499 DeploymentStyle m_deploymentStyle;
500
501 BlueGreenDeploymentConfiguration m_blueGreenDeploymentConfiguration;
502
503 LoadBalancerInfo m_loadBalancerInfo;
504
505 EC2TagSet m_ec2TagSet;
506
507 Aws::Vector<ECSService> m_ecsServices;
508
509 OnPremisesTagSet m_onPremisesTagSet;
510
511 Aws::Vector<Tag> m_tags;
512
513 bool m_terminationHookEnabled{false};
514 bool m_applicationNameHasBeenSet = false;
515 bool m_deploymentGroupNameHasBeenSet = false;
516 bool m_deploymentConfigNameHasBeenSet = false;
517 bool m_ec2TagFiltersHasBeenSet = false;
518 bool m_onPremisesInstanceTagFiltersHasBeenSet = false;
519 bool m_autoScalingGroupsHasBeenSet = false;
520 bool m_serviceRoleArnHasBeenSet = false;
521 bool m_triggerConfigurationsHasBeenSet = false;
522 bool m_alarmConfigurationHasBeenSet = false;
523 bool m_autoRollbackConfigurationHasBeenSet = false;
524 bool m_outdatedInstancesStrategyHasBeenSet = false;
525 bool m_deploymentStyleHasBeenSet = false;
526 bool m_blueGreenDeploymentConfigurationHasBeenSet = false;
527 bool m_loadBalancerInfoHasBeenSet = false;
528 bool m_ec2TagSetHasBeenSet = false;
529 bool m_ecsServicesHasBeenSet = false;
530 bool m_onPremisesTagSetHasBeenSet = false;
531 bool m_tagsHasBeenSet = false;
532 bool m_terminationHookEnabledHasBeenSet = false;
533};
534
535} // namespace Model
536} // namespace CodeDeploy
537} // 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 & 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