aws_sdk_proton/operation/update_environment/
_update_environment_input.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)]
5pub struct UpdateEnvironmentInput {
6    /// <p>The name of the environment to update.</p>
7    pub name: ::std::option::Option<::std::string::String>,
8    /// <p>A description of the environment update.</p>
9    pub description: ::std::option::Option<::std::string::String>,
10    /// <p>The formatted specification that defines the update.</p>
11    pub spec: ::std::option::Option<::std::string::String>,
12    /// <p>The major version of the environment to update.</p>
13    pub template_major_version: ::std::option::Option<::std::string::String>,
14    /// <p>The minor version of the environment to update.</p>
15    pub template_minor_version: ::std::option::Option<::std::string::String>,
16    /// <p>The Amazon Resource Name (ARN) of the Proton service role that allows Proton to make API calls to other services your behalf.</p>
17    pub proton_service_role_arn: ::std::option::Option<::std::string::String>,
18    /// <p>There are four modes for updating an environment. The <code>deploymentType</code> field defines the mode.</p>
19    /// <dl>
20    /// <dt></dt>
21    /// <dd>
22    /// <p><code>NONE</code></p>
23    /// <p>In this mode, a deployment <i>doesn't</i> occur. Only the requested metadata parameters are updated.</p>
24    /// </dd>
25    /// <dt></dt>
26    /// <dd>
27    /// <p><code>CURRENT_VERSION</code></p>
28    /// <p>In this mode, the environment is deployed and updated with the new spec that you provide. Only requested parameters are updated. <i>Don’t</i> include major or minor version parameters when you use this <code>deployment-type</code>.</p>
29    /// </dd>
30    /// <dt></dt>
31    /// <dd>
32    /// <p><code>MINOR_VERSION</code></p>
33    /// <p>In this mode, the environment is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.</p>
34    /// </dd>
35    /// <dt></dt>
36    /// <dd>
37    /// <p><code>MAJOR_VERSION</code></p>
38    /// <p>In this mode, the environment is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that is higher than the major version in use and a minor version (optional).</p>
39    /// </dd>
40    /// </dl>
41    pub deployment_type: ::std::option::Option<crate::types::DeploymentUpdateType>,
42    /// <p>The ID of the environment account connection.</p>
43    /// <p>You can only update to a new environment account connection if it was created in the same environment account that the current environment account connection was created in and is associated with the current environment.</p>
44    pub environment_account_connection_id: ::std::option::Option<::std::string::String>,
45    /// <p>The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see <code>CreateRepository</code>.</p>
46    pub provisioning_repository: ::std::option::Option<crate::types::RepositoryBranchInput>,
47    /// <p>The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.</p>
48    /// <p>The environment must have a <code>componentRoleArn</code> to allow directly defined components to be associated with the environment.</p>
49    /// <p>For more information about components, see <a href="https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html">Proton components</a> in the <i>Proton User Guide</i>.</p>
50    pub component_role_arn: ::std::option::Option<::std::string::String>,
51    /// <p>The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.</p>
52    pub codebuild_role_arn: ::std::option::Option<::std::string::String>,
53}
54impl UpdateEnvironmentInput {
55    /// <p>The name of the environment to update.</p>
56    pub fn name(&self) -> ::std::option::Option<&str> {
57        self.name.as_deref()
58    }
59    /// <p>A description of the environment update.</p>
60    pub fn description(&self) -> ::std::option::Option<&str> {
61        self.description.as_deref()
62    }
63    /// <p>The formatted specification that defines the update.</p>
64    pub fn spec(&self) -> ::std::option::Option<&str> {
65        self.spec.as_deref()
66    }
67    /// <p>The major version of the environment to update.</p>
68    pub fn template_major_version(&self) -> ::std::option::Option<&str> {
69        self.template_major_version.as_deref()
70    }
71    /// <p>The minor version of the environment to update.</p>
72    pub fn template_minor_version(&self) -> ::std::option::Option<&str> {
73        self.template_minor_version.as_deref()
74    }
75    /// <p>The Amazon Resource Name (ARN) of the Proton service role that allows Proton to make API calls to other services your behalf.</p>
76    pub fn proton_service_role_arn(&self) -> ::std::option::Option<&str> {
77        self.proton_service_role_arn.as_deref()
78    }
79    /// <p>There are four modes for updating an environment. The <code>deploymentType</code> field defines the mode.</p>
80    /// <dl>
81    /// <dt></dt>
82    /// <dd>
83    /// <p><code>NONE</code></p>
84    /// <p>In this mode, a deployment <i>doesn't</i> occur. Only the requested metadata parameters are updated.</p>
85    /// </dd>
86    /// <dt></dt>
87    /// <dd>
88    /// <p><code>CURRENT_VERSION</code></p>
89    /// <p>In this mode, the environment is deployed and updated with the new spec that you provide. Only requested parameters are updated. <i>Don’t</i> include major or minor version parameters when you use this <code>deployment-type</code>.</p>
90    /// </dd>
91    /// <dt></dt>
92    /// <dd>
93    /// <p><code>MINOR_VERSION</code></p>
94    /// <p>In this mode, the environment is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.</p>
95    /// </dd>
96    /// <dt></dt>
97    /// <dd>
98    /// <p><code>MAJOR_VERSION</code></p>
99    /// <p>In this mode, the environment is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that is higher than the major version in use and a minor version (optional).</p>
100    /// </dd>
101    /// </dl>
102    pub fn deployment_type(&self) -> ::std::option::Option<&crate::types::DeploymentUpdateType> {
103        self.deployment_type.as_ref()
104    }
105    /// <p>The ID of the environment account connection.</p>
106    /// <p>You can only update to a new environment account connection if it was created in the same environment account that the current environment account connection was created in and is associated with the current environment.</p>
107    pub fn environment_account_connection_id(&self) -> ::std::option::Option<&str> {
108        self.environment_account_connection_id.as_deref()
109    }
110    /// <p>The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see <code>CreateRepository</code>.</p>
111    pub fn provisioning_repository(&self) -> ::std::option::Option<&crate::types::RepositoryBranchInput> {
112        self.provisioning_repository.as_ref()
113    }
114    /// <p>The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.</p>
115    /// <p>The environment must have a <code>componentRoleArn</code> to allow directly defined components to be associated with the environment.</p>
116    /// <p>For more information about components, see <a href="https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html">Proton components</a> in the <i>Proton User Guide</i>.</p>
117    pub fn component_role_arn(&self) -> ::std::option::Option<&str> {
118        self.component_role_arn.as_deref()
119    }
120    /// <p>The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.</p>
121    pub fn codebuild_role_arn(&self) -> ::std::option::Option<&str> {
122        self.codebuild_role_arn.as_deref()
123    }
124}
125impl ::std::fmt::Debug for UpdateEnvironmentInput {
126    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
127        let mut formatter = f.debug_struct("UpdateEnvironmentInput");
128        formatter.field("name", &self.name);
129        formatter.field("description", &"*** Sensitive Data Redacted ***");
130        formatter.field("spec", &"*** Sensitive Data Redacted ***");
131        formatter.field("template_major_version", &self.template_major_version);
132        formatter.field("template_minor_version", &self.template_minor_version);
133        formatter.field("proton_service_role_arn", &self.proton_service_role_arn);
134        formatter.field("deployment_type", &self.deployment_type);
135        formatter.field("environment_account_connection_id", &self.environment_account_connection_id);
136        formatter.field("provisioning_repository", &self.provisioning_repository);
137        formatter.field("component_role_arn", &self.component_role_arn);
138        formatter.field("codebuild_role_arn", &self.codebuild_role_arn);
139        formatter.finish()
140    }
141}
142impl UpdateEnvironmentInput {
143    /// Creates a new builder-style object to manufacture [`UpdateEnvironmentInput`](crate::operation::update_environment::UpdateEnvironmentInput).
144    pub fn builder() -> crate::operation::update_environment::builders::UpdateEnvironmentInputBuilder {
145        crate::operation::update_environment::builders::UpdateEnvironmentInputBuilder::default()
146    }
147}
148
149/// A builder for [`UpdateEnvironmentInput`](crate::operation::update_environment::UpdateEnvironmentInput).
150#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
151#[non_exhaustive]
152pub struct UpdateEnvironmentInputBuilder {
153    pub(crate) name: ::std::option::Option<::std::string::String>,
154    pub(crate) description: ::std::option::Option<::std::string::String>,
155    pub(crate) spec: ::std::option::Option<::std::string::String>,
156    pub(crate) template_major_version: ::std::option::Option<::std::string::String>,
157    pub(crate) template_minor_version: ::std::option::Option<::std::string::String>,
158    pub(crate) proton_service_role_arn: ::std::option::Option<::std::string::String>,
159    pub(crate) deployment_type: ::std::option::Option<crate::types::DeploymentUpdateType>,
160    pub(crate) environment_account_connection_id: ::std::option::Option<::std::string::String>,
161    pub(crate) provisioning_repository: ::std::option::Option<crate::types::RepositoryBranchInput>,
162    pub(crate) component_role_arn: ::std::option::Option<::std::string::String>,
163    pub(crate) codebuild_role_arn: ::std::option::Option<::std::string::String>,
164}
165impl UpdateEnvironmentInputBuilder {
166    /// <p>The name of the environment to update.</p>
167    /// This field is required.
168    pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
169        self.name = ::std::option::Option::Some(input.into());
170        self
171    }
172    /// <p>The name of the environment to update.</p>
173    pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
174        self.name = input;
175        self
176    }
177    /// <p>The name of the environment to update.</p>
178    pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
179        &self.name
180    }
181    /// <p>A description of the environment update.</p>
182    pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
183        self.description = ::std::option::Option::Some(input.into());
184        self
185    }
186    /// <p>A description of the environment update.</p>
187    pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
188        self.description = input;
189        self
190    }
191    /// <p>A description of the environment update.</p>
192    pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
193        &self.description
194    }
195    /// <p>The formatted specification that defines the update.</p>
196    pub fn spec(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
197        self.spec = ::std::option::Option::Some(input.into());
198        self
199    }
200    /// <p>The formatted specification that defines the update.</p>
201    pub fn set_spec(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
202        self.spec = input;
203        self
204    }
205    /// <p>The formatted specification that defines the update.</p>
206    pub fn get_spec(&self) -> &::std::option::Option<::std::string::String> {
207        &self.spec
208    }
209    /// <p>The major version of the environment to update.</p>
210    pub fn template_major_version(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
211        self.template_major_version = ::std::option::Option::Some(input.into());
212        self
213    }
214    /// <p>The major version of the environment to update.</p>
215    pub fn set_template_major_version(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
216        self.template_major_version = input;
217        self
218    }
219    /// <p>The major version of the environment to update.</p>
220    pub fn get_template_major_version(&self) -> &::std::option::Option<::std::string::String> {
221        &self.template_major_version
222    }
223    /// <p>The minor version of the environment to update.</p>
224    pub fn template_minor_version(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
225        self.template_minor_version = ::std::option::Option::Some(input.into());
226        self
227    }
228    /// <p>The minor version of the environment to update.</p>
229    pub fn set_template_minor_version(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
230        self.template_minor_version = input;
231        self
232    }
233    /// <p>The minor version of the environment to update.</p>
234    pub fn get_template_minor_version(&self) -> &::std::option::Option<::std::string::String> {
235        &self.template_minor_version
236    }
237    /// <p>The Amazon Resource Name (ARN) of the Proton service role that allows Proton to make API calls to other services your behalf.</p>
238    pub fn proton_service_role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
239        self.proton_service_role_arn = ::std::option::Option::Some(input.into());
240        self
241    }
242    /// <p>The Amazon Resource Name (ARN) of the Proton service role that allows Proton to make API calls to other services your behalf.</p>
243    pub fn set_proton_service_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
244        self.proton_service_role_arn = input;
245        self
246    }
247    /// <p>The Amazon Resource Name (ARN) of the Proton service role that allows Proton to make API calls to other services your behalf.</p>
248    pub fn get_proton_service_role_arn(&self) -> &::std::option::Option<::std::string::String> {
249        &self.proton_service_role_arn
250    }
251    /// <p>There are four modes for updating an environment. The <code>deploymentType</code> field defines the mode.</p>
252    /// <dl>
253    /// <dt></dt>
254    /// <dd>
255    /// <p><code>NONE</code></p>
256    /// <p>In this mode, a deployment <i>doesn't</i> occur. Only the requested metadata parameters are updated.</p>
257    /// </dd>
258    /// <dt></dt>
259    /// <dd>
260    /// <p><code>CURRENT_VERSION</code></p>
261    /// <p>In this mode, the environment is deployed and updated with the new spec that you provide. Only requested parameters are updated. <i>Don’t</i> include major or minor version parameters when you use this <code>deployment-type</code>.</p>
262    /// </dd>
263    /// <dt></dt>
264    /// <dd>
265    /// <p><code>MINOR_VERSION</code></p>
266    /// <p>In this mode, the environment is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.</p>
267    /// </dd>
268    /// <dt></dt>
269    /// <dd>
270    /// <p><code>MAJOR_VERSION</code></p>
271    /// <p>In this mode, the environment is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that is higher than the major version in use and a minor version (optional).</p>
272    /// </dd>
273    /// </dl>
274    /// This field is required.
275    pub fn deployment_type(mut self, input: crate::types::DeploymentUpdateType) -> Self {
276        self.deployment_type = ::std::option::Option::Some(input);
277        self
278    }
279    /// <p>There are four modes for updating an environment. The <code>deploymentType</code> field defines the mode.</p>
280    /// <dl>
281    /// <dt></dt>
282    /// <dd>
283    /// <p><code>NONE</code></p>
284    /// <p>In this mode, a deployment <i>doesn't</i> occur. Only the requested metadata parameters are updated.</p>
285    /// </dd>
286    /// <dt></dt>
287    /// <dd>
288    /// <p><code>CURRENT_VERSION</code></p>
289    /// <p>In this mode, the environment is deployed and updated with the new spec that you provide. Only requested parameters are updated. <i>Don’t</i> include major or minor version parameters when you use this <code>deployment-type</code>.</p>
290    /// </dd>
291    /// <dt></dt>
292    /// <dd>
293    /// <p><code>MINOR_VERSION</code></p>
294    /// <p>In this mode, the environment is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.</p>
295    /// </dd>
296    /// <dt></dt>
297    /// <dd>
298    /// <p><code>MAJOR_VERSION</code></p>
299    /// <p>In this mode, the environment is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that is higher than the major version in use and a minor version (optional).</p>
300    /// </dd>
301    /// </dl>
302    pub fn set_deployment_type(mut self, input: ::std::option::Option<crate::types::DeploymentUpdateType>) -> Self {
303        self.deployment_type = input;
304        self
305    }
306    /// <p>There are four modes for updating an environment. The <code>deploymentType</code> field defines the mode.</p>
307    /// <dl>
308    /// <dt></dt>
309    /// <dd>
310    /// <p><code>NONE</code></p>
311    /// <p>In this mode, a deployment <i>doesn't</i> occur. Only the requested metadata parameters are updated.</p>
312    /// </dd>
313    /// <dt></dt>
314    /// <dd>
315    /// <p><code>CURRENT_VERSION</code></p>
316    /// <p>In this mode, the environment is deployed and updated with the new spec that you provide. Only requested parameters are updated. <i>Don’t</i> include major or minor version parameters when you use this <code>deployment-type</code>.</p>
317    /// </dd>
318    /// <dt></dt>
319    /// <dd>
320    /// <p><code>MINOR_VERSION</code></p>
321    /// <p>In this mode, the environment is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.</p>
322    /// </dd>
323    /// <dt></dt>
324    /// <dd>
325    /// <p><code>MAJOR_VERSION</code></p>
326    /// <p>In this mode, the environment is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that is higher than the major version in use and a minor version (optional).</p>
327    /// </dd>
328    /// </dl>
329    pub fn get_deployment_type(&self) -> &::std::option::Option<crate::types::DeploymentUpdateType> {
330        &self.deployment_type
331    }
332    /// <p>The ID of the environment account connection.</p>
333    /// <p>You can only update to a new environment account connection if it was created in the same environment account that the current environment account connection was created in and is associated with the current environment.</p>
334    pub fn environment_account_connection_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
335        self.environment_account_connection_id = ::std::option::Option::Some(input.into());
336        self
337    }
338    /// <p>The ID of the environment account connection.</p>
339    /// <p>You can only update to a new environment account connection if it was created in the same environment account that the current environment account connection was created in and is associated with the current environment.</p>
340    pub fn set_environment_account_connection_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
341        self.environment_account_connection_id = input;
342        self
343    }
344    /// <p>The ID of the environment account connection.</p>
345    /// <p>You can only update to a new environment account connection if it was created in the same environment account that the current environment account connection was created in and is associated with the current environment.</p>
346    pub fn get_environment_account_connection_id(&self) -> &::std::option::Option<::std::string::String> {
347        &self.environment_account_connection_id
348    }
349    /// <p>The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see <code>CreateRepository</code>.</p>
350    pub fn provisioning_repository(mut self, input: crate::types::RepositoryBranchInput) -> Self {
351        self.provisioning_repository = ::std::option::Option::Some(input);
352        self
353    }
354    /// <p>The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see <code>CreateRepository</code>.</p>
355    pub fn set_provisioning_repository(mut self, input: ::std::option::Option<crate::types::RepositoryBranchInput>) -> Self {
356        self.provisioning_repository = input;
357        self
358    }
359    /// <p>The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see <code>CreateRepository</code>.</p>
360    pub fn get_provisioning_repository(&self) -> &::std::option::Option<crate::types::RepositoryBranchInput> {
361        &self.provisioning_repository
362    }
363    /// <p>The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.</p>
364    /// <p>The environment must have a <code>componentRoleArn</code> to allow directly defined components to be associated with the environment.</p>
365    /// <p>For more information about components, see <a href="https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html">Proton components</a> in the <i>Proton User Guide</i>.</p>
366    pub fn component_role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
367        self.component_role_arn = ::std::option::Option::Some(input.into());
368        self
369    }
370    /// <p>The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.</p>
371    /// <p>The environment must have a <code>componentRoleArn</code> to allow directly defined components to be associated with the environment.</p>
372    /// <p>For more information about components, see <a href="https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html">Proton components</a> in the <i>Proton User Guide</i>.</p>
373    pub fn set_component_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
374        self.component_role_arn = input;
375        self
376    }
377    /// <p>The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.</p>
378    /// <p>The environment must have a <code>componentRoleArn</code> to allow directly defined components to be associated with the environment.</p>
379    /// <p>For more information about components, see <a href="https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html">Proton components</a> in the <i>Proton User Guide</i>.</p>
380    pub fn get_component_role_arn(&self) -> &::std::option::Option<::std::string::String> {
381        &self.component_role_arn
382    }
383    /// <p>The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.</p>
384    pub fn codebuild_role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
385        self.codebuild_role_arn = ::std::option::Option::Some(input.into());
386        self
387    }
388    /// <p>The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.</p>
389    pub fn set_codebuild_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
390        self.codebuild_role_arn = input;
391        self
392    }
393    /// <p>The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.</p>
394    pub fn get_codebuild_role_arn(&self) -> &::std::option::Option<::std::string::String> {
395        &self.codebuild_role_arn
396    }
397    /// Consumes the builder and constructs a [`UpdateEnvironmentInput`](crate::operation::update_environment::UpdateEnvironmentInput).
398    pub fn build(
399        self,
400    ) -> ::std::result::Result<crate::operation::update_environment::UpdateEnvironmentInput, ::aws_smithy_types::error::operation::BuildError> {
401        ::std::result::Result::Ok(crate::operation::update_environment::UpdateEnvironmentInput {
402            name: self.name,
403            description: self.description,
404            spec: self.spec,
405            template_major_version: self.template_major_version,
406            template_minor_version: self.template_minor_version,
407            proton_service_role_arn: self.proton_service_role_arn,
408            deployment_type: self.deployment_type,
409            environment_account_connection_id: self.environment_account_connection_id,
410            provisioning_repository: self.provisioning_repository,
411            component_role_arn: self.component_role_arn,
412            codebuild_role_arn: self.codebuild_role_arn,
413        })
414    }
415}
416impl ::std::fmt::Debug for UpdateEnvironmentInputBuilder {
417    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
418        let mut formatter = f.debug_struct("UpdateEnvironmentInputBuilder");
419        formatter.field("name", &self.name);
420        formatter.field("description", &"*** Sensitive Data Redacted ***");
421        formatter.field("spec", &"*** Sensitive Data Redacted ***");
422        formatter.field("template_major_version", &self.template_major_version);
423        formatter.field("template_minor_version", &self.template_minor_version);
424        formatter.field("proton_service_role_arn", &self.proton_service_role_arn);
425        formatter.field("deployment_type", &self.deployment_type);
426        formatter.field("environment_account_connection_id", &self.environment_account_connection_id);
427        formatter.field("provisioning_repository", &self.provisioning_repository);
428        formatter.field("component_role_arn", &self.component_role_arn);
429        formatter.field("codebuild_role_arn", &self.codebuild_role_arn);
430        formatter.finish()
431    }
432}