Skip to main content

aws_sdk_codebuild/operation/start_build/
_start_build_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, ::std::fmt::Debug)]
5pub struct StartBuildInput {
6    /// <p>The name of the CodeBuild build project to start running a build.</p>
7    pub project_name: ::std::option::Option<::std::string::String>,
8    /// <p>An array of <code>ProjectSource</code> objects.</p>
9    pub secondary_sources_override: ::std::option::Option<::std::vec::Vec<crate::types::ProjectSource>>,
10    /// <p>An array of <code>ProjectSourceVersion</code> objects that specify one or more versions of the project's secondary sources to be used for this build only.</p>
11    pub secondary_sources_version_override: ::std::option::Option<::std::vec::Vec<crate::types::ProjectSourceVersion>>,
12    /// <p>The version of the build input to be built, for this build only. If not specified, the latest version is used. If specified, the contents depends on the source provider:</p>
13    /// <dl>
14    /// <dt>
15    /// CodeCommit
16    /// </dt>
17    /// <dd>
18    /// <p>The commit ID, branch, or Git tag to use.</p>
19    /// </dd>
20    /// <dt>
21    /// GitHub
22    /// </dt>
23    /// <dd>
24    /// <p>The commit ID, pull request ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a pull request ID is specified, it must use the format <code>pr/pull-request-ID</code> (for example <code>pr/25</code>). If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p>
25    /// </dd>
26    /// <dt>
27    /// GitLab
28    /// </dt>
29    /// <dd>
30    /// <p>The commit ID, branch, or Git tag to use.</p>
31    /// </dd>
32    /// <dt>
33    /// Bitbucket
34    /// </dt>
35    /// <dd>
36    /// <p>The commit ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p>
37    /// </dd>
38    /// <dt>
39    /// Amazon S3
40    /// </dt>
41    /// <dd>
42    /// <p>The version ID of the object that represents the build input ZIP file to use.</p>
43    /// </dd>
44    /// </dl>
45    /// <p>If <code>sourceVersion</code> is specified at the project level, then this <code>sourceVersion</code> (at the build level) takes precedence.</p>
46    /// <p>For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html">Source Version Sample with CodeBuild</a> in the <i>CodeBuild User Guide</i>.</p>
47    pub source_version: ::std::option::Option<::std::string::String>,
48    /// <p>Build output artifact settings that override, for this build only, the latest ones already defined in the build project.</p>
49    pub artifacts_override: ::std::option::Option<crate::types::ProjectArtifacts>,
50    /// <p>An array of <code>ProjectArtifacts</code> objects.</p>
51    pub secondary_artifacts_override: ::std::option::Option<::std::vec::Vec<crate::types::ProjectArtifacts>>,
52    /// <p>A set of environment variables that overrides, for this build only, the latest ones already defined in the build project.</p>
53    pub environment_variables_override: ::std::option::Option<::std::vec::Vec<crate::types::EnvironmentVariable>>,
54    /// <p>A source input type, for this build, that overrides the source input defined in the build project.</p>
55    pub source_type_override: ::std::option::Option<crate::types::SourceType>,
56    /// <p>A location that overrides, for this build, the source location for the one defined in the build project.</p>
57    pub source_location_override: ::std::option::Option<::std::string::String>,
58    /// <p>An authorization type for this build that overrides the one defined in the build project. This override applies only if the build project's source is BitBucket, GitHub, GitLab, or GitLab Self Managed.</p>
59    pub source_auth_override: ::std::option::Option<crate::types::SourceAuth>,
60    /// <p>The user-defined depth of history, with a minimum value of 0, that overrides, for this build only, any previous depth of history defined in the build project.</p>
61    pub git_clone_depth_override: ::std::option::Option<i32>,
62    /// <p>Information about the Git submodules configuration for this build of an CodeBuild build project.</p>
63    pub git_submodules_config_override: ::std::option::Option<crate::types::GitSubmodulesConfig>,
64    /// <p>A buildspec file declaration that overrides the latest one defined in the build project, for this build only. The buildspec defined on the project is not changed.</p>
65    /// <p>If this value is set, it can be either an inline buildspec definition, the path to an alternate buildspec file relative to the value of the built-in <code>CODEBUILD_SRC_DIR</code> environment variable, or the path to an S3 bucket. The bucket must be in the same Amazon Web Services Region as the build project. Specify the buildspec file using its ARN (for example, <code>arn:aws:s3:::my-codebuild-sample2/buildspec.yml</code>). If this value is not provided or is set to an empty string, the source code must contain a buildspec file in its root directory. For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-name-storage">Buildspec File Name and Storage Location</a>.</p><note>
66    /// <p>Since this property allows you to change the build commands that will run in the container, you should note that an IAM principal with the ability to call this API and set this parameter can override the default settings. Moreover, we encourage that you use a trustworthy buildspec location like a file in your source repository or a Amazon S3 bucket. Alternatively, you can restrict overrides to the buildspec by using a condition key: <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/action-context-keys.html#action-context-keys-example-overridebuildspec.html">Prevent unauthorized modifications to project buildspec</a>.</p>
67    /// </note>
68    pub buildspec_override: ::std::option::Option<::std::string::String>,
69    /// <p>Enable this flag to override the insecure SSL setting that is specified in the build project. The insecure SSL setting determines whether to ignore SSL warnings while connecting to the project source code. This override applies only if the build's source is GitHub Enterprise.</p>
70    pub insecure_ssl_override: ::std::option::Option<bool>,
71    /// <p>Set to true to report to your source provider the status of a build's start and completion. If you use this option with a source provider other than GitHub, GitHub Enterprise, GitLab, GitLab Self Managed, or Bitbucket, an <code>invalidInputException</code> is thrown.</p>
72    /// <p>To be able to report the build status to the source provider, the user associated with the source provider must have write access to the repo. If the user does not have write access, the build status cannot be updated. For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/access-tokens.html">Source provider access</a> in the <i>CodeBuild User Guide</i>.</p><note>
73    /// <p>The status of a build triggered by a webhook is always reported to your source provider.</p>
74    /// </note>
75    pub report_build_status_override: ::std::option::Option<bool>,
76    /// <p>Contains information that defines how the build project reports the build status to the source provider. This option is only used when the source provider is <code>GITHUB</code>, <code>GITHUB_ENTERPRISE</code>, or <code>BITBUCKET</code>.</p>
77    pub build_status_config_override: ::std::option::Option<crate::types::BuildStatusConfig>,
78    /// <p>A container type for this build that overrides the one specified in the build project.</p>
79    pub environment_type_override: ::std::option::Option<crate::types::EnvironmentType>,
80    /// <p>The name of an image for this build that overrides the one specified in the build project.</p>
81    pub image_override: ::std::option::Option<::std::string::String>,
82    /// <p>The name of a compute type for this build that overrides the one specified in the build project.</p>
83    pub compute_type_override: ::std::option::Option<crate::types::ComputeType>,
84    /// <p>The name of a certificate for this build that overrides the one specified in the build project.</p>
85    pub certificate_override: ::std::option::Option<::std::string::String>,
86    /// <p>A ProjectCache object specified for this build that overrides the one defined in the build project.</p>
87    pub cache_override: ::std::option::Option<crate::types::ProjectCache>,
88    /// <p>The name of a service role for this build that overrides the one specified in the build project.</p>
89    pub service_role_override: ::std::option::Option<::std::string::String>,
90    /// <p>Enable this flag to override privileged mode in the build project.</p>
91    pub privileged_mode_override: ::std::option::Option<bool>,
92    /// <p>The number of build timeout minutes, from 5 to 2160 (36 hours), that overrides, for this build only, the latest setting already defined in the build project.</p>
93    pub timeout_in_minutes_override: ::std::option::Option<i32>,
94    /// <p>The number of minutes a build is allowed to be queued before it times out.</p>
95    pub queued_timeout_in_minutes_override: ::std::option::Option<i32>,
96    /// <p>The Key Management Service customer master key (CMK) that overrides the one specified in the build project. The CMK key encrypts the build output artifacts.</p><note>
97    /// <p>You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to that key.</p>
98    /// </note>
99    /// <p>You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using the format <code>alias/<alias-name></alias-name></code>).</p>
100    pub encryption_key_override: ::std::option::Option<::std::string::String>,
101    /// <p>A unique, case sensitive identifier you provide to ensure the idempotency of the StartBuild request. The token is included in the StartBuild request and is valid for 5 minutes. If you repeat the StartBuild request with the same token, but change a parameter, CodeBuild returns a parameter mismatch error.</p>
102    pub idempotency_token: ::std::option::Option<::std::string::String>,
103    /// <p>Log settings for this build that override the log settings defined in the build project.</p>
104    pub logs_config_override: ::std::option::Option<crate::types::LogsConfig>,
105    /// <p>The credentials for access to a private registry.</p>
106    pub registry_credential_override: ::std::option::Option<crate::types::RegistryCredential>,
107    /// <p>The type of credentials CodeBuild uses to pull images in your build. There are two valid values:</p>
108    /// <dl>
109    /// <dt>
110    /// CODEBUILD
111    /// </dt>
112    /// <dd>
113    /// <p>Specifies that CodeBuild uses its own credentials. This requires that you modify your ECR repository policy to trust CodeBuild's service principal.</p>
114    /// </dd>
115    /// <dt>
116    /// SERVICE_ROLE
117    /// </dt>
118    /// <dd>
119    /// <p>Specifies that CodeBuild uses your build project's service role.</p>
120    /// </dd>
121    /// </dl>
122    /// <p>When using a cross-account or private registry image, you must use <code>SERVICE_ROLE</code> credentials. When using an CodeBuild curated image, you must use <code>CODEBUILD</code> credentials.</p>
123    pub image_pull_credentials_type_override: ::std::option::Option<crate::types::ImagePullCredentialsType>,
124    /// <p>Specifies if session debugging is enabled for this build. For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/session-manager.html">Viewing a running build in Session Manager</a>.</p>
125    pub debug_session_enabled: ::std::option::Option<bool>,
126    /// <p>A ProjectFleet object specified for this build that overrides the one defined in the build project.</p>
127    pub fleet_override: ::std::option::Option<crate::types::ProjectFleet>,
128    /// <p>The maximum number of additional automatic retries after a failed build. For example, if the auto-retry limit is set to 2, CodeBuild will call the <code>RetryBuild</code> API to automatically retry your build for up to 2 additional times.</p>
129    pub auto_retry_limit_override: ::std::option::Option<i32>,
130    /// <p>The host operating system kernel for this build that overrides the one specified in the build project.</p>
131    pub host_kernel_override: ::std::option::Option<crate::types::HostKernel>,
132}
133impl StartBuildInput {
134    /// <p>The name of the CodeBuild build project to start running a build.</p>
135    pub fn project_name(&self) -> ::std::option::Option<&str> {
136        self.project_name.as_deref()
137    }
138    /// <p>An array of <code>ProjectSource</code> objects.</p>
139    ///
140    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.secondary_sources_override.is_none()`.
141    pub fn secondary_sources_override(&self) -> &[crate::types::ProjectSource] {
142        self.secondary_sources_override.as_deref().unwrap_or_default()
143    }
144    /// <p>An array of <code>ProjectSourceVersion</code> objects that specify one or more versions of the project's secondary sources to be used for this build only.</p>
145    ///
146    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.secondary_sources_version_override.is_none()`.
147    pub fn secondary_sources_version_override(&self) -> &[crate::types::ProjectSourceVersion] {
148        self.secondary_sources_version_override.as_deref().unwrap_or_default()
149    }
150    /// <p>The version of the build input to be built, for this build only. If not specified, the latest version is used. If specified, the contents depends on the source provider:</p>
151    /// <dl>
152    /// <dt>
153    /// CodeCommit
154    /// </dt>
155    /// <dd>
156    /// <p>The commit ID, branch, or Git tag to use.</p>
157    /// </dd>
158    /// <dt>
159    /// GitHub
160    /// </dt>
161    /// <dd>
162    /// <p>The commit ID, pull request ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a pull request ID is specified, it must use the format <code>pr/pull-request-ID</code> (for example <code>pr/25</code>). If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p>
163    /// </dd>
164    /// <dt>
165    /// GitLab
166    /// </dt>
167    /// <dd>
168    /// <p>The commit ID, branch, or Git tag to use.</p>
169    /// </dd>
170    /// <dt>
171    /// Bitbucket
172    /// </dt>
173    /// <dd>
174    /// <p>The commit ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p>
175    /// </dd>
176    /// <dt>
177    /// Amazon S3
178    /// </dt>
179    /// <dd>
180    /// <p>The version ID of the object that represents the build input ZIP file to use.</p>
181    /// </dd>
182    /// </dl>
183    /// <p>If <code>sourceVersion</code> is specified at the project level, then this <code>sourceVersion</code> (at the build level) takes precedence.</p>
184    /// <p>For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html">Source Version Sample with CodeBuild</a> in the <i>CodeBuild User Guide</i>.</p>
185    pub fn source_version(&self) -> ::std::option::Option<&str> {
186        self.source_version.as_deref()
187    }
188    /// <p>Build output artifact settings that override, for this build only, the latest ones already defined in the build project.</p>
189    pub fn artifacts_override(&self) -> ::std::option::Option<&crate::types::ProjectArtifacts> {
190        self.artifacts_override.as_ref()
191    }
192    /// <p>An array of <code>ProjectArtifacts</code> objects.</p>
193    ///
194    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.secondary_artifacts_override.is_none()`.
195    pub fn secondary_artifacts_override(&self) -> &[crate::types::ProjectArtifacts] {
196        self.secondary_artifacts_override.as_deref().unwrap_or_default()
197    }
198    /// <p>A set of environment variables that overrides, for this build only, the latest ones already defined in the build project.</p>
199    ///
200    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.environment_variables_override.is_none()`.
201    pub fn environment_variables_override(&self) -> &[crate::types::EnvironmentVariable] {
202        self.environment_variables_override.as_deref().unwrap_or_default()
203    }
204    /// <p>A source input type, for this build, that overrides the source input defined in the build project.</p>
205    pub fn source_type_override(&self) -> ::std::option::Option<&crate::types::SourceType> {
206        self.source_type_override.as_ref()
207    }
208    /// <p>A location that overrides, for this build, the source location for the one defined in the build project.</p>
209    pub fn source_location_override(&self) -> ::std::option::Option<&str> {
210        self.source_location_override.as_deref()
211    }
212    /// <p>An authorization type for this build that overrides the one defined in the build project. This override applies only if the build project's source is BitBucket, GitHub, GitLab, or GitLab Self Managed.</p>
213    pub fn source_auth_override(&self) -> ::std::option::Option<&crate::types::SourceAuth> {
214        self.source_auth_override.as_ref()
215    }
216    /// <p>The user-defined depth of history, with a minimum value of 0, that overrides, for this build only, any previous depth of history defined in the build project.</p>
217    pub fn git_clone_depth_override(&self) -> ::std::option::Option<i32> {
218        self.git_clone_depth_override
219    }
220    /// <p>Information about the Git submodules configuration for this build of an CodeBuild build project.</p>
221    pub fn git_submodules_config_override(&self) -> ::std::option::Option<&crate::types::GitSubmodulesConfig> {
222        self.git_submodules_config_override.as_ref()
223    }
224    /// <p>A buildspec file declaration that overrides the latest one defined in the build project, for this build only. The buildspec defined on the project is not changed.</p>
225    /// <p>If this value is set, it can be either an inline buildspec definition, the path to an alternate buildspec file relative to the value of the built-in <code>CODEBUILD_SRC_DIR</code> environment variable, or the path to an S3 bucket. The bucket must be in the same Amazon Web Services Region as the build project. Specify the buildspec file using its ARN (for example, <code>arn:aws:s3:::my-codebuild-sample2/buildspec.yml</code>). If this value is not provided or is set to an empty string, the source code must contain a buildspec file in its root directory. For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-name-storage">Buildspec File Name and Storage Location</a>.</p><note>
226    /// <p>Since this property allows you to change the build commands that will run in the container, you should note that an IAM principal with the ability to call this API and set this parameter can override the default settings. Moreover, we encourage that you use a trustworthy buildspec location like a file in your source repository or a Amazon S3 bucket. Alternatively, you can restrict overrides to the buildspec by using a condition key: <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/action-context-keys.html#action-context-keys-example-overridebuildspec.html">Prevent unauthorized modifications to project buildspec</a>.</p>
227    /// </note>
228    pub fn buildspec_override(&self) -> ::std::option::Option<&str> {
229        self.buildspec_override.as_deref()
230    }
231    /// <p>Enable this flag to override the insecure SSL setting that is specified in the build project. The insecure SSL setting determines whether to ignore SSL warnings while connecting to the project source code. This override applies only if the build's source is GitHub Enterprise.</p>
232    pub fn insecure_ssl_override(&self) -> ::std::option::Option<bool> {
233        self.insecure_ssl_override
234    }
235    /// <p>Set to true to report to your source provider the status of a build's start and completion. If you use this option with a source provider other than GitHub, GitHub Enterprise, GitLab, GitLab Self Managed, or Bitbucket, an <code>invalidInputException</code> is thrown.</p>
236    /// <p>To be able to report the build status to the source provider, the user associated with the source provider must have write access to the repo. If the user does not have write access, the build status cannot be updated. For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/access-tokens.html">Source provider access</a> in the <i>CodeBuild User Guide</i>.</p><note>
237    /// <p>The status of a build triggered by a webhook is always reported to your source provider.</p>
238    /// </note>
239    pub fn report_build_status_override(&self) -> ::std::option::Option<bool> {
240        self.report_build_status_override
241    }
242    /// <p>Contains information that defines how the build project reports the build status to the source provider. This option is only used when the source provider is <code>GITHUB</code>, <code>GITHUB_ENTERPRISE</code>, or <code>BITBUCKET</code>.</p>
243    pub fn build_status_config_override(&self) -> ::std::option::Option<&crate::types::BuildStatusConfig> {
244        self.build_status_config_override.as_ref()
245    }
246    /// <p>A container type for this build that overrides the one specified in the build project.</p>
247    pub fn environment_type_override(&self) -> ::std::option::Option<&crate::types::EnvironmentType> {
248        self.environment_type_override.as_ref()
249    }
250    /// <p>The name of an image for this build that overrides the one specified in the build project.</p>
251    pub fn image_override(&self) -> ::std::option::Option<&str> {
252        self.image_override.as_deref()
253    }
254    /// <p>The name of a compute type for this build that overrides the one specified in the build project.</p>
255    pub fn compute_type_override(&self) -> ::std::option::Option<&crate::types::ComputeType> {
256        self.compute_type_override.as_ref()
257    }
258    /// <p>The name of a certificate for this build that overrides the one specified in the build project.</p>
259    pub fn certificate_override(&self) -> ::std::option::Option<&str> {
260        self.certificate_override.as_deref()
261    }
262    /// <p>A ProjectCache object specified for this build that overrides the one defined in the build project.</p>
263    pub fn cache_override(&self) -> ::std::option::Option<&crate::types::ProjectCache> {
264        self.cache_override.as_ref()
265    }
266    /// <p>The name of a service role for this build that overrides the one specified in the build project.</p>
267    pub fn service_role_override(&self) -> ::std::option::Option<&str> {
268        self.service_role_override.as_deref()
269    }
270    /// <p>Enable this flag to override privileged mode in the build project.</p>
271    pub fn privileged_mode_override(&self) -> ::std::option::Option<bool> {
272        self.privileged_mode_override
273    }
274    /// <p>The number of build timeout minutes, from 5 to 2160 (36 hours), that overrides, for this build only, the latest setting already defined in the build project.</p>
275    pub fn timeout_in_minutes_override(&self) -> ::std::option::Option<i32> {
276        self.timeout_in_minutes_override
277    }
278    /// <p>The number of minutes a build is allowed to be queued before it times out.</p>
279    pub fn queued_timeout_in_minutes_override(&self) -> ::std::option::Option<i32> {
280        self.queued_timeout_in_minutes_override
281    }
282    /// <p>The Key Management Service customer master key (CMK) that overrides the one specified in the build project. The CMK key encrypts the build output artifacts.</p><note>
283    /// <p>You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to that key.</p>
284    /// </note>
285    /// <p>You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using the format <code>alias/<alias-name></alias-name></code>).</p>
286    pub fn encryption_key_override(&self) -> ::std::option::Option<&str> {
287        self.encryption_key_override.as_deref()
288    }
289    /// <p>A unique, case sensitive identifier you provide to ensure the idempotency of the StartBuild request. The token is included in the StartBuild request and is valid for 5 minutes. If you repeat the StartBuild request with the same token, but change a parameter, CodeBuild returns a parameter mismatch error.</p>
290    pub fn idempotency_token(&self) -> ::std::option::Option<&str> {
291        self.idempotency_token.as_deref()
292    }
293    /// <p>Log settings for this build that override the log settings defined in the build project.</p>
294    pub fn logs_config_override(&self) -> ::std::option::Option<&crate::types::LogsConfig> {
295        self.logs_config_override.as_ref()
296    }
297    /// <p>The credentials for access to a private registry.</p>
298    pub fn registry_credential_override(&self) -> ::std::option::Option<&crate::types::RegistryCredential> {
299        self.registry_credential_override.as_ref()
300    }
301    /// <p>The type of credentials CodeBuild uses to pull images in your build. There are two valid values:</p>
302    /// <dl>
303    /// <dt>
304    /// CODEBUILD
305    /// </dt>
306    /// <dd>
307    /// <p>Specifies that CodeBuild uses its own credentials. This requires that you modify your ECR repository policy to trust CodeBuild's service principal.</p>
308    /// </dd>
309    /// <dt>
310    /// SERVICE_ROLE
311    /// </dt>
312    /// <dd>
313    /// <p>Specifies that CodeBuild uses your build project's service role.</p>
314    /// </dd>
315    /// </dl>
316    /// <p>When using a cross-account or private registry image, you must use <code>SERVICE_ROLE</code> credentials. When using an CodeBuild curated image, you must use <code>CODEBUILD</code> credentials.</p>
317    pub fn image_pull_credentials_type_override(&self) -> ::std::option::Option<&crate::types::ImagePullCredentialsType> {
318        self.image_pull_credentials_type_override.as_ref()
319    }
320    /// <p>Specifies if session debugging is enabled for this build. For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/session-manager.html">Viewing a running build in Session Manager</a>.</p>
321    pub fn debug_session_enabled(&self) -> ::std::option::Option<bool> {
322        self.debug_session_enabled
323    }
324    /// <p>A ProjectFleet object specified for this build that overrides the one defined in the build project.</p>
325    pub fn fleet_override(&self) -> ::std::option::Option<&crate::types::ProjectFleet> {
326        self.fleet_override.as_ref()
327    }
328    /// <p>The maximum number of additional automatic retries after a failed build. For example, if the auto-retry limit is set to 2, CodeBuild will call the <code>RetryBuild</code> API to automatically retry your build for up to 2 additional times.</p>
329    pub fn auto_retry_limit_override(&self) -> ::std::option::Option<i32> {
330        self.auto_retry_limit_override
331    }
332    /// <p>The host operating system kernel for this build that overrides the one specified in the build project.</p>
333    pub fn host_kernel_override(&self) -> ::std::option::Option<&crate::types::HostKernel> {
334        self.host_kernel_override.as_ref()
335    }
336}
337impl StartBuildInput {
338    /// Creates a new builder-style object to manufacture [`StartBuildInput`](crate::operation::start_build::StartBuildInput).
339    pub fn builder() -> crate::operation::start_build::builders::StartBuildInputBuilder {
340        crate::operation::start_build::builders::StartBuildInputBuilder::default()
341    }
342}
343
344/// A builder for [`StartBuildInput`](crate::operation::start_build::StartBuildInput).
345#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
346#[non_exhaustive]
347pub struct StartBuildInputBuilder {
348    pub(crate) project_name: ::std::option::Option<::std::string::String>,
349    pub(crate) secondary_sources_override: ::std::option::Option<::std::vec::Vec<crate::types::ProjectSource>>,
350    pub(crate) secondary_sources_version_override: ::std::option::Option<::std::vec::Vec<crate::types::ProjectSourceVersion>>,
351    pub(crate) source_version: ::std::option::Option<::std::string::String>,
352    pub(crate) artifacts_override: ::std::option::Option<crate::types::ProjectArtifacts>,
353    pub(crate) secondary_artifacts_override: ::std::option::Option<::std::vec::Vec<crate::types::ProjectArtifacts>>,
354    pub(crate) environment_variables_override: ::std::option::Option<::std::vec::Vec<crate::types::EnvironmentVariable>>,
355    pub(crate) source_type_override: ::std::option::Option<crate::types::SourceType>,
356    pub(crate) source_location_override: ::std::option::Option<::std::string::String>,
357    pub(crate) source_auth_override: ::std::option::Option<crate::types::SourceAuth>,
358    pub(crate) git_clone_depth_override: ::std::option::Option<i32>,
359    pub(crate) git_submodules_config_override: ::std::option::Option<crate::types::GitSubmodulesConfig>,
360    pub(crate) buildspec_override: ::std::option::Option<::std::string::String>,
361    pub(crate) insecure_ssl_override: ::std::option::Option<bool>,
362    pub(crate) report_build_status_override: ::std::option::Option<bool>,
363    pub(crate) build_status_config_override: ::std::option::Option<crate::types::BuildStatusConfig>,
364    pub(crate) environment_type_override: ::std::option::Option<crate::types::EnvironmentType>,
365    pub(crate) image_override: ::std::option::Option<::std::string::String>,
366    pub(crate) compute_type_override: ::std::option::Option<crate::types::ComputeType>,
367    pub(crate) certificate_override: ::std::option::Option<::std::string::String>,
368    pub(crate) cache_override: ::std::option::Option<crate::types::ProjectCache>,
369    pub(crate) service_role_override: ::std::option::Option<::std::string::String>,
370    pub(crate) privileged_mode_override: ::std::option::Option<bool>,
371    pub(crate) timeout_in_minutes_override: ::std::option::Option<i32>,
372    pub(crate) queued_timeout_in_minutes_override: ::std::option::Option<i32>,
373    pub(crate) encryption_key_override: ::std::option::Option<::std::string::String>,
374    pub(crate) idempotency_token: ::std::option::Option<::std::string::String>,
375    pub(crate) logs_config_override: ::std::option::Option<crate::types::LogsConfig>,
376    pub(crate) registry_credential_override: ::std::option::Option<crate::types::RegistryCredential>,
377    pub(crate) image_pull_credentials_type_override: ::std::option::Option<crate::types::ImagePullCredentialsType>,
378    pub(crate) debug_session_enabled: ::std::option::Option<bool>,
379    pub(crate) fleet_override: ::std::option::Option<crate::types::ProjectFleet>,
380    pub(crate) auto_retry_limit_override: ::std::option::Option<i32>,
381    pub(crate) host_kernel_override: ::std::option::Option<crate::types::HostKernel>,
382}
383impl StartBuildInputBuilder {
384    /// <p>The name of the CodeBuild build project to start running a build.</p>
385    /// This field is required.
386    pub fn project_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
387        self.project_name = ::std::option::Option::Some(input.into());
388        self
389    }
390    /// <p>The name of the CodeBuild build project to start running a build.</p>
391    pub fn set_project_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
392        self.project_name = input;
393        self
394    }
395    /// <p>The name of the CodeBuild build project to start running a build.</p>
396    pub fn get_project_name(&self) -> &::std::option::Option<::std::string::String> {
397        &self.project_name
398    }
399    /// Appends an item to `secondary_sources_override`.
400    ///
401    /// To override the contents of this collection use [`set_secondary_sources_override`](Self::set_secondary_sources_override).
402    ///
403    /// <p>An array of <code>ProjectSource</code> objects.</p>
404    pub fn secondary_sources_override(mut self, input: crate::types::ProjectSource) -> Self {
405        let mut v = self.secondary_sources_override.unwrap_or_default();
406        v.push(input);
407        self.secondary_sources_override = ::std::option::Option::Some(v);
408        self
409    }
410    /// <p>An array of <code>ProjectSource</code> objects.</p>
411    pub fn set_secondary_sources_override(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::ProjectSource>>) -> Self {
412        self.secondary_sources_override = input;
413        self
414    }
415    /// <p>An array of <code>ProjectSource</code> objects.</p>
416    pub fn get_secondary_sources_override(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ProjectSource>> {
417        &self.secondary_sources_override
418    }
419    /// Appends an item to `secondary_sources_version_override`.
420    ///
421    /// To override the contents of this collection use [`set_secondary_sources_version_override`](Self::set_secondary_sources_version_override).
422    ///
423    /// <p>An array of <code>ProjectSourceVersion</code> objects that specify one or more versions of the project's secondary sources to be used for this build only.</p>
424    pub fn secondary_sources_version_override(mut self, input: crate::types::ProjectSourceVersion) -> Self {
425        let mut v = self.secondary_sources_version_override.unwrap_or_default();
426        v.push(input);
427        self.secondary_sources_version_override = ::std::option::Option::Some(v);
428        self
429    }
430    /// <p>An array of <code>ProjectSourceVersion</code> objects that specify one or more versions of the project's secondary sources to be used for this build only.</p>
431    pub fn set_secondary_sources_version_override(
432        mut self,
433        input: ::std::option::Option<::std::vec::Vec<crate::types::ProjectSourceVersion>>,
434    ) -> Self {
435        self.secondary_sources_version_override = input;
436        self
437    }
438    /// <p>An array of <code>ProjectSourceVersion</code> objects that specify one or more versions of the project's secondary sources to be used for this build only.</p>
439    pub fn get_secondary_sources_version_override(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ProjectSourceVersion>> {
440        &self.secondary_sources_version_override
441    }
442    /// <p>The version of the build input to be built, for this build only. If not specified, the latest version is used. If specified, the contents depends on the source provider:</p>
443    /// <dl>
444    /// <dt>
445    /// CodeCommit
446    /// </dt>
447    /// <dd>
448    /// <p>The commit ID, branch, or Git tag to use.</p>
449    /// </dd>
450    /// <dt>
451    /// GitHub
452    /// </dt>
453    /// <dd>
454    /// <p>The commit ID, pull request ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a pull request ID is specified, it must use the format <code>pr/pull-request-ID</code> (for example <code>pr/25</code>). If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p>
455    /// </dd>
456    /// <dt>
457    /// GitLab
458    /// </dt>
459    /// <dd>
460    /// <p>The commit ID, branch, or Git tag to use.</p>
461    /// </dd>
462    /// <dt>
463    /// Bitbucket
464    /// </dt>
465    /// <dd>
466    /// <p>The commit ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p>
467    /// </dd>
468    /// <dt>
469    /// Amazon S3
470    /// </dt>
471    /// <dd>
472    /// <p>The version ID of the object that represents the build input ZIP file to use.</p>
473    /// </dd>
474    /// </dl>
475    /// <p>If <code>sourceVersion</code> is specified at the project level, then this <code>sourceVersion</code> (at the build level) takes precedence.</p>
476    /// <p>For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html">Source Version Sample with CodeBuild</a> in the <i>CodeBuild User Guide</i>.</p>
477    pub fn source_version(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
478        self.source_version = ::std::option::Option::Some(input.into());
479        self
480    }
481    /// <p>The version of the build input to be built, for this build only. If not specified, the latest version is used. If specified, the contents depends on the source provider:</p>
482    /// <dl>
483    /// <dt>
484    /// CodeCommit
485    /// </dt>
486    /// <dd>
487    /// <p>The commit ID, branch, or Git tag to use.</p>
488    /// </dd>
489    /// <dt>
490    /// GitHub
491    /// </dt>
492    /// <dd>
493    /// <p>The commit ID, pull request ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a pull request ID is specified, it must use the format <code>pr/pull-request-ID</code> (for example <code>pr/25</code>). If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p>
494    /// </dd>
495    /// <dt>
496    /// GitLab
497    /// </dt>
498    /// <dd>
499    /// <p>The commit ID, branch, or Git tag to use.</p>
500    /// </dd>
501    /// <dt>
502    /// Bitbucket
503    /// </dt>
504    /// <dd>
505    /// <p>The commit ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p>
506    /// </dd>
507    /// <dt>
508    /// Amazon S3
509    /// </dt>
510    /// <dd>
511    /// <p>The version ID of the object that represents the build input ZIP file to use.</p>
512    /// </dd>
513    /// </dl>
514    /// <p>If <code>sourceVersion</code> is specified at the project level, then this <code>sourceVersion</code> (at the build level) takes precedence.</p>
515    /// <p>For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html">Source Version Sample with CodeBuild</a> in the <i>CodeBuild User Guide</i>.</p>
516    pub fn set_source_version(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
517        self.source_version = input;
518        self
519    }
520    /// <p>The version of the build input to be built, for this build only. If not specified, the latest version is used. If specified, the contents depends on the source provider:</p>
521    /// <dl>
522    /// <dt>
523    /// CodeCommit
524    /// </dt>
525    /// <dd>
526    /// <p>The commit ID, branch, or Git tag to use.</p>
527    /// </dd>
528    /// <dt>
529    /// GitHub
530    /// </dt>
531    /// <dd>
532    /// <p>The commit ID, pull request ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a pull request ID is specified, it must use the format <code>pr/pull-request-ID</code> (for example <code>pr/25</code>). If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p>
533    /// </dd>
534    /// <dt>
535    /// GitLab
536    /// </dt>
537    /// <dd>
538    /// <p>The commit ID, branch, or Git tag to use.</p>
539    /// </dd>
540    /// <dt>
541    /// Bitbucket
542    /// </dt>
543    /// <dd>
544    /// <p>The commit ID, branch name, or tag name that corresponds to the version of the source code you want to build. If a branch name is specified, the branch's HEAD commit ID is used. If not specified, the default branch's HEAD commit ID is used.</p>
545    /// </dd>
546    /// <dt>
547    /// Amazon S3
548    /// </dt>
549    /// <dd>
550    /// <p>The version ID of the object that represents the build input ZIP file to use.</p>
551    /// </dd>
552    /// </dl>
553    /// <p>If <code>sourceVersion</code> is specified at the project level, then this <code>sourceVersion</code> (at the build level) takes precedence.</p>
554    /// <p>For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/sample-source-version.html">Source Version Sample with CodeBuild</a> in the <i>CodeBuild User Guide</i>.</p>
555    pub fn get_source_version(&self) -> &::std::option::Option<::std::string::String> {
556        &self.source_version
557    }
558    /// <p>Build output artifact settings that override, for this build only, the latest ones already defined in the build project.</p>
559    pub fn artifacts_override(mut self, input: crate::types::ProjectArtifacts) -> Self {
560        self.artifacts_override = ::std::option::Option::Some(input);
561        self
562    }
563    /// <p>Build output artifact settings that override, for this build only, the latest ones already defined in the build project.</p>
564    pub fn set_artifacts_override(mut self, input: ::std::option::Option<crate::types::ProjectArtifacts>) -> Self {
565        self.artifacts_override = input;
566        self
567    }
568    /// <p>Build output artifact settings that override, for this build only, the latest ones already defined in the build project.</p>
569    pub fn get_artifacts_override(&self) -> &::std::option::Option<crate::types::ProjectArtifacts> {
570        &self.artifacts_override
571    }
572    /// Appends an item to `secondary_artifacts_override`.
573    ///
574    /// To override the contents of this collection use [`set_secondary_artifacts_override`](Self::set_secondary_artifacts_override).
575    ///
576    /// <p>An array of <code>ProjectArtifacts</code> objects.</p>
577    pub fn secondary_artifacts_override(mut self, input: crate::types::ProjectArtifacts) -> Self {
578        let mut v = self.secondary_artifacts_override.unwrap_or_default();
579        v.push(input);
580        self.secondary_artifacts_override = ::std::option::Option::Some(v);
581        self
582    }
583    /// <p>An array of <code>ProjectArtifacts</code> objects.</p>
584    pub fn set_secondary_artifacts_override(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::ProjectArtifacts>>) -> Self {
585        self.secondary_artifacts_override = input;
586        self
587    }
588    /// <p>An array of <code>ProjectArtifacts</code> objects.</p>
589    pub fn get_secondary_artifacts_override(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ProjectArtifacts>> {
590        &self.secondary_artifacts_override
591    }
592    /// Appends an item to `environment_variables_override`.
593    ///
594    /// To override the contents of this collection use [`set_environment_variables_override`](Self::set_environment_variables_override).
595    ///
596    /// <p>A set of environment variables that overrides, for this build only, the latest ones already defined in the build project.</p>
597    pub fn environment_variables_override(mut self, input: crate::types::EnvironmentVariable) -> Self {
598        let mut v = self.environment_variables_override.unwrap_or_default();
599        v.push(input);
600        self.environment_variables_override = ::std::option::Option::Some(v);
601        self
602    }
603    /// <p>A set of environment variables that overrides, for this build only, the latest ones already defined in the build project.</p>
604    pub fn set_environment_variables_override(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::EnvironmentVariable>>) -> Self {
605        self.environment_variables_override = input;
606        self
607    }
608    /// <p>A set of environment variables that overrides, for this build only, the latest ones already defined in the build project.</p>
609    pub fn get_environment_variables_override(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::EnvironmentVariable>> {
610        &self.environment_variables_override
611    }
612    /// <p>A source input type, for this build, that overrides the source input defined in the build project.</p>
613    pub fn source_type_override(mut self, input: crate::types::SourceType) -> Self {
614        self.source_type_override = ::std::option::Option::Some(input);
615        self
616    }
617    /// <p>A source input type, for this build, that overrides the source input defined in the build project.</p>
618    pub fn set_source_type_override(mut self, input: ::std::option::Option<crate::types::SourceType>) -> Self {
619        self.source_type_override = input;
620        self
621    }
622    /// <p>A source input type, for this build, that overrides the source input defined in the build project.</p>
623    pub fn get_source_type_override(&self) -> &::std::option::Option<crate::types::SourceType> {
624        &self.source_type_override
625    }
626    /// <p>A location that overrides, for this build, the source location for the one defined in the build project.</p>
627    pub fn source_location_override(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
628        self.source_location_override = ::std::option::Option::Some(input.into());
629        self
630    }
631    /// <p>A location that overrides, for this build, the source location for the one defined in the build project.</p>
632    pub fn set_source_location_override(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
633        self.source_location_override = input;
634        self
635    }
636    /// <p>A location that overrides, for this build, the source location for the one defined in the build project.</p>
637    pub fn get_source_location_override(&self) -> &::std::option::Option<::std::string::String> {
638        &self.source_location_override
639    }
640    /// <p>An authorization type for this build that overrides the one defined in the build project. This override applies only if the build project's source is BitBucket, GitHub, GitLab, or GitLab Self Managed.</p>
641    pub fn source_auth_override(mut self, input: crate::types::SourceAuth) -> Self {
642        self.source_auth_override = ::std::option::Option::Some(input);
643        self
644    }
645    /// <p>An authorization type for this build that overrides the one defined in the build project. This override applies only if the build project's source is BitBucket, GitHub, GitLab, or GitLab Self Managed.</p>
646    pub fn set_source_auth_override(mut self, input: ::std::option::Option<crate::types::SourceAuth>) -> Self {
647        self.source_auth_override = input;
648        self
649    }
650    /// <p>An authorization type for this build that overrides the one defined in the build project. This override applies only if the build project's source is BitBucket, GitHub, GitLab, or GitLab Self Managed.</p>
651    pub fn get_source_auth_override(&self) -> &::std::option::Option<crate::types::SourceAuth> {
652        &self.source_auth_override
653    }
654    /// <p>The user-defined depth of history, with a minimum value of 0, that overrides, for this build only, any previous depth of history defined in the build project.</p>
655    pub fn git_clone_depth_override(mut self, input: i32) -> Self {
656        self.git_clone_depth_override = ::std::option::Option::Some(input);
657        self
658    }
659    /// <p>The user-defined depth of history, with a minimum value of 0, that overrides, for this build only, any previous depth of history defined in the build project.</p>
660    pub fn set_git_clone_depth_override(mut self, input: ::std::option::Option<i32>) -> Self {
661        self.git_clone_depth_override = input;
662        self
663    }
664    /// <p>The user-defined depth of history, with a minimum value of 0, that overrides, for this build only, any previous depth of history defined in the build project.</p>
665    pub fn get_git_clone_depth_override(&self) -> &::std::option::Option<i32> {
666        &self.git_clone_depth_override
667    }
668    /// <p>Information about the Git submodules configuration for this build of an CodeBuild build project.</p>
669    pub fn git_submodules_config_override(mut self, input: crate::types::GitSubmodulesConfig) -> Self {
670        self.git_submodules_config_override = ::std::option::Option::Some(input);
671        self
672    }
673    /// <p>Information about the Git submodules configuration for this build of an CodeBuild build project.</p>
674    pub fn set_git_submodules_config_override(mut self, input: ::std::option::Option<crate::types::GitSubmodulesConfig>) -> Self {
675        self.git_submodules_config_override = input;
676        self
677    }
678    /// <p>Information about the Git submodules configuration for this build of an CodeBuild build project.</p>
679    pub fn get_git_submodules_config_override(&self) -> &::std::option::Option<crate::types::GitSubmodulesConfig> {
680        &self.git_submodules_config_override
681    }
682    /// <p>A buildspec file declaration that overrides the latest one defined in the build project, for this build only. The buildspec defined on the project is not changed.</p>
683    /// <p>If this value is set, it can be either an inline buildspec definition, the path to an alternate buildspec file relative to the value of the built-in <code>CODEBUILD_SRC_DIR</code> environment variable, or the path to an S3 bucket. The bucket must be in the same Amazon Web Services Region as the build project. Specify the buildspec file using its ARN (for example, <code>arn:aws:s3:::my-codebuild-sample2/buildspec.yml</code>). If this value is not provided or is set to an empty string, the source code must contain a buildspec file in its root directory. For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-name-storage">Buildspec File Name and Storage Location</a>.</p><note>
684    /// <p>Since this property allows you to change the build commands that will run in the container, you should note that an IAM principal with the ability to call this API and set this parameter can override the default settings. Moreover, we encourage that you use a trustworthy buildspec location like a file in your source repository or a Amazon S3 bucket. Alternatively, you can restrict overrides to the buildspec by using a condition key: <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/action-context-keys.html#action-context-keys-example-overridebuildspec.html">Prevent unauthorized modifications to project buildspec</a>.</p>
685    /// </note>
686    pub fn buildspec_override(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
687        self.buildspec_override = ::std::option::Option::Some(input.into());
688        self
689    }
690    /// <p>A buildspec file declaration that overrides the latest one defined in the build project, for this build only. The buildspec defined on the project is not changed.</p>
691    /// <p>If this value is set, it can be either an inline buildspec definition, the path to an alternate buildspec file relative to the value of the built-in <code>CODEBUILD_SRC_DIR</code> environment variable, or the path to an S3 bucket. The bucket must be in the same Amazon Web Services Region as the build project. Specify the buildspec file using its ARN (for example, <code>arn:aws:s3:::my-codebuild-sample2/buildspec.yml</code>). If this value is not provided or is set to an empty string, the source code must contain a buildspec file in its root directory. For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-name-storage">Buildspec File Name and Storage Location</a>.</p><note>
692    /// <p>Since this property allows you to change the build commands that will run in the container, you should note that an IAM principal with the ability to call this API and set this parameter can override the default settings. Moreover, we encourage that you use a trustworthy buildspec location like a file in your source repository or a Amazon S3 bucket. Alternatively, you can restrict overrides to the buildspec by using a condition key: <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/action-context-keys.html#action-context-keys-example-overridebuildspec.html">Prevent unauthorized modifications to project buildspec</a>.</p>
693    /// </note>
694    pub fn set_buildspec_override(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
695        self.buildspec_override = input;
696        self
697    }
698    /// <p>A buildspec file declaration that overrides the latest one defined in the build project, for this build only. The buildspec defined on the project is not changed.</p>
699    /// <p>If this value is set, it can be either an inline buildspec definition, the path to an alternate buildspec file relative to the value of the built-in <code>CODEBUILD_SRC_DIR</code> environment variable, or the path to an S3 bucket. The bucket must be in the same Amazon Web Services Region as the build project. Specify the buildspec file using its ARN (for example, <code>arn:aws:s3:::my-codebuild-sample2/buildspec.yml</code>). If this value is not provided or is set to an empty string, the source code must contain a buildspec file in its root directory. For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-name-storage">Buildspec File Name and Storage Location</a>.</p><note>
700    /// <p>Since this property allows you to change the build commands that will run in the container, you should note that an IAM principal with the ability to call this API and set this parameter can override the default settings. Moreover, we encourage that you use a trustworthy buildspec location like a file in your source repository or a Amazon S3 bucket. Alternatively, you can restrict overrides to the buildspec by using a condition key: <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/action-context-keys.html#action-context-keys-example-overridebuildspec.html">Prevent unauthorized modifications to project buildspec</a>.</p>
701    /// </note>
702    pub fn get_buildspec_override(&self) -> &::std::option::Option<::std::string::String> {
703        &self.buildspec_override
704    }
705    /// <p>Enable this flag to override the insecure SSL setting that is specified in the build project. The insecure SSL setting determines whether to ignore SSL warnings while connecting to the project source code. This override applies only if the build's source is GitHub Enterprise.</p>
706    pub fn insecure_ssl_override(mut self, input: bool) -> Self {
707        self.insecure_ssl_override = ::std::option::Option::Some(input);
708        self
709    }
710    /// <p>Enable this flag to override the insecure SSL setting that is specified in the build project. The insecure SSL setting determines whether to ignore SSL warnings while connecting to the project source code. This override applies only if the build's source is GitHub Enterprise.</p>
711    pub fn set_insecure_ssl_override(mut self, input: ::std::option::Option<bool>) -> Self {
712        self.insecure_ssl_override = input;
713        self
714    }
715    /// <p>Enable this flag to override the insecure SSL setting that is specified in the build project. The insecure SSL setting determines whether to ignore SSL warnings while connecting to the project source code. This override applies only if the build's source is GitHub Enterprise.</p>
716    pub fn get_insecure_ssl_override(&self) -> &::std::option::Option<bool> {
717        &self.insecure_ssl_override
718    }
719    /// <p>Set to true to report to your source provider the status of a build's start and completion. If you use this option with a source provider other than GitHub, GitHub Enterprise, GitLab, GitLab Self Managed, or Bitbucket, an <code>invalidInputException</code> is thrown.</p>
720    /// <p>To be able to report the build status to the source provider, the user associated with the source provider must have write access to the repo. If the user does not have write access, the build status cannot be updated. For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/access-tokens.html">Source provider access</a> in the <i>CodeBuild User Guide</i>.</p><note>
721    /// <p>The status of a build triggered by a webhook is always reported to your source provider.</p>
722    /// </note>
723    pub fn report_build_status_override(mut self, input: bool) -> Self {
724        self.report_build_status_override = ::std::option::Option::Some(input);
725        self
726    }
727    /// <p>Set to true to report to your source provider the status of a build's start and completion. If you use this option with a source provider other than GitHub, GitHub Enterprise, GitLab, GitLab Self Managed, or Bitbucket, an <code>invalidInputException</code> is thrown.</p>
728    /// <p>To be able to report the build status to the source provider, the user associated with the source provider must have write access to the repo. If the user does not have write access, the build status cannot be updated. For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/access-tokens.html">Source provider access</a> in the <i>CodeBuild User Guide</i>.</p><note>
729    /// <p>The status of a build triggered by a webhook is always reported to your source provider.</p>
730    /// </note>
731    pub fn set_report_build_status_override(mut self, input: ::std::option::Option<bool>) -> Self {
732        self.report_build_status_override = input;
733        self
734    }
735    /// <p>Set to true to report to your source provider the status of a build's start and completion. If you use this option with a source provider other than GitHub, GitHub Enterprise, GitLab, GitLab Self Managed, or Bitbucket, an <code>invalidInputException</code> is thrown.</p>
736    /// <p>To be able to report the build status to the source provider, the user associated with the source provider must have write access to the repo. If the user does not have write access, the build status cannot be updated. For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/access-tokens.html">Source provider access</a> in the <i>CodeBuild User Guide</i>.</p><note>
737    /// <p>The status of a build triggered by a webhook is always reported to your source provider.</p>
738    /// </note>
739    pub fn get_report_build_status_override(&self) -> &::std::option::Option<bool> {
740        &self.report_build_status_override
741    }
742    /// <p>Contains information that defines how the build project reports the build status to the source provider. This option is only used when the source provider is <code>GITHUB</code>, <code>GITHUB_ENTERPRISE</code>, or <code>BITBUCKET</code>.</p>
743    pub fn build_status_config_override(mut self, input: crate::types::BuildStatusConfig) -> Self {
744        self.build_status_config_override = ::std::option::Option::Some(input);
745        self
746    }
747    /// <p>Contains information that defines how the build project reports the build status to the source provider. This option is only used when the source provider is <code>GITHUB</code>, <code>GITHUB_ENTERPRISE</code>, or <code>BITBUCKET</code>.</p>
748    pub fn set_build_status_config_override(mut self, input: ::std::option::Option<crate::types::BuildStatusConfig>) -> Self {
749        self.build_status_config_override = input;
750        self
751    }
752    /// <p>Contains information that defines how the build project reports the build status to the source provider. This option is only used when the source provider is <code>GITHUB</code>, <code>GITHUB_ENTERPRISE</code>, or <code>BITBUCKET</code>.</p>
753    pub fn get_build_status_config_override(&self) -> &::std::option::Option<crate::types::BuildStatusConfig> {
754        &self.build_status_config_override
755    }
756    /// <p>A container type for this build that overrides the one specified in the build project.</p>
757    pub fn environment_type_override(mut self, input: crate::types::EnvironmentType) -> Self {
758        self.environment_type_override = ::std::option::Option::Some(input);
759        self
760    }
761    /// <p>A container type for this build that overrides the one specified in the build project.</p>
762    pub fn set_environment_type_override(mut self, input: ::std::option::Option<crate::types::EnvironmentType>) -> Self {
763        self.environment_type_override = input;
764        self
765    }
766    /// <p>A container type for this build that overrides the one specified in the build project.</p>
767    pub fn get_environment_type_override(&self) -> &::std::option::Option<crate::types::EnvironmentType> {
768        &self.environment_type_override
769    }
770    /// <p>The name of an image for this build that overrides the one specified in the build project.</p>
771    pub fn image_override(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
772        self.image_override = ::std::option::Option::Some(input.into());
773        self
774    }
775    /// <p>The name of an image for this build that overrides the one specified in the build project.</p>
776    pub fn set_image_override(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
777        self.image_override = input;
778        self
779    }
780    /// <p>The name of an image for this build that overrides the one specified in the build project.</p>
781    pub fn get_image_override(&self) -> &::std::option::Option<::std::string::String> {
782        &self.image_override
783    }
784    /// <p>The name of a compute type for this build that overrides the one specified in the build project.</p>
785    pub fn compute_type_override(mut self, input: crate::types::ComputeType) -> Self {
786        self.compute_type_override = ::std::option::Option::Some(input);
787        self
788    }
789    /// <p>The name of a compute type for this build that overrides the one specified in the build project.</p>
790    pub fn set_compute_type_override(mut self, input: ::std::option::Option<crate::types::ComputeType>) -> Self {
791        self.compute_type_override = input;
792        self
793    }
794    /// <p>The name of a compute type for this build that overrides the one specified in the build project.</p>
795    pub fn get_compute_type_override(&self) -> &::std::option::Option<crate::types::ComputeType> {
796        &self.compute_type_override
797    }
798    /// <p>The name of a certificate for this build that overrides the one specified in the build project.</p>
799    pub fn certificate_override(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
800        self.certificate_override = ::std::option::Option::Some(input.into());
801        self
802    }
803    /// <p>The name of a certificate for this build that overrides the one specified in the build project.</p>
804    pub fn set_certificate_override(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
805        self.certificate_override = input;
806        self
807    }
808    /// <p>The name of a certificate for this build that overrides the one specified in the build project.</p>
809    pub fn get_certificate_override(&self) -> &::std::option::Option<::std::string::String> {
810        &self.certificate_override
811    }
812    /// <p>A ProjectCache object specified for this build that overrides the one defined in the build project.</p>
813    pub fn cache_override(mut self, input: crate::types::ProjectCache) -> Self {
814        self.cache_override = ::std::option::Option::Some(input);
815        self
816    }
817    /// <p>A ProjectCache object specified for this build that overrides the one defined in the build project.</p>
818    pub fn set_cache_override(mut self, input: ::std::option::Option<crate::types::ProjectCache>) -> Self {
819        self.cache_override = input;
820        self
821    }
822    /// <p>A ProjectCache object specified for this build that overrides the one defined in the build project.</p>
823    pub fn get_cache_override(&self) -> &::std::option::Option<crate::types::ProjectCache> {
824        &self.cache_override
825    }
826    /// <p>The name of a service role for this build that overrides the one specified in the build project.</p>
827    pub fn service_role_override(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
828        self.service_role_override = ::std::option::Option::Some(input.into());
829        self
830    }
831    /// <p>The name of a service role for this build that overrides the one specified in the build project.</p>
832    pub fn set_service_role_override(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
833        self.service_role_override = input;
834        self
835    }
836    /// <p>The name of a service role for this build that overrides the one specified in the build project.</p>
837    pub fn get_service_role_override(&self) -> &::std::option::Option<::std::string::String> {
838        &self.service_role_override
839    }
840    /// <p>Enable this flag to override privileged mode in the build project.</p>
841    pub fn privileged_mode_override(mut self, input: bool) -> Self {
842        self.privileged_mode_override = ::std::option::Option::Some(input);
843        self
844    }
845    /// <p>Enable this flag to override privileged mode in the build project.</p>
846    pub fn set_privileged_mode_override(mut self, input: ::std::option::Option<bool>) -> Self {
847        self.privileged_mode_override = input;
848        self
849    }
850    /// <p>Enable this flag to override privileged mode in the build project.</p>
851    pub fn get_privileged_mode_override(&self) -> &::std::option::Option<bool> {
852        &self.privileged_mode_override
853    }
854    /// <p>The number of build timeout minutes, from 5 to 2160 (36 hours), that overrides, for this build only, the latest setting already defined in the build project.</p>
855    pub fn timeout_in_minutes_override(mut self, input: i32) -> Self {
856        self.timeout_in_minutes_override = ::std::option::Option::Some(input);
857        self
858    }
859    /// <p>The number of build timeout minutes, from 5 to 2160 (36 hours), that overrides, for this build only, the latest setting already defined in the build project.</p>
860    pub fn set_timeout_in_minutes_override(mut self, input: ::std::option::Option<i32>) -> Self {
861        self.timeout_in_minutes_override = input;
862        self
863    }
864    /// <p>The number of build timeout minutes, from 5 to 2160 (36 hours), that overrides, for this build only, the latest setting already defined in the build project.</p>
865    pub fn get_timeout_in_minutes_override(&self) -> &::std::option::Option<i32> {
866        &self.timeout_in_minutes_override
867    }
868    /// <p>The number of minutes a build is allowed to be queued before it times out.</p>
869    pub fn queued_timeout_in_minutes_override(mut self, input: i32) -> Self {
870        self.queued_timeout_in_minutes_override = ::std::option::Option::Some(input);
871        self
872    }
873    /// <p>The number of minutes a build is allowed to be queued before it times out.</p>
874    pub fn set_queued_timeout_in_minutes_override(mut self, input: ::std::option::Option<i32>) -> Self {
875        self.queued_timeout_in_minutes_override = input;
876        self
877    }
878    /// <p>The number of minutes a build is allowed to be queued before it times out.</p>
879    pub fn get_queued_timeout_in_minutes_override(&self) -> &::std::option::Option<i32> {
880        &self.queued_timeout_in_minutes_override
881    }
882    /// <p>The Key Management Service customer master key (CMK) that overrides the one specified in the build project. The CMK key encrypts the build output artifacts.</p><note>
883    /// <p>You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to that key.</p>
884    /// </note>
885    /// <p>You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using the format <code>alias/<alias-name></alias-name></code>).</p>
886    pub fn encryption_key_override(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
887        self.encryption_key_override = ::std::option::Option::Some(input.into());
888        self
889    }
890    /// <p>The Key Management Service customer master key (CMK) that overrides the one specified in the build project. The CMK key encrypts the build output artifacts.</p><note>
891    /// <p>You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to that key.</p>
892    /// </note>
893    /// <p>You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using the format <code>alias/<alias-name></alias-name></code>).</p>
894    pub fn set_encryption_key_override(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
895        self.encryption_key_override = input;
896        self
897    }
898    /// <p>The Key Management Service customer master key (CMK) that overrides the one specified in the build project. The CMK key encrypts the build output artifacts.</p><note>
899    /// <p>You can use a cross-account KMS key to encrypt the build output artifacts if your service role has permission to that key.</p>
900    /// </note>
901    /// <p>You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, the CMK's alias (using the format <code>alias/<alias-name></alias-name></code>).</p>
902    pub fn get_encryption_key_override(&self) -> &::std::option::Option<::std::string::String> {
903        &self.encryption_key_override
904    }
905    /// <p>A unique, case sensitive identifier you provide to ensure the idempotency of the StartBuild request. The token is included in the StartBuild request and is valid for 5 minutes. If you repeat the StartBuild request with the same token, but change a parameter, CodeBuild returns a parameter mismatch error.</p>
906    pub fn idempotency_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
907        self.idempotency_token = ::std::option::Option::Some(input.into());
908        self
909    }
910    /// <p>A unique, case sensitive identifier you provide to ensure the idempotency of the StartBuild request. The token is included in the StartBuild request and is valid for 5 minutes. If you repeat the StartBuild request with the same token, but change a parameter, CodeBuild returns a parameter mismatch error.</p>
911    pub fn set_idempotency_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
912        self.idempotency_token = input;
913        self
914    }
915    /// <p>A unique, case sensitive identifier you provide to ensure the idempotency of the StartBuild request. The token is included in the StartBuild request and is valid for 5 minutes. If you repeat the StartBuild request with the same token, but change a parameter, CodeBuild returns a parameter mismatch error.</p>
916    pub fn get_idempotency_token(&self) -> &::std::option::Option<::std::string::String> {
917        &self.idempotency_token
918    }
919    /// <p>Log settings for this build that override the log settings defined in the build project.</p>
920    pub fn logs_config_override(mut self, input: crate::types::LogsConfig) -> Self {
921        self.logs_config_override = ::std::option::Option::Some(input);
922        self
923    }
924    /// <p>Log settings for this build that override the log settings defined in the build project.</p>
925    pub fn set_logs_config_override(mut self, input: ::std::option::Option<crate::types::LogsConfig>) -> Self {
926        self.logs_config_override = input;
927        self
928    }
929    /// <p>Log settings for this build that override the log settings defined in the build project.</p>
930    pub fn get_logs_config_override(&self) -> &::std::option::Option<crate::types::LogsConfig> {
931        &self.logs_config_override
932    }
933    /// <p>The credentials for access to a private registry.</p>
934    pub fn registry_credential_override(mut self, input: crate::types::RegistryCredential) -> Self {
935        self.registry_credential_override = ::std::option::Option::Some(input);
936        self
937    }
938    /// <p>The credentials for access to a private registry.</p>
939    pub fn set_registry_credential_override(mut self, input: ::std::option::Option<crate::types::RegistryCredential>) -> Self {
940        self.registry_credential_override = input;
941        self
942    }
943    /// <p>The credentials for access to a private registry.</p>
944    pub fn get_registry_credential_override(&self) -> &::std::option::Option<crate::types::RegistryCredential> {
945        &self.registry_credential_override
946    }
947    /// <p>The type of credentials CodeBuild uses to pull images in your build. There are two valid values:</p>
948    /// <dl>
949    /// <dt>
950    /// CODEBUILD
951    /// </dt>
952    /// <dd>
953    /// <p>Specifies that CodeBuild uses its own credentials. This requires that you modify your ECR repository policy to trust CodeBuild's service principal.</p>
954    /// </dd>
955    /// <dt>
956    /// SERVICE_ROLE
957    /// </dt>
958    /// <dd>
959    /// <p>Specifies that CodeBuild uses your build project's service role.</p>
960    /// </dd>
961    /// </dl>
962    /// <p>When using a cross-account or private registry image, you must use <code>SERVICE_ROLE</code> credentials. When using an CodeBuild curated image, you must use <code>CODEBUILD</code> credentials.</p>
963    pub fn image_pull_credentials_type_override(mut self, input: crate::types::ImagePullCredentialsType) -> Self {
964        self.image_pull_credentials_type_override = ::std::option::Option::Some(input);
965        self
966    }
967    /// <p>The type of credentials CodeBuild uses to pull images in your build. There are two valid values:</p>
968    /// <dl>
969    /// <dt>
970    /// CODEBUILD
971    /// </dt>
972    /// <dd>
973    /// <p>Specifies that CodeBuild uses its own credentials. This requires that you modify your ECR repository policy to trust CodeBuild's service principal.</p>
974    /// </dd>
975    /// <dt>
976    /// SERVICE_ROLE
977    /// </dt>
978    /// <dd>
979    /// <p>Specifies that CodeBuild uses your build project's service role.</p>
980    /// </dd>
981    /// </dl>
982    /// <p>When using a cross-account or private registry image, you must use <code>SERVICE_ROLE</code> credentials. When using an CodeBuild curated image, you must use <code>CODEBUILD</code> credentials.</p>
983    pub fn set_image_pull_credentials_type_override(mut self, input: ::std::option::Option<crate::types::ImagePullCredentialsType>) -> Self {
984        self.image_pull_credentials_type_override = input;
985        self
986    }
987    /// <p>The type of credentials CodeBuild uses to pull images in your build. There are two valid values:</p>
988    /// <dl>
989    /// <dt>
990    /// CODEBUILD
991    /// </dt>
992    /// <dd>
993    /// <p>Specifies that CodeBuild uses its own credentials. This requires that you modify your ECR repository policy to trust CodeBuild's service principal.</p>
994    /// </dd>
995    /// <dt>
996    /// SERVICE_ROLE
997    /// </dt>
998    /// <dd>
999    /// <p>Specifies that CodeBuild uses your build project's service role.</p>
1000    /// </dd>
1001    /// </dl>
1002    /// <p>When using a cross-account or private registry image, you must use <code>SERVICE_ROLE</code> credentials. When using an CodeBuild curated image, you must use <code>CODEBUILD</code> credentials.</p>
1003    pub fn get_image_pull_credentials_type_override(&self) -> &::std::option::Option<crate::types::ImagePullCredentialsType> {
1004        &self.image_pull_credentials_type_override
1005    }
1006    /// <p>Specifies if session debugging is enabled for this build. For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/session-manager.html">Viewing a running build in Session Manager</a>.</p>
1007    pub fn debug_session_enabled(mut self, input: bool) -> Self {
1008        self.debug_session_enabled = ::std::option::Option::Some(input);
1009        self
1010    }
1011    /// <p>Specifies if session debugging is enabled for this build. For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/session-manager.html">Viewing a running build in Session Manager</a>.</p>
1012    pub fn set_debug_session_enabled(mut self, input: ::std::option::Option<bool>) -> Self {
1013        self.debug_session_enabled = input;
1014        self
1015    }
1016    /// <p>Specifies if session debugging is enabled for this build. For more information, see <a href="https://docs.aws.amazon.com/codebuild/latest/userguide/session-manager.html">Viewing a running build in Session Manager</a>.</p>
1017    pub fn get_debug_session_enabled(&self) -> &::std::option::Option<bool> {
1018        &self.debug_session_enabled
1019    }
1020    /// <p>A ProjectFleet object specified for this build that overrides the one defined in the build project.</p>
1021    pub fn fleet_override(mut self, input: crate::types::ProjectFleet) -> Self {
1022        self.fleet_override = ::std::option::Option::Some(input);
1023        self
1024    }
1025    /// <p>A ProjectFleet object specified for this build that overrides the one defined in the build project.</p>
1026    pub fn set_fleet_override(mut self, input: ::std::option::Option<crate::types::ProjectFleet>) -> Self {
1027        self.fleet_override = input;
1028        self
1029    }
1030    /// <p>A ProjectFleet object specified for this build that overrides the one defined in the build project.</p>
1031    pub fn get_fleet_override(&self) -> &::std::option::Option<crate::types::ProjectFleet> {
1032        &self.fleet_override
1033    }
1034    /// <p>The maximum number of additional automatic retries after a failed build. For example, if the auto-retry limit is set to 2, CodeBuild will call the <code>RetryBuild</code> API to automatically retry your build for up to 2 additional times.</p>
1035    pub fn auto_retry_limit_override(mut self, input: i32) -> Self {
1036        self.auto_retry_limit_override = ::std::option::Option::Some(input);
1037        self
1038    }
1039    /// <p>The maximum number of additional automatic retries after a failed build. For example, if the auto-retry limit is set to 2, CodeBuild will call the <code>RetryBuild</code> API to automatically retry your build for up to 2 additional times.</p>
1040    pub fn set_auto_retry_limit_override(mut self, input: ::std::option::Option<i32>) -> Self {
1041        self.auto_retry_limit_override = input;
1042        self
1043    }
1044    /// <p>The maximum number of additional automatic retries after a failed build. For example, if the auto-retry limit is set to 2, CodeBuild will call the <code>RetryBuild</code> API to automatically retry your build for up to 2 additional times.</p>
1045    pub fn get_auto_retry_limit_override(&self) -> &::std::option::Option<i32> {
1046        &self.auto_retry_limit_override
1047    }
1048    /// <p>The host operating system kernel for this build that overrides the one specified in the build project.</p>
1049    pub fn host_kernel_override(mut self, input: crate::types::HostKernel) -> Self {
1050        self.host_kernel_override = ::std::option::Option::Some(input);
1051        self
1052    }
1053    /// <p>The host operating system kernel for this build that overrides the one specified in the build project.</p>
1054    pub fn set_host_kernel_override(mut self, input: ::std::option::Option<crate::types::HostKernel>) -> Self {
1055        self.host_kernel_override = input;
1056        self
1057    }
1058    /// <p>The host operating system kernel for this build that overrides the one specified in the build project.</p>
1059    pub fn get_host_kernel_override(&self) -> &::std::option::Option<crate::types::HostKernel> {
1060        &self.host_kernel_override
1061    }
1062    /// Consumes the builder and constructs a [`StartBuildInput`](crate::operation::start_build::StartBuildInput).
1063    pub fn build(self) -> ::std::result::Result<crate::operation::start_build::StartBuildInput, ::aws_smithy_types::error::operation::BuildError> {
1064        ::std::result::Result::Ok(crate::operation::start_build::StartBuildInput {
1065            project_name: self.project_name,
1066            secondary_sources_override: self.secondary_sources_override,
1067            secondary_sources_version_override: self.secondary_sources_version_override,
1068            source_version: self.source_version,
1069            artifacts_override: self.artifacts_override,
1070            secondary_artifacts_override: self.secondary_artifacts_override,
1071            environment_variables_override: self.environment_variables_override,
1072            source_type_override: self.source_type_override,
1073            source_location_override: self.source_location_override,
1074            source_auth_override: self.source_auth_override,
1075            git_clone_depth_override: self.git_clone_depth_override,
1076            git_submodules_config_override: self.git_submodules_config_override,
1077            buildspec_override: self.buildspec_override,
1078            insecure_ssl_override: self.insecure_ssl_override,
1079            report_build_status_override: self.report_build_status_override,
1080            build_status_config_override: self.build_status_config_override,
1081            environment_type_override: self.environment_type_override,
1082            image_override: self.image_override,
1083            compute_type_override: self.compute_type_override,
1084            certificate_override: self.certificate_override,
1085            cache_override: self.cache_override,
1086            service_role_override: self.service_role_override,
1087            privileged_mode_override: self.privileged_mode_override,
1088            timeout_in_minutes_override: self.timeout_in_minutes_override,
1089            queued_timeout_in_minutes_override: self.queued_timeout_in_minutes_override,
1090            encryption_key_override: self.encryption_key_override,
1091            idempotency_token: self.idempotency_token,
1092            logs_config_override: self.logs_config_override,
1093            registry_credential_override: self.registry_credential_override,
1094            image_pull_credentials_type_override: self.image_pull_credentials_type_override,
1095            debug_session_enabled: self.debug_session_enabled,
1096            fleet_override: self.fleet_override,
1097            auto_retry_limit_override: self.auto_retry_limit_override,
1098            host_kernel_override: self.host_kernel_override,
1099        })
1100    }
1101}