aws_sdk_codedeploy/operation/update_deployment_group/builders.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::update_deployment_group::_update_deployment_group_output::UpdateDeploymentGroupOutputBuilder;
3
4pub use crate::operation::update_deployment_group::_update_deployment_group_input::UpdateDeploymentGroupInputBuilder;
5
6impl crate::operation::update_deployment_group::builders::UpdateDeploymentGroupInputBuilder {
7 /// Sends a request with this input using the given client.
8 pub async fn send_with(
9 self,
10 client: &crate::Client,
11 ) -> ::std::result::Result<
12 crate::operation::update_deployment_group::UpdateDeploymentGroupOutput,
13 ::aws_smithy_runtime_api::client::result::SdkError<
14 crate::operation::update_deployment_group::UpdateDeploymentGroupError,
15 ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16 >,
17 > {
18 let mut fluent_builder = client.update_deployment_group();
19 fluent_builder.inner = self;
20 fluent_builder.send().await
21 }
22}
23/// Fluent builder constructing a request to `UpdateDeploymentGroup`.
24///
25/// <p>Changes information about a deployment group.</p>
26#[derive(::std::clone::Clone, ::std::fmt::Debug)]
27pub struct UpdateDeploymentGroupFluentBuilder {
28 handle: ::std::sync::Arc<crate::client::Handle>,
29 inner: crate::operation::update_deployment_group::builders::UpdateDeploymentGroupInputBuilder,
30 config_override: ::std::option::Option<crate::config::Builder>,
31}
32impl
33 crate::client::customize::internal::CustomizableSend<
34 crate::operation::update_deployment_group::UpdateDeploymentGroupOutput,
35 crate::operation::update_deployment_group::UpdateDeploymentGroupError,
36 > for UpdateDeploymentGroupFluentBuilder
37{
38 fn send(
39 self,
40 config_override: crate::config::Builder,
41 ) -> crate::client::customize::internal::BoxFuture<
42 crate::client::customize::internal::SendResult<
43 crate::operation::update_deployment_group::UpdateDeploymentGroupOutput,
44 crate::operation::update_deployment_group::UpdateDeploymentGroupError,
45 >,
46 > {
47 ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
48 }
49}
50impl UpdateDeploymentGroupFluentBuilder {
51 /// Creates a new `UpdateDeploymentGroupFluentBuilder`.
52 pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
53 Self {
54 handle,
55 inner: ::std::default::Default::default(),
56 config_override: ::std::option::Option::None,
57 }
58 }
59 /// Access the UpdateDeploymentGroup as a reference.
60 pub fn as_input(&self) -> &crate::operation::update_deployment_group::builders::UpdateDeploymentGroupInputBuilder {
61 &self.inner
62 }
63 /// Sends the request and returns the response.
64 ///
65 /// If an error occurs, an `SdkError` will be returned with additional details that
66 /// can be matched against.
67 ///
68 /// By default, any retryable failures will be retried twice. Retry behavior
69 /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
70 /// set when configuring the client.
71 pub async fn send(
72 self,
73 ) -> ::std::result::Result<
74 crate::operation::update_deployment_group::UpdateDeploymentGroupOutput,
75 ::aws_smithy_runtime_api::client::result::SdkError<
76 crate::operation::update_deployment_group::UpdateDeploymentGroupError,
77 ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
78 >,
79 > {
80 let input = self
81 .inner
82 .build()
83 .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
84 let runtime_plugins = crate::operation::update_deployment_group::UpdateDeploymentGroup::operation_runtime_plugins(
85 self.handle.runtime_plugins.clone(),
86 &self.handle.conf,
87 self.config_override,
88 );
89 crate::operation::update_deployment_group::UpdateDeploymentGroup::orchestrate(&runtime_plugins, input).await
90 }
91
92 /// Consumes this builder, creating a customizable operation that can be modified before being sent.
93 pub fn customize(
94 self,
95 ) -> crate::client::customize::CustomizableOperation<
96 crate::operation::update_deployment_group::UpdateDeploymentGroupOutput,
97 crate::operation::update_deployment_group::UpdateDeploymentGroupError,
98 Self,
99 > {
100 crate::client::customize::CustomizableOperation::new(self)
101 }
102 pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
103 self.set_config_override(::std::option::Option::Some(config_override.into()));
104 self
105 }
106
107 pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
108 self.config_override = config_override;
109 self
110 }
111 /// <p>The application name that corresponds to the deployment group to update.</p>
112 pub fn application_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
113 self.inner = self.inner.application_name(input.into());
114 self
115 }
116 /// <p>The application name that corresponds to the deployment group to update.</p>
117 pub fn set_application_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
118 self.inner = self.inner.set_application_name(input);
119 self
120 }
121 /// <p>The application name that corresponds to the deployment group to update.</p>
122 pub fn get_application_name(&self) -> &::std::option::Option<::std::string::String> {
123 self.inner.get_application_name()
124 }
125 /// <p>The current name of the deployment group.</p>
126 pub fn current_deployment_group_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
127 self.inner = self.inner.current_deployment_group_name(input.into());
128 self
129 }
130 /// <p>The current name of the deployment group.</p>
131 pub fn set_current_deployment_group_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
132 self.inner = self.inner.set_current_deployment_group_name(input);
133 self
134 }
135 /// <p>The current name of the deployment group.</p>
136 pub fn get_current_deployment_group_name(&self) -> &::std::option::Option<::std::string::String> {
137 self.inner.get_current_deployment_group_name()
138 }
139 /// <p>The new name of the deployment group, if you want to change it.</p>
140 pub fn new_deployment_group_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
141 self.inner = self.inner.new_deployment_group_name(input.into());
142 self
143 }
144 /// <p>The new name of the deployment group, if you want to change it.</p>
145 pub fn set_new_deployment_group_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
146 self.inner = self.inner.set_new_deployment_group_name(input);
147 self
148 }
149 /// <p>The new name of the deployment group, if you want to change it.</p>
150 pub fn get_new_deployment_group_name(&self) -> &::std::option::Option<::std::string::String> {
151 self.inner.get_new_deployment_group_name()
152 }
153 /// <p>The replacement deployment configuration name to use, if you want to change it.</p>
154 pub fn deployment_config_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
155 self.inner = self.inner.deployment_config_name(input.into());
156 self
157 }
158 /// <p>The replacement deployment configuration name to use, if you want to change it.</p>
159 pub fn set_deployment_config_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
160 self.inner = self.inner.set_deployment_config_name(input);
161 self
162 }
163 /// <p>The replacement deployment configuration name to use, if you want to change it.</p>
164 pub fn get_deployment_config_name(&self) -> &::std::option::Option<::std::string::String> {
165 self.inner.get_deployment_config_name()
166 }
167 ///
168 /// Appends an item to `ec2TagFilters`.
169 ///
170 /// To override the contents of this collection use [`set_ec2_tag_filters`](Self::set_ec2_tag_filters).
171 ///
172 /// <p>The replacement set of Amazon EC2 tags on which to filter, if you want to change them. To keep the existing tags, enter their names. To remove tags, do not enter any tag names.</p>
173 pub fn ec2_tag_filters(mut self, input: crate::types::Ec2TagFilter) -> Self {
174 self.inner = self.inner.ec2_tag_filters(input);
175 self
176 }
177 /// <p>The replacement set of Amazon EC2 tags on which to filter, if you want to change them. To keep the existing tags, enter their names. To remove tags, do not enter any tag names.</p>
178 pub fn set_ec2_tag_filters(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Ec2TagFilter>>) -> Self {
179 self.inner = self.inner.set_ec2_tag_filters(input);
180 self
181 }
182 /// <p>The replacement set of Amazon EC2 tags on which to filter, if you want to change them. To keep the existing tags, enter their names. To remove tags, do not enter any tag names.</p>
183 pub fn get_ec2_tag_filters(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Ec2TagFilter>> {
184 self.inner.get_ec2_tag_filters()
185 }
186 ///
187 /// Appends an item to `onPremisesInstanceTagFilters`.
188 ///
189 /// To override the contents of this collection use [`set_on_premises_instance_tag_filters`](Self::set_on_premises_instance_tag_filters).
190 ///
191 /// <p>The replacement set of on-premises instance tags on which to filter, if you want to change them. To keep the existing tags, enter their names. To remove tags, do not enter any tag names.</p>
192 pub fn on_premises_instance_tag_filters(mut self, input: crate::types::TagFilter) -> Self {
193 self.inner = self.inner.on_premises_instance_tag_filters(input);
194 self
195 }
196 /// <p>The replacement set of on-premises instance tags on which to filter, if you want to change them. To keep the existing tags, enter their names. To remove tags, do not enter any tag names.</p>
197 pub fn set_on_premises_instance_tag_filters(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::TagFilter>>) -> Self {
198 self.inner = self.inner.set_on_premises_instance_tag_filters(input);
199 self
200 }
201 /// <p>The replacement set of on-premises instance tags on which to filter, if you want to change them. To keep the existing tags, enter their names. To remove tags, do not enter any tag names.</p>
202 pub fn get_on_premises_instance_tag_filters(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::TagFilter>> {
203 self.inner.get_on_premises_instance_tag_filters()
204 }
205 ///
206 /// Appends an item to `autoScalingGroups`.
207 ///
208 /// To override the contents of this collection use [`set_auto_scaling_groups`](Self::set_auto_scaling_groups).
209 ///
210 /// <p>The replacement list of Auto Scaling groups to be included in the deployment group, if you want to change them.</p>
211 /// <ul>
212 /// <li>
213 /// <p>To keep the Auto Scaling groups, enter their names or do not specify this parameter.</p></li>
214 /// <li>
215 /// <p>To remove Auto Scaling groups, specify a non-null empty list of Auto Scaling group names to detach all CodeDeploy-managed Auto Scaling lifecycle hooks. For examples, see <a href="https://docs.aws.amazon.com/codedeploy/latest/userguide/troubleshooting-auto-scaling.html#troubleshooting-auto-scaling-heartbeat">Amazon EC2 instances in an Amazon EC2 Auto Scaling group fail to launch and receive the error "Heartbeat Timeout"</a> in the <i>CodeDeploy User Guide</i>.</p></li>
216 /// </ul>
217 pub fn auto_scaling_groups(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
218 self.inner = self.inner.auto_scaling_groups(input.into());
219 self
220 }
221 /// <p>The replacement list of Auto Scaling groups to be included in the deployment group, if you want to change them.</p>
222 /// <ul>
223 /// <li>
224 /// <p>To keep the Auto Scaling groups, enter their names or do not specify this parameter.</p></li>
225 /// <li>
226 /// <p>To remove Auto Scaling groups, specify a non-null empty list of Auto Scaling group names to detach all CodeDeploy-managed Auto Scaling lifecycle hooks. For examples, see <a href="https://docs.aws.amazon.com/codedeploy/latest/userguide/troubleshooting-auto-scaling.html#troubleshooting-auto-scaling-heartbeat">Amazon EC2 instances in an Amazon EC2 Auto Scaling group fail to launch and receive the error "Heartbeat Timeout"</a> in the <i>CodeDeploy User Guide</i>.</p></li>
227 /// </ul>
228 pub fn set_auto_scaling_groups(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
229 self.inner = self.inner.set_auto_scaling_groups(input);
230 self
231 }
232 /// <p>The replacement list of Auto Scaling groups to be included in the deployment group, if you want to change them.</p>
233 /// <ul>
234 /// <li>
235 /// <p>To keep the Auto Scaling groups, enter their names or do not specify this parameter.</p></li>
236 /// <li>
237 /// <p>To remove Auto Scaling groups, specify a non-null empty list of Auto Scaling group names to detach all CodeDeploy-managed Auto Scaling lifecycle hooks. For examples, see <a href="https://docs.aws.amazon.com/codedeploy/latest/userguide/troubleshooting-auto-scaling.html#troubleshooting-auto-scaling-heartbeat">Amazon EC2 instances in an Amazon EC2 Auto Scaling group fail to launch and receive the error "Heartbeat Timeout"</a> in the <i>CodeDeploy User Guide</i>.</p></li>
238 /// </ul>
239 pub fn get_auto_scaling_groups(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
240 self.inner.get_auto_scaling_groups()
241 }
242 /// <p>A replacement ARN for the service role, if you want to change it.</p>
243 pub fn service_role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
244 self.inner = self.inner.service_role_arn(input.into());
245 self
246 }
247 /// <p>A replacement ARN for the service role, if you want to change it.</p>
248 pub fn set_service_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
249 self.inner = self.inner.set_service_role_arn(input);
250 self
251 }
252 /// <p>A replacement ARN for the service role, if you want to change it.</p>
253 pub fn get_service_role_arn(&self) -> &::std::option::Option<::std::string::String> {
254 self.inner.get_service_role_arn()
255 }
256 ///
257 /// Appends an item to `triggerConfigurations`.
258 ///
259 /// To override the contents of this collection use [`set_trigger_configurations`](Self::set_trigger_configurations).
260 ///
261 /// <p>Information about triggers to change when the deployment group is updated. For examples, see <a href="https://docs.aws.amazon.com/codedeploy/latest/userguide/how-to-notify-edit.html">Edit a Trigger in a CodeDeploy Deployment Group</a> in the <i>CodeDeploy User Guide</i>.</p>
262 pub fn trigger_configurations(mut self, input: crate::types::TriggerConfig) -> Self {
263 self.inner = self.inner.trigger_configurations(input);
264 self
265 }
266 /// <p>Information about triggers to change when the deployment group is updated. For examples, see <a href="https://docs.aws.amazon.com/codedeploy/latest/userguide/how-to-notify-edit.html">Edit a Trigger in a CodeDeploy Deployment Group</a> in the <i>CodeDeploy User Guide</i>.</p>
267 pub fn set_trigger_configurations(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::TriggerConfig>>) -> Self {
268 self.inner = self.inner.set_trigger_configurations(input);
269 self
270 }
271 /// <p>Information about triggers to change when the deployment group is updated. For examples, see <a href="https://docs.aws.amazon.com/codedeploy/latest/userguide/how-to-notify-edit.html">Edit a Trigger in a CodeDeploy Deployment Group</a> in the <i>CodeDeploy User Guide</i>.</p>
272 pub fn get_trigger_configurations(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::TriggerConfig>> {
273 self.inner.get_trigger_configurations()
274 }
275 /// <p>Information to add or change about Amazon CloudWatch alarms when the deployment group is updated.</p>
276 pub fn alarm_configuration(mut self, input: crate::types::AlarmConfiguration) -> Self {
277 self.inner = self.inner.alarm_configuration(input);
278 self
279 }
280 /// <p>Information to add or change about Amazon CloudWatch alarms when the deployment group is updated.</p>
281 pub fn set_alarm_configuration(mut self, input: ::std::option::Option<crate::types::AlarmConfiguration>) -> Self {
282 self.inner = self.inner.set_alarm_configuration(input);
283 self
284 }
285 /// <p>Information to add or change about Amazon CloudWatch alarms when the deployment group is updated.</p>
286 pub fn get_alarm_configuration(&self) -> &::std::option::Option<crate::types::AlarmConfiguration> {
287 self.inner.get_alarm_configuration()
288 }
289 /// <p>Information for an automatic rollback configuration that is added or changed when a deployment group is updated.</p>
290 pub fn auto_rollback_configuration(mut self, input: crate::types::AutoRollbackConfiguration) -> Self {
291 self.inner = self.inner.auto_rollback_configuration(input);
292 self
293 }
294 /// <p>Information for an automatic rollback configuration that is added or changed when a deployment group is updated.</p>
295 pub fn set_auto_rollback_configuration(mut self, input: ::std::option::Option<crate::types::AutoRollbackConfiguration>) -> Self {
296 self.inner = self.inner.set_auto_rollback_configuration(input);
297 self
298 }
299 /// <p>Information for an automatic rollback configuration that is added or changed when a deployment group is updated.</p>
300 pub fn get_auto_rollback_configuration(&self) -> &::std::option::Option<crate::types::AutoRollbackConfiguration> {
301 self.inner.get_auto_rollback_configuration()
302 }
303 /// <p>Indicates what happens when new Amazon EC2 instances are launched mid-deployment and do not receive the deployed application revision.</p>
304 /// <p>If this option is set to <code>UPDATE</code> or is unspecified, CodeDeploy initiates one or more 'auto-update outdated instances' deployments to apply the deployed application revision to the new Amazon EC2 instances.</p>
305 /// <p>If this option is set to <code>IGNORE</code>, CodeDeploy does not initiate a deployment to update the new Amazon EC2 instances. This may result in instances having different revisions.</p>
306 pub fn outdated_instances_strategy(mut self, input: crate::types::OutdatedInstancesStrategy) -> Self {
307 self.inner = self.inner.outdated_instances_strategy(input);
308 self
309 }
310 /// <p>Indicates what happens when new Amazon EC2 instances are launched mid-deployment and do not receive the deployed application revision.</p>
311 /// <p>If this option is set to <code>UPDATE</code> or is unspecified, CodeDeploy initiates one or more 'auto-update outdated instances' deployments to apply the deployed application revision to the new Amazon EC2 instances.</p>
312 /// <p>If this option is set to <code>IGNORE</code>, CodeDeploy does not initiate a deployment to update the new Amazon EC2 instances. This may result in instances having different revisions.</p>
313 pub fn set_outdated_instances_strategy(mut self, input: ::std::option::Option<crate::types::OutdatedInstancesStrategy>) -> Self {
314 self.inner = self.inner.set_outdated_instances_strategy(input);
315 self
316 }
317 /// <p>Indicates what happens when new Amazon EC2 instances are launched mid-deployment and do not receive the deployed application revision.</p>
318 /// <p>If this option is set to <code>UPDATE</code> or is unspecified, CodeDeploy initiates one or more 'auto-update outdated instances' deployments to apply the deployed application revision to the new Amazon EC2 instances.</p>
319 /// <p>If this option is set to <code>IGNORE</code>, CodeDeploy does not initiate a deployment to update the new Amazon EC2 instances. This may result in instances having different revisions.</p>
320 pub fn get_outdated_instances_strategy(&self) -> &::std::option::Option<crate::types::OutdatedInstancesStrategy> {
321 self.inner.get_outdated_instances_strategy()
322 }
323 /// <p>Information about the type of deployment, either in-place or blue/green, you want to run and whether to route deployment traffic behind a load balancer.</p>
324 pub fn deployment_style(mut self, input: crate::types::DeploymentStyle) -> Self {
325 self.inner = self.inner.deployment_style(input);
326 self
327 }
328 /// <p>Information about the type of deployment, either in-place or blue/green, you want to run and whether to route deployment traffic behind a load balancer.</p>
329 pub fn set_deployment_style(mut self, input: ::std::option::Option<crate::types::DeploymentStyle>) -> Self {
330 self.inner = self.inner.set_deployment_style(input);
331 self
332 }
333 /// <p>Information about the type of deployment, either in-place or blue/green, you want to run and whether to route deployment traffic behind a load balancer.</p>
334 pub fn get_deployment_style(&self) -> &::std::option::Option<crate::types::DeploymentStyle> {
335 self.inner.get_deployment_style()
336 }
337 /// <p>Information about blue/green deployment options for a deployment group.</p>
338 pub fn blue_green_deployment_configuration(mut self, input: crate::types::BlueGreenDeploymentConfiguration) -> Self {
339 self.inner = self.inner.blue_green_deployment_configuration(input);
340 self
341 }
342 /// <p>Information about blue/green deployment options for a deployment group.</p>
343 pub fn set_blue_green_deployment_configuration(mut self, input: ::std::option::Option<crate::types::BlueGreenDeploymentConfiguration>) -> Self {
344 self.inner = self.inner.set_blue_green_deployment_configuration(input);
345 self
346 }
347 /// <p>Information about blue/green deployment options for a deployment group.</p>
348 pub fn get_blue_green_deployment_configuration(&self) -> &::std::option::Option<crate::types::BlueGreenDeploymentConfiguration> {
349 self.inner.get_blue_green_deployment_configuration()
350 }
351 /// <p>Information about the load balancer used in a deployment.</p>
352 pub fn load_balancer_info(mut self, input: crate::types::LoadBalancerInfo) -> Self {
353 self.inner = self.inner.load_balancer_info(input);
354 self
355 }
356 /// <p>Information about the load balancer used in a deployment.</p>
357 pub fn set_load_balancer_info(mut self, input: ::std::option::Option<crate::types::LoadBalancerInfo>) -> Self {
358 self.inner = self.inner.set_load_balancer_info(input);
359 self
360 }
361 /// <p>Information about the load balancer used in a deployment.</p>
362 pub fn get_load_balancer_info(&self) -> &::std::option::Option<crate::types::LoadBalancerInfo> {
363 self.inner.get_load_balancer_info()
364 }
365 /// <p>Information about groups of tags applied to on-premises instances. The deployment group includes only Amazon EC2 instances identified by all the tag groups.</p>
366 pub fn ec2_tag_set(mut self, input: crate::types::Ec2TagSet) -> Self {
367 self.inner = self.inner.ec2_tag_set(input);
368 self
369 }
370 /// <p>Information about groups of tags applied to on-premises instances. The deployment group includes only Amazon EC2 instances identified by all the tag groups.</p>
371 pub fn set_ec2_tag_set(mut self, input: ::std::option::Option<crate::types::Ec2TagSet>) -> Self {
372 self.inner = self.inner.set_ec2_tag_set(input);
373 self
374 }
375 /// <p>Information about groups of tags applied to on-premises instances. The deployment group includes only Amazon EC2 instances identified by all the tag groups.</p>
376 pub fn get_ec2_tag_set(&self) -> &::std::option::Option<crate::types::Ec2TagSet> {
377 self.inner.get_ec2_tag_set()
378 }
379 ///
380 /// Appends an item to `ecsServices`.
381 ///
382 /// To override the contents of this collection use [`set_ecs_services`](Self::set_ecs_services).
383 ///
384 /// <p>The target Amazon ECS services in the deployment group. This applies only to deployment groups that use the Amazon ECS compute platform. A target Amazon ECS service is specified as an Amazon ECS cluster and service name pair using the format <code><clustername>
385 /// :
386 /// <servicename></servicename>
387 /// </clustername></code>.</p>
388 pub fn ecs_services(mut self, input: crate::types::EcsService) -> Self {
389 self.inner = self.inner.ecs_services(input);
390 self
391 }
392 /// <p>The target Amazon ECS services in the deployment group. This applies only to deployment groups that use the Amazon ECS compute platform. A target Amazon ECS service is specified as an Amazon ECS cluster and service name pair using the format <code><clustername>
393 /// :
394 /// <servicename></servicename>
395 /// </clustername></code>.</p>
396 pub fn set_ecs_services(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::EcsService>>) -> Self {
397 self.inner = self.inner.set_ecs_services(input);
398 self
399 }
400 /// <p>The target Amazon ECS services in the deployment group. This applies only to deployment groups that use the Amazon ECS compute platform. A target Amazon ECS service is specified as an Amazon ECS cluster and service name pair using the format <code><clustername>
401 /// :
402 /// <servicename></servicename>
403 /// </clustername></code>.</p>
404 pub fn get_ecs_services(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::EcsService>> {
405 self.inner.get_ecs_services()
406 }
407 /// <p>Information about an on-premises instance tag set. The deployment group includes only on-premises instances identified by all the tag groups.</p>
408 pub fn on_premises_tag_set(mut self, input: crate::types::OnPremisesTagSet) -> Self {
409 self.inner = self.inner.on_premises_tag_set(input);
410 self
411 }
412 /// <p>Information about an on-premises instance tag set. The deployment group includes only on-premises instances identified by all the tag groups.</p>
413 pub fn set_on_premises_tag_set(mut self, input: ::std::option::Option<crate::types::OnPremisesTagSet>) -> Self {
414 self.inner = self.inner.set_on_premises_tag_set(input);
415 self
416 }
417 /// <p>Information about an on-premises instance tag set. The deployment group includes only on-premises instances identified by all the tag groups.</p>
418 pub fn get_on_premises_tag_set(&self) -> &::std::option::Option<crate::types::OnPremisesTagSet> {
419 self.inner.get_on_premises_tag_set()
420 }
421 /// <p>This parameter only applies if you are using CodeDeploy with Amazon EC2 Auto Scaling. For more information, see <a href="https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html">Integrating CodeDeploy with Amazon EC2 Auto Scaling</a> in the <i>CodeDeploy User Guide</i>.</p>
422 /// <p>Set <code>terminationHookEnabled</code> to <code>true</code> to have CodeDeploy install a termination hook into your Auto Scaling group when you update a deployment group. When this hook is installed, CodeDeploy will perform termination deployments.</p>
423 /// <p>For information about termination deployments, see <a href="https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html#integrations-aws-auto-scaling-behaviors-hook-enable">Enabling termination deployments during Auto Scaling scale-in events</a> in the <i>CodeDeploy User Guide</i>.</p>
424 /// <p>For more information about Auto Scaling scale-in events, see the <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-lifecycle.html#as-lifecycle-scale-in">Scale in</a> topic in the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
425 pub fn termination_hook_enabled(mut self, input: bool) -> Self {
426 self.inner = self.inner.termination_hook_enabled(input);
427 self
428 }
429 /// <p>This parameter only applies if you are using CodeDeploy with Amazon EC2 Auto Scaling. For more information, see <a href="https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html">Integrating CodeDeploy with Amazon EC2 Auto Scaling</a> in the <i>CodeDeploy User Guide</i>.</p>
430 /// <p>Set <code>terminationHookEnabled</code> to <code>true</code> to have CodeDeploy install a termination hook into your Auto Scaling group when you update a deployment group. When this hook is installed, CodeDeploy will perform termination deployments.</p>
431 /// <p>For information about termination deployments, see <a href="https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html#integrations-aws-auto-scaling-behaviors-hook-enable">Enabling termination deployments during Auto Scaling scale-in events</a> in the <i>CodeDeploy User Guide</i>.</p>
432 /// <p>For more information about Auto Scaling scale-in events, see the <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-lifecycle.html#as-lifecycle-scale-in">Scale in</a> topic in the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
433 pub fn set_termination_hook_enabled(mut self, input: ::std::option::Option<bool>) -> Self {
434 self.inner = self.inner.set_termination_hook_enabled(input);
435 self
436 }
437 /// <p>This parameter only applies if you are using CodeDeploy with Amazon EC2 Auto Scaling. For more information, see <a href="https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html">Integrating CodeDeploy with Amazon EC2 Auto Scaling</a> in the <i>CodeDeploy User Guide</i>.</p>
438 /// <p>Set <code>terminationHookEnabled</code> to <code>true</code> to have CodeDeploy install a termination hook into your Auto Scaling group when you update a deployment group. When this hook is installed, CodeDeploy will perform termination deployments.</p>
439 /// <p>For information about termination deployments, see <a href="https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html#integrations-aws-auto-scaling-behaviors-hook-enable">Enabling termination deployments during Auto Scaling scale-in events</a> in the <i>CodeDeploy User Guide</i>.</p>
440 /// <p>For more information about Auto Scaling scale-in events, see the <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-lifecycle.html#as-lifecycle-scale-in">Scale in</a> topic in the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
441 pub fn get_termination_hook_enabled(&self) -> &::std::option::Option<bool> {
442 self.inner.get_termination_hook_enabled()
443 }
444}