aws_sdk_appconfig/operation/start_deployment/
_start_deployment_output.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(missing_docs)] // documentation missing in model
3#[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
5pub struct StartDeploymentOutput {
6    /// <p>The ID of the application that was deployed.</p>
7    pub application_id: ::std::option::Option<::std::string::String>,
8    /// <p>The ID of the environment that was deployed.</p>
9    pub environment_id: ::std::option::Option<::std::string::String>,
10    /// <p>The ID of the deployment strategy that was deployed.</p>
11    pub deployment_strategy_id: ::std::option::Option<::std::string::String>,
12    /// <p>The ID of the configuration profile that was deployed.</p>
13    pub configuration_profile_id: ::std::option::Option<::std::string::String>,
14    /// <p>The sequence number of the deployment.</p>
15    pub deployment_number: i32,
16    /// <p>The name of the configuration.</p>
17    pub configuration_name: ::std::option::Option<::std::string::String>,
18    /// <p>Information about the source location of the configuration.</p>
19    pub configuration_location_uri: ::std::option::Option<::std::string::String>,
20    /// <p>The configuration version that was deployed.</p>
21    pub configuration_version: ::std::option::Option<::std::string::String>,
22    /// <p>The description of the deployment.</p>
23    pub description: ::std::option::Option<::std::string::String>,
24    /// <p>Total amount of time the deployment lasted.</p>
25    pub deployment_duration_in_minutes: i32,
26    /// <p>The algorithm used to define how percentage grew over time.</p>
27    pub growth_type: ::std::option::Option<crate::types::GrowthType>,
28    /// <p>The percentage of targets to receive a deployed configuration during each interval.</p>
29    pub growth_factor: ::std::option::Option<f32>,
30    /// <p>The amount of time that AppConfig monitored for alarms before considering the deployment to be complete and no longer eligible for automatic rollback.</p>
31    pub final_bake_time_in_minutes: i32,
32    /// <p>The state of the deployment.</p>
33    pub state: ::std::option::Option<crate::types::DeploymentState>,
34    /// <p>A list containing all events related to a deployment. The most recent events are displayed first.</p>
35    pub event_log: ::std::option::Option<::std::vec::Vec<crate::types::DeploymentEvent>>,
36    /// <p>The percentage of targets for which the deployment is available.</p>
37    pub percentage_complete: ::std::option::Option<f32>,
38    /// <p>The time the deployment started.</p>
39    pub started_at: ::std::option::Option<::aws_smithy_types::DateTime>,
40    /// <p>The time the deployment completed.</p>
41    pub completed_at: ::std::option::Option<::aws_smithy_types::DateTime>,
42    /// <p>A list of extensions that were processed as part of the deployment. The extensions that were previously associated to the configuration profile, environment, or the application when <code>StartDeployment</code> was called.</p>
43    pub applied_extensions: ::std::option::Option<::std::vec::Vec<crate::types::AppliedExtension>>,
44    /// <p>The Amazon Resource Name of the Key Management Service key used to encrypt configuration data. You can encrypt secrets stored in Secrets Manager, Amazon Simple Storage Service (Amazon S3) objects encrypted with SSE-KMS, or secure string parameters stored in Amazon Web Services Systems Manager Parameter Store.</p>
45    pub kms_key_arn: ::std::option::Option<::std::string::String>,
46    /// <p>The Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated.</p>
47    pub kms_key_identifier: ::std::option::Option<::std::string::String>,
48    /// <p>A user-defined label for an AppConfig hosted configuration version.</p>
49    pub version_label: ::std::option::Option<::std::string::String>,
50    _request_id: Option<String>,
51}
52impl StartDeploymentOutput {
53    /// <p>The ID of the application that was deployed.</p>
54    pub fn application_id(&self) -> ::std::option::Option<&str> {
55        self.application_id.as_deref()
56    }
57    /// <p>The ID of the environment that was deployed.</p>
58    pub fn environment_id(&self) -> ::std::option::Option<&str> {
59        self.environment_id.as_deref()
60    }
61    /// <p>The ID of the deployment strategy that was deployed.</p>
62    pub fn deployment_strategy_id(&self) -> ::std::option::Option<&str> {
63        self.deployment_strategy_id.as_deref()
64    }
65    /// <p>The ID of the configuration profile that was deployed.</p>
66    pub fn configuration_profile_id(&self) -> ::std::option::Option<&str> {
67        self.configuration_profile_id.as_deref()
68    }
69    /// <p>The sequence number of the deployment.</p>
70    pub fn deployment_number(&self) -> i32 {
71        self.deployment_number
72    }
73    /// <p>The name of the configuration.</p>
74    pub fn configuration_name(&self) -> ::std::option::Option<&str> {
75        self.configuration_name.as_deref()
76    }
77    /// <p>Information about the source location of the configuration.</p>
78    pub fn configuration_location_uri(&self) -> ::std::option::Option<&str> {
79        self.configuration_location_uri.as_deref()
80    }
81    /// <p>The configuration version that was deployed.</p>
82    pub fn configuration_version(&self) -> ::std::option::Option<&str> {
83        self.configuration_version.as_deref()
84    }
85    /// <p>The description of the deployment.</p>
86    pub fn description(&self) -> ::std::option::Option<&str> {
87        self.description.as_deref()
88    }
89    /// <p>Total amount of time the deployment lasted.</p>
90    pub fn deployment_duration_in_minutes(&self) -> i32 {
91        self.deployment_duration_in_minutes
92    }
93    /// <p>The algorithm used to define how percentage grew over time.</p>
94    pub fn growth_type(&self) -> ::std::option::Option<&crate::types::GrowthType> {
95        self.growth_type.as_ref()
96    }
97    /// <p>The percentage of targets to receive a deployed configuration during each interval.</p>
98    pub fn growth_factor(&self) -> ::std::option::Option<f32> {
99        self.growth_factor
100    }
101    /// <p>The amount of time that AppConfig monitored for alarms before considering the deployment to be complete and no longer eligible for automatic rollback.</p>
102    pub fn final_bake_time_in_minutes(&self) -> i32 {
103        self.final_bake_time_in_minutes
104    }
105    /// <p>The state of the deployment.</p>
106    pub fn state(&self) -> ::std::option::Option<&crate::types::DeploymentState> {
107        self.state.as_ref()
108    }
109    /// <p>A list containing all events related to a deployment. The most recent events are displayed first.</p>
110    ///
111    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.event_log.is_none()`.
112    pub fn event_log(&self) -> &[crate::types::DeploymentEvent] {
113        self.event_log.as_deref().unwrap_or_default()
114    }
115    /// <p>The percentage of targets for which the deployment is available.</p>
116    pub fn percentage_complete(&self) -> ::std::option::Option<f32> {
117        self.percentage_complete
118    }
119    /// <p>The time the deployment started.</p>
120    pub fn started_at(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
121        self.started_at.as_ref()
122    }
123    /// <p>The time the deployment completed.</p>
124    pub fn completed_at(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
125        self.completed_at.as_ref()
126    }
127    /// <p>A list of extensions that were processed as part of the deployment. The extensions that were previously associated to the configuration profile, environment, or the application when <code>StartDeployment</code> was called.</p>
128    ///
129    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.applied_extensions.is_none()`.
130    pub fn applied_extensions(&self) -> &[crate::types::AppliedExtension] {
131        self.applied_extensions.as_deref().unwrap_or_default()
132    }
133    /// <p>The Amazon Resource Name of the Key Management Service key used to encrypt configuration data. You can encrypt secrets stored in Secrets Manager, Amazon Simple Storage Service (Amazon S3) objects encrypted with SSE-KMS, or secure string parameters stored in Amazon Web Services Systems Manager Parameter Store.</p>
134    pub fn kms_key_arn(&self) -> ::std::option::Option<&str> {
135        self.kms_key_arn.as_deref()
136    }
137    /// <p>The Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated.</p>
138    pub fn kms_key_identifier(&self) -> ::std::option::Option<&str> {
139        self.kms_key_identifier.as_deref()
140    }
141    /// <p>A user-defined label for an AppConfig hosted configuration version.</p>
142    pub fn version_label(&self) -> ::std::option::Option<&str> {
143        self.version_label.as_deref()
144    }
145}
146impl ::aws_types::request_id::RequestId for StartDeploymentOutput {
147    fn request_id(&self) -> Option<&str> {
148        self._request_id.as_deref()
149    }
150}
151impl StartDeploymentOutput {
152    /// Creates a new builder-style object to manufacture [`StartDeploymentOutput`](crate::operation::start_deployment::StartDeploymentOutput).
153    pub fn builder() -> crate::operation::start_deployment::builders::StartDeploymentOutputBuilder {
154        crate::operation::start_deployment::builders::StartDeploymentOutputBuilder::default()
155    }
156}
157
158/// A builder for [`StartDeploymentOutput`](crate::operation::start_deployment::StartDeploymentOutput).
159#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
160#[non_exhaustive]
161pub struct StartDeploymentOutputBuilder {
162    pub(crate) application_id: ::std::option::Option<::std::string::String>,
163    pub(crate) environment_id: ::std::option::Option<::std::string::String>,
164    pub(crate) deployment_strategy_id: ::std::option::Option<::std::string::String>,
165    pub(crate) configuration_profile_id: ::std::option::Option<::std::string::String>,
166    pub(crate) deployment_number: ::std::option::Option<i32>,
167    pub(crate) configuration_name: ::std::option::Option<::std::string::String>,
168    pub(crate) configuration_location_uri: ::std::option::Option<::std::string::String>,
169    pub(crate) configuration_version: ::std::option::Option<::std::string::String>,
170    pub(crate) description: ::std::option::Option<::std::string::String>,
171    pub(crate) deployment_duration_in_minutes: ::std::option::Option<i32>,
172    pub(crate) growth_type: ::std::option::Option<crate::types::GrowthType>,
173    pub(crate) growth_factor: ::std::option::Option<f32>,
174    pub(crate) final_bake_time_in_minutes: ::std::option::Option<i32>,
175    pub(crate) state: ::std::option::Option<crate::types::DeploymentState>,
176    pub(crate) event_log: ::std::option::Option<::std::vec::Vec<crate::types::DeploymentEvent>>,
177    pub(crate) percentage_complete: ::std::option::Option<f32>,
178    pub(crate) started_at: ::std::option::Option<::aws_smithy_types::DateTime>,
179    pub(crate) completed_at: ::std::option::Option<::aws_smithy_types::DateTime>,
180    pub(crate) applied_extensions: ::std::option::Option<::std::vec::Vec<crate::types::AppliedExtension>>,
181    pub(crate) kms_key_arn: ::std::option::Option<::std::string::String>,
182    pub(crate) kms_key_identifier: ::std::option::Option<::std::string::String>,
183    pub(crate) version_label: ::std::option::Option<::std::string::String>,
184    _request_id: Option<String>,
185}
186impl StartDeploymentOutputBuilder {
187    /// <p>The ID of the application that was deployed.</p>
188    pub fn application_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
189        self.application_id = ::std::option::Option::Some(input.into());
190        self
191    }
192    /// <p>The ID of the application that was deployed.</p>
193    pub fn set_application_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
194        self.application_id = input;
195        self
196    }
197    /// <p>The ID of the application that was deployed.</p>
198    pub fn get_application_id(&self) -> &::std::option::Option<::std::string::String> {
199        &self.application_id
200    }
201    /// <p>The ID of the environment that was deployed.</p>
202    pub fn environment_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
203        self.environment_id = ::std::option::Option::Some(input.into());
204        self
205    }
206    /// <p>The ID of the environment that was deployed.</p>
207    pub fn set_environment_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
208        self.environment_id = input;
209        self
210    }
211    /// <p>The ID of the environment that was deployed.</p>
212    pub fn get_environment_id(&self) -> &::std::option::Option<::std::string::String> {
213        &self.environment_id
214    }
215    /// <p>The ID of the deployment strategy that was deployed.</p>
216    pub fn deployment_strategy_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
217        self.deployment_strategy_id = ::std::option::Option::Some(input.into());
218        self
219    }
220    /// <p>The ID of the deployment strategy that was deployed.</p>
221    pub fn set_deployment_strategy_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
222        self.deployment_strategy_id = input;
223        self
224    }
225    /// <p>The ID of the deployment strategy that was deployed.</p>
226    pub fn get_deployment_strategy_id(&self) -> &::std::option::Option<::std::string::String> {
227        &self.deployment_strategy_id
228    }
229    /// <p>The ID of the configuration profile that was deployed.</p>
230    pub fn configuration_profile_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
231        self.configuration_profile_id = ::std::option::Option::Some(input.into());
232        self
233    }
234    /// <p>The ID of the configuration profile that was deployed.</p>
235    pub fn set_configuration_profile_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
236        self.configuration_profile_id = input;
237        self
238    }
239    /// <p>The ID of the configuration profile that was deployed.</p>
240    pub fn get_configuration_profile_id(&self) -> &::std::option::Option<::std::string::String> {
241        &self.configuration_profile_id
242    }
243    /// <p>The sequence number of the deployment.</p>
244    pub fn deployment_number(mut self, input: i32) -> Self {
245        self.deployment_number = ::std::option::Option::Some(input);
246        self
247    }
248    /// <p>The sequence number of the deployment.</p>
249    pub fn set_deployment_number(mut self, input: ::std::option::Option<i32>) -> Self {
250        self.deployment_number = input;
251        self
252    }
253    /// <p>The sequence number of the deployment.</p>
254    pub fn get_deployment_number(&self) -> &::std::option::Option<i32> {
255        &self.deployment_number
256    }
257    /// <p>The name of the configuration.</p>
258    pub fn configuration_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
259        self.configuration_name = ::std::option::Option::Some(input.into());
260        self
261    }
262    /// <p>The name of the configuration.</p>
263    pub fn set_configuration_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
264        self.configuration_name = input;
265        self
266    }
267    /// <p>The name of the configuration.</p>
268    pub fn get_configuration_name(&self) -> &::std::option::Option<::std::string::String> {
269        &self.configuration_name
270    }
271    /// <p>Information about the source location of the configuration.</p>
272    pub fn configuration_location_uri(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
273        self.configuration_location_uri = ::std::option::Option::Some(input.into());
274        self
275    }
276    /// <p>Information about the source location of the configuration.</p>
277    pub fn set_configuration_location_uri(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
278        self.configuration_location_uri = input;
279        self
280    }
281    /// <p>Information about the source location of the configuration.</p>
282    pub fn get_configuration_location_uri(&self) -> &::std::option::Option<::std::string::String> {
283        &self.configuration_location_uri
284    }
285    /// <p>The configuration version that was deployed.</p>
286    pub fn configuration_version(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
287        self.configuration_version = ::std::option::Option::Some(input.into());
288        self
289    }
290    /// <p>The configuration version that was deployed.</p>
291    pub fn set_configuration_version(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
292        self.configuration_version = input;
293        self
294    }
295    /// <p>The configuration version that was deployed.</p>
296    pub fn get_configuration_version(&self) -> &::std::option::Option<::std::string::String> {
297        &self.configuration_version
298    }
299    /// <p>The description of the deployment.</p>
300    pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
301        self.description = ::std::option::Option::Some(input.into());
302        self
303    }
304    /// <p>The description of the deployment.</p>
305    pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
306        self.description = input;
307        self
308    }
309    /// <p>The description of the deployment.</p>
310    pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
311        &self.description
312    }
313    /// <p>Total amount of time the deployment lasted.</p>
314    pub fn deployment_duration_in_minutes(mut self, input: i32) -> Self {
315        self.deployment_duration_in_minutes = ::std::option::Option::Some(input);
316        self
317    }
318    /// <p>Total amount of time the deployment lasted.</p>
319    pub fn set_deployment_duration_in_minutes(mut self, input: ::std::option::Option<i32>) -> Self {
320        self.deployment_duration_in_minutes = input;
321        self
322    }
323    /// <p>Total amount of time the deployment lasted.</p>
324    pub fn get_deployment_duration_in_minutes(&self) -> &::std::option::Option<i32> {
325        &self.deployment_duration_in_minutes
326    }
327    /// <p>The algorithm used to define how percentage grew over time.</p>
328    pub fn growth_type(mut self, input: crate::types::GrowthType) -> Self {
329        self.growth_type = ::std::option::Option::Some(input);
330        self
331    }
332    /// <p>The algorithm used to define how percentage grew over time.</p>
333    pub fn set_growth_type(mut self, input: ::std::option::Option<crate::types::GrowthType>) -> Self {
334        self.growth_type = input;
335        self
336    }
337    /// <p>The algorithm used to define how percentage grew over time.</p>
338    pub fn get_growth_type(&self) -> &::std::option::Option<crate::types::GrowthType> {
339        &self.growth_type
340    }
341    /// <p>The percentage of targets to receive a deployed configuration during each interval.</p>
342    pub fn growth_factor(mut self, input: f32) -> Self {
343        self.growth_factor = ::std::option::Option::Some(input);
344        self
345    }
346    /// <p>The percentage of targets to receive a deployed configuration during each interval.</p>
347    pub fn set_growth_factor(mut self, input: ::std::option::Option<f32>) -> Self {
348        self.growth_factor = input;
349        self
350    }
351    /// <p>The percentage of targets to receive a deployed configuration during each interval.</p>
352    pub fn get_growth_factor(&self) -> &::std::option::Option<f32> {
353        &self.growth_factor
354    }
355    /// <p>The amount of time that AppConfig monitored for alarms before considering the deployment to be complete and no longer eligible for automatic rollback.</p>
356    pub fn final_bake_time_in_minutes(mut self, input: i32) -> Self {
357        self.final_bake_time_in_minutes = ::std::option::Option::Some(input);
358        self
359    }
360    /// <p>The amount of time that AppConfig monitored for alarms before considering the deployment to be complete and no longer eligible for automatic rollback.</p>
361    pub fn set_final_bake_time_in_minutes(mut self, input: ::std::option::Option<i32>) -> Self {
362        self.final_bake_time_in_minutes = input;
363        self
364    }
365    /// <p>The amount of time that AppConfig monitored for alarms before considering the deployment to be complete and no longer eligible for automatic rollback.</p>
366    pub fn get_final_bake_time_in_minutes(&self) -> &::std::option::Option<i32> {
367        &self.final_bake_time_in_minutes
368    }
369    /// <p>The state of the deployment.</p>
370    pub fn state(mut self, input: crate::types::DeploymentState) -> Self {
371        self.state = ::std::option::Option::Some(input);
372        self
373    }
374    /// <p>The state of the deployment.</p>
375    pub fn set_state(mut self, input: ::std::option::Option<crate::types::DeploymentState>) -> Self {
376        self.state = input;
377        self
378    }
379    /// <p>The state of the deployment.</p>
380    pub fn get_state(&self) -> &::std::option::Option<crate::types::DeploymentState> {
381        &self.state
382    }
383    /// Appends an item to `event_log`.
384    ///
385    /// To override the contents of this collection use [`set_event_log`](Self::set_event_log).
386    ///
387    /// <p>A list containing all events related to a deployment. The most recent events are displayed first.</p>
388    pub fn event_log(mut self, input: crate::types::DeploymentEvent) -> Self {
389        let mut v = self.event_log.unwrap_or_default();
390        v.push(input);
391        self.event_log = ::std::option::Option::Some(v);
392        self
393    }
394    /// <p>A list containing all events related to a deployment. The most recent events are displayed first.</p>
395    pub fn set_event_log(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::DeploymentEvent>>) -> Self {
396        self.event_log = input;
397        self
398    }
399    /// <p>A list containing all events related to a deployment. The most recent events are displayed first.</p>
400    pub fn get_event_log(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::DeploymentEvent>> {
401        &self.event_log
402    }
403    /// <p>The percentage of targets for which the deployment is available.</p>
404    pub fn percentage_complete(mut self, input: f32) -> Self {
405        self.percentage_complete = ::std::option::Option::Some(input);
406        self
407    }
408    /// <p>The percentage of targets for which the deployment is available.</p>
409    pub fn set_percentage_complete(mut self, input: ::std::option::Option<f32>) -> Self {
410        self.percentage_complete = input;
411        self
412    }
413    /// <p>The percentage of targets for which the deployment is available.</p>
414    pub fn get_percentage_complete(&self) -> &::std::option::Option<f32> {
415        &self.percentage_complete
416    }
417    /// <p>The time the deployment started.</p>
418    pub fn started_at(mut self, input: ::aws_smithy_types::DateTime) -> Self {
419        self.started_at = ::std::option::Option::Some(input);
420        self
421    }
422    /// <p>The time the deployment started.</p>
423    pub fn set_started_at(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
424        self.started_at = input;
425        self
426    }
427    /// <p>The time the deployment started.</p>
428    pub fn get_started_at(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
429        &self.started_at
430    }
431    /// <p>The time the deployment completed.</p>
432    pub fn completed_at(mut self, input: ::aws_smithy_types::DateTime) -> Self {
433        self.completed_at = ::std::option::Option::Some(input);
434        self
435    }
436    /// <p>The time the deployment completed.</p>
437    pub fn set_completed_at(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
438        self.completed_at = input;
439        self
440    }
441    /// <p>The time the deployment completed.</p>
442    pub fn get_completed_at(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
443        &self.completed_at
444    }
445    /// Appends an item to `applied_extensions`.
446    ///
447    /// To override the contents of this collection use [`set_applied_extensions`](Self::set_applied_extensions).
448    ///
449    /// <p>A list of extensions that were processed as part of the deployment. The extensions that were previously associated to the configuration profile, environment, or the application when <code>StartDeployment</code> was called.</p>
450    pub fn applied_extensions(mut self, input: crate::types::AppliedExtension) -> Self {
451        let mut v = self.applied_extensions.unwrap_or_default();
452        v.push(input);
453        self.applied_extensions = ::std::option::Option::Some(v);
454        self
455    }
456    /// <p>A list of extensions that were processed as part of the deployment. The extensions that were previously associated to the configuration profile, environment, or the application when <code>StartDeployment</code> was called.</p>
457    pub fn set_applied_extensions(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::AppliedExtension>>) -> Self {
458        self.applied_extensions = input;
459        self
460    }
461    /// <p>A list of extensions that were processed as part of the deployment. The extensions that were previously associated to the configuration profile, environment, or the application when <code>StartDeployment</code> was called.</p>
462    pub fn get_applied_extensions(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::AppliedExtension>> {
463        &self.applied_extensions
464    }
465    /// <p>The Amazon Resource Name of the Key Management Service key used to encrypt configuration data. You can encrypt secrets stored in Secrets Manager, Amazon Simple Storage Service (Amazon S3) objects encrypted with SSE-KMS, or secure string parameters stored in Amazon Web Services Systems Manager Parameter Store.</p>
466    pub fn kms_key_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
467        self.kms_key_arn = ::std::option::Option::Some(input.into());
468        self
469    }
470    /// <p>The Amazon Resource Name of the Key Management Service key used to encrypt configuration data. You can encrypt secrets stored in Secrets Manager, Amazon Simple Storage Service (Amazon S3) objects encrypted with SSE-KMS, or secure string parameters stored in Amazon Web Services Systems Manager Parameter Store.</p>
471    pub fn set_kms_key_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
472        self.kms_key_arn = input;
473        self
474    }
475    /// <p>The Amazon Resource Name of the Key Management Service key used to encrypt configuration data. You can encrypt secrets stored in Secrets Manager, Amazon Simple Storage Service (Amazon S3) objects encrypted with SSE-KMS, or secure string parameters stored in Amazon Web Services Systems Manager Parameter Store.</p>
476    pub fn get_kms_key_arn(&self) -> &::std::option::Option<::std::string::String> {
477        &self.kms_key_arn
478    }
479    /// <p>The Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated.</p>
480    pub fn kms_key_identifier(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
481        self.kms_key_identifier = ::std::option::Option::Some(input.into());
482        self
483    }
484    /// <p>The Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated.</p>
485    pub fn set_kms_key_identifier(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
486        self.kms_key_identifier = input;
487        self
488    }
489    /// <p>The Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated.</p>
490    pub fn get_kms_key_identifier(&self) -> &::std::option::Option<::std::string::String> {
491        &self.kms_key_identifier
492    }
493    /// <p>A user-defined label for an AppConfig hosted configuration version.</p>
494    pub fn version_label(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
495        self.version_label = ::std::option::Option::Some(input.into());
496        self
497    }
498    /// <p>A user-defined label for an AppConfig hosted configuration version.</p>
499    pub fn set_version_label(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
500        self.version_label = input;
501        self
502    }
503    /// <p>A user-defined label for an AppConfig hosted configuration version.</p>
504    pub fn get_version_label(&self) -> &::std::option::Option<::std::string::String> {
505        &self.version_label
506    }
507    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
508        self._request_id = Some(request_id.into());
509        self
510    }
511
512    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
513        self._request_id = request_id;
514        self
515    }
516    /// Consumes the builder and constructs a [`StartDeploymentOutput`](crate::operation::start_deployment::StartDeploymentOutput).
517    pub fn build(self) -> crate::operation::start_deployment::StartDeploymentOutput {
518        crate::operation::start_deployment::StartDeploymentOutput {
519            application_id: self.application_id,
520            environment_id: self.environment_id,
521            deployment_strategy_id: self.deployment_strategy_id,
522            configuration_profile_id: self.configuration_profile_id,
523            deployment_number: self.deployment_number.unwrap_or_default(),
524            configuration_name: self.configuration_name,
525            configuration_location_uri: self.configuration_location_uri,
526            configuration_version: self.configuration_version,
527            description: self.description,
528            deployment_duration_in_minutes: self.deployment_duration_in_minutes.unwrap_or_default(),
529            growth_type: self.growth_type,
530            growth_factor: self.growth_factor,
531            final_bake_time_in_minutes: self.final_bake_time_in_minutes.unwrap_or_default(),
532            state: self.state,
533            event_log: self.event_log,
534            percentage_complete: self.percentage_complete,
535            started_at: self.started_at,
536            completed_at: self.completed_at,
537            applied_extensions: self.applied_extensions,
538            kms_key_arn: self.kms_key_arn,
539            kms_key_identifier: self.kms_key_identifier,
540            version_label: self.version_label,
541            _request_id: self._request_id,
542        }
543    }
544}