AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateDeploymentGroupRequest.h
1
6#pragma once
7#include <aws/codedeploy/CodeDeploy_EXPORTS.h>
8#include <aws/codedeploy/CodeDeployRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/codedeploy/model/AlarmConfiguration.h>
12#include <aws/codedeploy/model/AutoRollbackConfiguration.h>
13#include <aws/codedeploy/model/OutdatedInstancesStrategy.h>
14#include <aws/codedeploy/model/DeploymentStyle.h>
15#include <aws/codedeploy/model/BlueGreenDeploymentConfiguration.h>
16#include <aws/codedeploy/model/LoadBalancerInfo.h>
17#include <aws/codedeploy/model/EC2TagSet.h>
18#include <aws/codedeploy/model/OnPremisesTagSet.h>
19#include <aws/codedeploy/model/EC2TagFilter.h>
20#include <aws/codedeploy/model/TagFilter.h>
21#include <aws/codedeploy/model/TriggerConfig.h>
22#include <aws/codedeploy/model/ECSService.h>
23#include <aws/codedeploy/model/Tag.h>
24#include <utility>
25
26namespace Aws
27{
28namespace CodeDeploy
29{
30namespace Model
31{
32
40 {
41 public:
42 AWS_CODEDEPLOY_API CreateDeploymentGroupRequest() = default;
43
44 // Service request name is the Operation name which will send this request out,
45 // each operation should has unique request name, so that we can get operation's name from this request.
46 // Note: this is not true for response, multiple operations may have the same response name,
47 // so we can not get operation's name from response.
48 inline virtual const char* GetServiceRequestName() const override { return "CreateDeploymentGroup"; }
49
50 AWS_CODEDEPLOY_API Aws::String SerializePayload() const override;
51
53
54
56
60 inline const Aws::String& GetApplicationName() const { return m_applicationName; }
61 inline bool ApplicationNameHasBeenSet() const { return m_applicationNameHasBeenSet; }
62 template<typename ApplicationNameT = Aws::String>
63 void SetApplicationName(ApplicationNameT&& value) { m_applicationNameHasBeenSet = true; m_applicationName = std::forward<ApplicationNameT>(value); }
64 template<typename ApplicationNameT = Aws::String>
65 CreateDeploymentGroupRequest& WithApplicationName(ApplicationNameT&& value) { SetApplicationName(std::forward<ApplicationNameT>(value)); return *this;}
67
69
72 inline const Aws::String& GetDeploymentGroupName() const { return m_deploymentGroupName; }
73 inline bool DeploymentGroupNameHasBeenSet() const { return m_deploymentGroupNameHasBeenSet; }
74 template<typename DeploymentGroupNameT = Aws::String>
75 void SetDeploymentGroupName(DeploymentGroupNameT&& value) { m_deploymentGroupNameHasBeenSet = true; m_deploymentGroupName = std::forward<DeploymentGroupNameT>(value); }
76 template<typename DeploymentGroupNameT = Aws::String>
77 CreateDeploymentGroupRequest& WithDeploymentGroupName(DeploymentGroupNameT&& value) { SetDeploymentGroupName(std::forward<DeploymentGroupNameT>(value)); return *this;}
79
81
93 inline const Aws::String& GetDeploymentConfigName() const { return m_deploymentConfigName; }
94 inline bool DeploymentConfigNameHasBeenSet() const { return m_deploymentConfigNameHasBeenSet; }
95 template<typename DeploymentConfigNameT = Aws::String>
96 void SetDeploymentConfigName(DeploymentConfigNameT&& value) { m_deploymentConfigNameHasBeenSet = true; m_deploymentConfigName = std::forward<DeploymentConfigNameT>(value); }
97 template<typename DeploymentConfigNameT = Aws::String>
98 CreateDeploymentGroupRequest& WithDeploymentConfigName(DeploymentConfigNameT&& value) { SetDeploymentConfigName(std::forward<DeploymentConfigNameT>(value)); return *this;}
100
102
107 inline const Aws::Vector<EC2TagFilter>& GetEc2TagFilters() const { return m_ec2TagFilters; }
108 inline bool Ec2TagFiltersHasBeenSet() const { return m_ec2TagFiltersHasBeenSet; }
109 template<typename Ec2TagFiltersT = Aws::Vector<EC2TagFilter>>
110 void SetEc2TagFilters(Ec2TagFiltersT&& value) { m_ec2TagFiltersHasBeenSet = true; m_ec2TagFilters = std::forward<Ec2TagFiltersT>(value); }
111 template<typename Ec2TagFiltersT = Aws::Vector<EC2TagFilter>>
112 CreateDeploymentGroupRequest& WithEc2TagFilters(Ec2TagFiltersT&& value) { SetEc2TagFilters(std::forward<Ec2TagFiltersT>(value)); return *this;}
113 template<typename Ec2TagFiltersT = EC2TagFilter>
114 CreateDeploymentGroupRequest& AddEc2TagFilters(Ec2TagFiltersT&& value) { m_ec2TagFiltersHasBeenSet = true; m_ec2TagFilters.emplace_back(std::forward<Ec2TagFiltersT>(value)); return *this; }
116
118
123 inline const Aws::Vector<TagFilter>& GetOnPremisesInstanceTagFilters() const { return m_onPremisesInstanceTagFilters; }
124 inline bool OnPremisesInstanceTagFiltersHasBeenSet() const { return m_onPremisesInstanceTagFiltersHasBeenSet; }
125 template<typename OnPremisesInstanceTagFiltersT = Aws::Vector<TagFilter>>
126 void SetOnPremisesInstanceTagFilters(OnPremisesInstanceTagFiltersT&& value) { m_onPremisesInstanceTagFiltersHasBeenSet = true; m_onPremisesInstanceTagFilters = std::forward<OnPremisesInstanceTagFiltersT>(value); }
127 template<typename OnPremisesInstanceTagFiltersT = Aws::Vector<TagFilter>>
128 CreateDeploymentGroupRequest& WithOnPremisesInstanceTagFilters(OnPremisesInstanceTagFiltersT&& value) { SetOnPremisesInstanceTagFilters(std::forward<OnPremisesInstanceTagFiltersT>(value)); return *this;}
129 template<typename OnPremisesInstanceTagFiltersT = TagFilter>
130 CreateDeploymentGroupRequest& AddOnPremisesInstanceTagFilters(OnPremisesInstanceTagFiltersT&& value) { m_onPremisesInstanceTagFiltersHasBeenSet = true; m_onPremisesInstanceTagFilters.emplace_back(std::forward<OnPremisesInstanceTagFiltersT>(value)); return *this; }
132
134
137 inline const Aws::Vector<Aws::String>& GetAutoScalingGroups() const { return m_autoScalingGroups; }
138 inline bool AutoScalingGroupsHasBeenSet() const { return m_autoScalingGroupsHasBeenSet; }
139 template<typename AutoScalingGroupsT = Aws::Vector<Aws::String>>
140 void SetAutoScalingGroups(AutoScalingGroupsT&& value) { m_autoScalingGroupsHasBeenSet = true; m_autoScalingGroups = std::forward<AutoScalingGroupsT>(value); }
141 template<typename AutoScalingGroupsT = Aws::Vector<Aws::String>>
142 CreateDeploymentGroupRequest& WithAutoScalingGroups(AutoScalingGroupsT&& value) { SetAutoScalingGroups(std::forward<AutoScalingGroupsT>(value)); return *this;}
143 template<typename AutoScalingGroupsT = Aws::String>
144 CreateDeploymentGroupRequest& AddAutoScalingGroups(AutoScalingGroupsT&& value) { m_autoScalingGroupsHasBeenSet = true; m_autoScalingGroups.emplace_back(std::forward<AutoScalingGroupsT>(value)); return *this; }
146
148
152 inline const Aws::String& GetServiceRoleArn() const { return m_serviceRoleArn; }
153 inline bool ServiceRoleArnHasBeenSet() const { return m_serviceRoleArnHasBeenSet; }
154 template<typename ServiceRoleArnT = Aws::String>
155 void SetServiceRoleArn(ServiceRoleArnT&& value) { m_serviceRoleArnHasBeenSet = true; m_serviceRoleArn = std::forward<ServiceRoleArnT>(value); }
156 template<typename ServiceRoleArnT = Aws::String>
157 CreateDeploymentGroupRequest& WithServiceRoleArn(ServiceRoleArnT&& value) { SetServiceRoleArn(std::forward<ServiceRoleArnT>(value)); return *this;}
159
161
167 inline const Aws::Vector<TriggerConfig>& GetTriggerConfigurations() const { return m_triggerConfigurations; }
168 inline bool TriggerConfigurationsHasBeenSet() const { return m_triggerConfigurationsHasBeenSet; }
169 template<typename TriggerConfigurationsT = Aws::Vector<TriggerConfig>>
170 void SetTriggerConfigurations(TriggerConfigurationsT&& value) { m_triggerConfigurationsHasBeenSet = true; m_triggerConfigurations = std::forward<TriggerConfigurationsT>(value); }
171 template<typename TriggerConfigurationsT = Aws::Vector<TriggerConfig>>
172 CreateDeploymentGroupRequest& WithTriggerConfigurations(TriggerConfigurationsT&& value) { SetTriggerConfigurations(std::forward<TriggerConfigurationsT>(value)); return *this;}
173 template<typename TriggerConfigurationsT = TriggerConfig>
174 CreateDeploymentGroupRequest& AddTriggerConfigurations(TriggerConfigurationsT&& value) { m_triggerConfigurationsHasBeenSet = true; m_triggerConfigurations.emplace_back(std::forward<TriggerConfigurationsT>(value)); return *this; }
176
178
182 inline const AlarmConfiguration& GetAlarmConfiguration() const { return m_alarmConfiguration; }
183 inline bool AlarmConfigurationHasBeenSet() const { return m_alarmConfigurationHasBeenSet; }
184 template<typename AlarmConfigurationT = AlarmConfiguration>
185 void SetAlarmConfiguration(AlarmConfigurationT&& value) { m_alarmConfigurationHasBeenSet = true; m_alarmConfiguration = std::forward<AlarmConfigurationT>(value); }
186 template<typename AlarmConfigurationT = AlarmConfiguration>
187 CreateDeploymentGroupRequest& WithAlarmConfiguration(AlarmConfigurationT&& value) { SetAlarmConfiguration(std::forward<AlarmConfigurationT>(value)); return *this;}
189
191
195 inline const AutoRollbackConfiguration& GetAutoRollbackConfiguration() const { return m_autoRollbackConfiguration; }
196 inline bool AutoRollbackConfigurationHasBeenSet() const { return m_autoRollbackConfigurationHasBeenSet; }
197 template<typename AutoRollbackConfigurationT = AutoRollbackConfiguration>
198 void SetAutoRollbackConfiguration(AutoRollbackConfigurationT&& value) { m_autoRollbackConfigurationHasBeenSet = true; m_autoRollbackConfiguration = std::forward<AutoRollbackConfigurationT>(value); }
199 template<typename AutoRollbackConfigurationT = AutoRollbackConfiguration>
200 CreateDeploymentGroupRequest& WithAutoRollbackConfiguration(AutoRollbackConfigurationT&& value) { SetAutoRollbackConfiguration(std::forward<AutoRollbackConfigurationT>(value)); return *this;}
202
204
214 inline OutdatedInstancesStrategy GetOutdatedInstancesStrategy() const { return m_outdatedInstancesStrategy; }
215 inline bool OutdatedInstancesStrategyHasBeenSet() const { return m_outdatedInstancesStrategyHasBeenSet; }
216 inline void SetOutdatedInstancesStrategy(OutdatedInstancesStrategy value) { m_outdatedInstancesStrategyHasBeenSet = true; m_outdatedInstancesStrategy = value; }
219
221
225 inline const DeploymentStyle& GetDeploymentStyle() const { return m_deploymentStyle; }
226 inline bool DeploymentStyleHasBeenSet() const { return m_deploymentStyleHasBeenSet; }
227 template<typename DeploymentStyleT = DeploymentStyle>
228 void SetDeploymentStyle(DeploymentStyleT&& value) { m_deploymentStyleHasBeenSet = true; m_deploymentStyle = std::forward<DeploymentStyleT>(value); }
229 template<typename DeploymentStyleT = DeploymentStyle>
230 CreateDeploymentGroupRequest& WithDeploymentStyle(DeploymentStyleT&& value) { SetDeploymentStyle(std::forward<DeploymentStyleT>(value)); return *this;}
232
234
237 inline const BlueGreenDeploymentConfiguration& GetBlueGreenDeploymentConfiguration() const { return m_blueGreenDeploymentConfiguration; }
238 inline bool BlueGreenDeploymentConfigurationHasBeenSet() const { return m_blueGreenDeploymentConfigurationHasBeenSet; }
239 template<typename BlueGreenDeploymentConfigurationT = BlueGreenDeploymentConfiguration>
240 void SetBlueGreenDeploymentConfiguration(BlueGreenDeploymentConfigurationT&& value) { m_blueGreenDeploymentConfigurationHasBeenSet = true; m_blueGreenDeploymentConfiguration = std::forward<BlueGreenDeploymentConfigurationT>(value); }
241 template<typename BlueGreenDeploymentConfigurationT = BlueGreenDeploymentConfiguration>
242 CreateDeploymentGroupRequest& WithBlueGreenDeploymentConfiguration(BlueGreenDeploymentConfigurationT&& value) { SetBlueGreenDeploymentConfiguration(std::forward<BlueGreenDeploymentConfigurationT>(value)); return *this;}
244
246
249 inline const LoadBalancerInfo& GetLoadBalancerInfo() const { return m_loadBalancerInfo; }
250 inline bool LoadBalancerInfoHasBeenSet() const { return m_loadBalancerInfoHasBeenSet; }
251 template<typename LoadBalancerInfoT = LoadBalancerInfo>
252 void SetLoadBalancerInfo(LoadBalancerInfoT&& value) { m_loadBalancerInfoHasBeenSet = true; m_loadBalancerInfo = std::forward<LoadBalancerInfoT>(value); }
253 template<typename LoadBalancerInfoT = LoadBalancerInfo>
254 CreateDeploymentGroupRequest& WithLoadBalancerInfo(LoadBalancerInfoT&& value) { SetLoadBalancerInfo(std::forward<LoadBalancerInfoT>(value)); return *this;}
256
258
263 inline const EC2TagSet& GetEc2TagSet() const { return m_ec2TagSet; }
264 inline bool Ec2TagSetHasBeenSet() const { return m_ec2TagSetHasBeenSet; }
265 template<typename Ec2TagSetT = EC2TagSet>
266 void SetEc2TagSet(Ec2TagSetT&& value) { m_ec2TagSetHasBeenSet = true; m_ec2TagSet = std::forward<Ec2TagSetT>(value); }
267 template<typename Ec2TagSetT = EC2TagSet>
268 CreateDeploymentGroupRequest& WithEc2TagSet(Ec2TagSetT&& value) { SetEc2TagSet(std::forward<Ec2TagSetT>(value)); return *this;}
270
272
278 inline const Aws::Vector<ECSService>& GetEcsServices() const { return m_ecsServices; }
279 inline bool EcsServicesHasBeenSet() const { return m_ecsServicesHasBeenSet; }
280 template<typename EcsServicesT = Aws::Vector<ECSService>>
281 void SetEcsServices(EcsServicesT&& value) { m_ecsServicesHasBeenSet = true; m_ecsServices = std::forward<EcsServicesT>(value); }
282 template<typename EcsServicesT = Aws::Vector<ECSService>>
283 CreateDeploymentGroupRequest& WithEcsServices(EcsServicesT&& value) { SetEcsServices(std::forward<EcsServicesT>(value)); return *this;}
284 template<typename EcsServicesT = ECSService>
285 CreateDeploymentGroupRequest& AddEcsServices(EcsServicesT&& value) { m_ecsServicesHasBeenSet = true; m_ecsServices.emplace_back(std::forward<EcsServicesT>(value)); return *this; }
287
289
295 inline const OnPremisesTagSet& GetOnPremisesTagSet() const { return m_onPremisesTagSet; }
296 inline bool OnPremisesTagSetHasBeenSet() const { return m_onPremisesTagSetHasBeenSet; }
297 template<typename OnPremisesTagSetT = OnPremisesTagSet>
298 void SetOnPremisesTagSet(OnPremisesTagSetT&& value) { m_onPremisesTagSetHasBeenSet = true; m_onPremisesTagSet = std::forward<OnPremisesTagSetT>(value); }
299 template<typename OnPremisesTagSetT = OnPremisesTagSet>
300 CreateDeploymentGroupRequest& WithOnPremisesTagSet(OnPremisesTagSetT&& value) { SetOnPremisesTagSet(std::forward<OnPremisesTagSetT>(value)); return *this;}
302
304
309 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
310 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
311 template<typename TagsT = Aws::Vector<Tag>>
312 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
313 template<typename TagsT = Aws::Vector<Tag>>
314 CreateDeploymentGroupRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
315 template<typename TagsT = Tag>
316 CreateDeploymentGroupRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
318
320
337 inline bool GetTerminationHookEnabled() const { return m_terminationHookEnabled; }
338 inline bool TerminationHookEnabledHasBeenSet() const { return m_terminationHookEnabledHasBeenSet; }
339 inline void SetTerminationHookEnabled(bool value) { m_terminationHookEnabledHasBeenSet = true; m_terminationHookEnabled = value; }
342 private:
343
344 Aws::String m_applicationName;
345 bool m_applicationNameHasBeenSet = false;
346
347 Aws::String m_deploymentGroupName;
348 bool m_deploymentGroupNameHasBeenSet = false;
349
350 Aws::String m_deploymentConfigName;
351 bool m_deploymentConfigNameHasBeenSet = false;
352
353 Aws::Vector<EC2TagFilter> m_ec2TagFilters;
354 bool m_ec2TagFiltersHasBeenSet = false;
355
356 Aws::Vector<TagFilter> m_onPremisesInstanceTagFilters;
357 bool m_onPremisesInstanceTagFiltersHasBeenSet = false;
358
359 Aws::Vector<Aws::String> m_autoScalingGroups;
360 bool m_autoScalingGroupsHasBeenSet = false;
361
362 Aws::String m_serviceRoleArn;
363 bool m_serviceRoleArnHasBeenSet = false;
364
365 Aws::Vector<TriggerConfig> m_triggerConfigurations;
366 bool m_triggerConfigurationsHasBeenSet = false;
367
368 AlarmConfiguration m_alarmConfiguration;
369 bool m_alarmConfigurationHasBeenSet = false;
370
371 AutoRollbackConfiguration m_autoRollbackConfiguration;
372 bool m_autoRollbackConfigurationHasBeenSet = false;
373
375 bool m_outdatedInstancesStrategyHasBeenSet = false;
376
377 DeploymentStyle m_deploymentStyle;
378 bool m_deploymentStyleHasBeenSet = false;
379
380 BlueGreenDeploymentConfiguration m_blueGreenDeploymentConfiguration;
381 bool m_blueGreenDeploymentConfigurationHasBeenSet = false;
382
383 LoadBalancerInfo m_loadBalancerInfo;
384 bool m_loadBalancerInfoHasBeenSet = false;
385
386 EC2TagSet m_ec2TagSet;
387 bool m_ec2TagSetHasBeenSet = false;
388
389 Aws::Vector<ECSService> m_ecsServices;
390 bool m_ecsServicesHasBeenSet = false;
391
392 OnPremisesTagSet m_onPremisesTagSet;
393 bool m_onPremisesTagSetHasBeenSet = false;
394
395 Aws::Vector<Tag> m_tags;
396 bool m_tagsHasBeenSet = false;
397
398 bool m_terminationHookEnabled{false};
399 bool m_terminationHookEnabledHasBeenSet = false;
400 };
401
402} // namespace Model
403} // namespace CodeDeploy
404} // 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