aws_sdk_codebuild/operation/update_project/builders.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::update_project::_update_project_output::UpdateProjectOutputBuilder;
3
4pub use crate::operation::update_project::_update_project_input::UpdateProjectInputBuilder;
5
6impl crate::operation::update_project::builders::UpdateProjectInputBuilder {
7 /// Sends a request with this input using the given client.
8 pub async fn send_with(
9 self,
10 client: &crate::Client,
11 ) -> ::std::result::Result<
12 crate::operation::update_project::UpdateProjectOutput,
13 ::aws_smithy_runtime_api::client::result::SdkError<
14 crate::operation::update_project::UpdateProjectError,
15 ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16 >,
17 > {
18 let mut fluent_builder = client.update_project();
19 fluent_builder.inner = self;
20 fluent_builder.send().await
21 }
22}
23/// Fluent builder constructing a request to `UpdateProject`.
24///
25/// <p>Changes the settings of a build project.</p>
26#[derive(::std::clone::Clone, ::std::fmt::Debug)]
27pub struct UpdateProjectFluentBuilder {
28 handle: ::std::sync::Arc<crate::client::Handle>,
29 inner: crate::operation::update_project::builders::UpdateProjectInputBuilder,
30 config_override: ::std::option::Option<crate::config::Builder>,
31}
32impl
33 crate::client::customize::internal::CustomizableSend<
34 crate::operation::update_project::UpdateProjectOutput,
35 crate::operation::update_project::UpdateProjectError,
36 > for UpdateProjectFluentBuilder
37{
38 fn send(
39 self,
40 config_override: crate::config::Builder,
41 ) -> crate::client::customize::internal::BoxFuture<
42 crate::client::customize::internal::SendResult<
43 crate::operation::update_project::UpdateProjectOutput,
44 crate::operation::update_project::UpdateProjectError,
45 >,
46 > {
47 ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
48 }
49}
50impl UpdateProjectFluentBuilder {
51 /// Creates a new `UpdateProjectFluentBuilder`.
52 pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
53 Self {
54 handle,
55 inner: ::std::default::Default::default(),
56 config_override: ::std::option::Option::None,
57 }
58 }
59 /// Access the UpdateProject as a reference.
60 pub fn as_input(&self) -> &crate::operation::update_project::builders::UpdateProjectInputBuilder {
61 &self.inner
62 }
63 /// Sends the request and returns the response.
64 ///
65 /// If an error occurs, an `SdkError` will be returned with additional details that
66 /// can be matched against.
67 ///
68 /// By default, any retryable failures will be retried twice. Retry behavior
69 /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
70 /// set when configuring the client.
71 pub async fn send(
72 self,
73 ) -> ::std::result::Result<
74 crate::operation::update_project::UpdateProjectOutput,
75 ::aws_smithy_runtime_api::client::result::SdkError<
76 crate::operation::update_project::UpdateProjectError,
77 ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
78 >,
79 > {
80 let input = self
81 .inner
82 .build()
83 .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
84 let runtime_plugins = crate::operation::update_project::UpdateProject::operation_runtime_plugins(
85 self.handle.runtime_plugins.clone(),
86 &self.handle.conf,
87 self.config_override,
88 );
89 crate::operation::update_project::UpdateProject::orchestrate(&runtime_plugins, input).await
90 }
91
92 /// Consumes this builder, creating a customizable operation that can be modified before being sent.
93 pub fn customize(
94 self,
95 ) -> crate::client::customize::CustomizableOperation<
96 crate::operation::update_project::UpdateProjectOutput,
97 crate::operation::update_project::UpdateProjectError,
98 Self,
99 > {
100 crate::client::customize::CustomizableOperation::new(self)
101 }
102 pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
103 self.set_config_override(::std::option::Option::Some(config_override.into()));
104 self
105 }
106
107 pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
108 self.config_override = config_override;
109 self
110 }
111 /// <p>The name of the build project.</p><note>
112 /// <p>You cannot change a build project's name.</p>
113 /// </note>
114 pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
115 self.inner = self.inner.name(input.into());
116 self
117 }
118 /// <p>The name of the build project.</p><note>
119 /// <p>You cannot change a build project's name.</p>
120 /// </note>
121 pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
122 self.inner = self.inner.set_name(input);
123 self
124 }
125 /// <p>The name of the build project.</p><note>
126 /// <p>You cannot change a build project's name.</p>
127 /// </note>
128 pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
129 self.inner.get_name()
130 }
131 /// <p>A new or replacement description of the build project.</p>
132 pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
133 self.inner = self.inner.description(input.into());
134 self
135 }
136 /// <p>A new or replacement description of the build project.</p>
137 pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
138 self.inner = self.inner.set_description(input);
139 self
140 }
141 /// <p>A new or replacement description of the build project.</p>
142 pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
143 self.inner.get_description()
144 }
145 /// <p>Information to be changed about the build input source code for the build project.</p>
146 pub fn source(mut self, input: crate::types::ProjectSource) -> Self {
147 self.inner = self.inner.source(input);
148 self
149 }
150 /// <p>Information to be changed about the build input source code for the build project.</p>
151 pub fn set_source(mut self, input: ::std::option::Option<crate::types::ProjectSource>) -> Self {
152 self.inner = self.inner.set_source(input);
153 self
154 }
155 /// <p>Information to be changed about the build input source code for the build project.</p>
156 pub fn get_source(&self) -> &::std::option::Option<crate::types::ProjectSource> {
157 self.inner.get_source()
158 }
159 ///
160 /// Appends an item to `secondarySources`.
161 ///
162 /// To override the contents of this collection use [`set_secondary_sources`](Self::set_secondary_sources).
163 ///
164 /// <p>An array of <code>ProjectSource</code> objects.</p>
165 pub fn secondary_sources(mut self, input: crate::types::ProjectSource) -> Self {
166 self.inner = self.inner.secondary_sources(input);
167 self
168 }
169 /// <p>An array of <code>ProjectSource</code> objects.</p>
170 pub fn set_secondary_sources(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::ProjectSource>>) -> Self {
171 self.inner = self.inner.set_secondary_sources(input);
172 self
173 }
174 /// <p>An array of <code>ProjectSource</code> objects.</p>
175 pub fn get_secondary_sources(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ProjectSource>> {
176 self.inner.get_secondary_sources()
177 }
178 /// <p>A version of the build input to be built for this project. If not specified, the latest version is used. If specified, it must be one of:</p>
179 /// <ul>
180 /// <li>
181 /// <p>For CodeCommit: the commit ID, branch, or Git tag to use.</p></li>
182 /// <li>
183 /// <p>For GitHub: 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></li>
184 /// <li>
185 /// <p>For GitLab: the commit ID, branch, or Git tag to use.</p></li>
186 /// <li>
187 /// <p>For Bitbucket: 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></li>
188 /// <li>
189 /// <p>For Amazon S3: the version ID of the object that represents the build input ZIP file to use.</p></li>
190 /// </ul>
191 /// <p>If <code>sourceVersion</code> is specified at the build level, then that version takes precedence over this <code>sourceVersion</code> (at the project level).</p>
192 /// <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>
193 pub fn source_version(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
194 self.inner = self.inner.source_version(input.into());
195 self
196 }
197 /// <p>A version of the build input to be built for this project. If not specified, the latest version is used. If specified, it must be one of:</p>
198 /// <ul>
199 /// <li>
200 /// <p>For CodeCommit: the commit ID, branch, or Git tag to use.</p></li>
201 /// <li>
202 /// <p>For GitHub: 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></li>
203 /// <li>
204 /// <p>For GitLab: the commit ID, branch, or Git tag to use.</p></li>
205 /// <li>
206 /// <p>For Bitbucket: 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></li>
207 /// <li>
208 /// <p>For Amazon S3: the version ID of the object that represents the build input ZIP file to use.</p></li>
209 /// </ul>
210 /// <p>If <code>sourceVersion</code> is specified at the build level, then that version takes precedence over this <code>sourceVersion</code> (at the project level).</p>
211 /// <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>
212 pub fn set_source_version(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
213 self.inner = self.inner.set_source_version(input);
214 self
215 }
216 /// <p>A version of the build input to be built for this project. If not specified, the latest version is used. If specified, it must be one of:</p>
217 /// <ul>
218 /// <li>
219 /// <p>For CodeCommit: the commit ID, branch, or Git tag to use.</p></li>
220 /// <li>
221 /// <p>For GitHub: 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></li>
222 /// <li>
223 /// <p>For GitLab: the commit ID, branch, or Git tag to use.</p></li>
224 /// <li>
225 /// <p>For Bitbucket: 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></li>
226 /// <li>
227 /// <p>For Amazon S3: the version ID of the object that represents the build input ZIP file to use.</p></li>
228 /// </ul>
229 /// <p>If <code>sourceVersion</code> is specified at the build level, then that version takes precedence over this <code>sourceVersion</code> (at the project level).</p>
230 /// <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>
231 pub fn get_source_version(&self) -> &::std::option::Option<::std::string::String> {
232 self.inner.get_source_version()
233 }
234 ///
235 /// Appends an item to `secondarySourceVersions`.
236 ///
237 /// To override the contents of this collection use [`set_secondary_source_versions`](Self::set_secondary_source_versions).
238 ///
239 /// <p>An array of <code>ProjectSourceVersion</code> objects. If <code>secondarySourceVersions</code> is specified at the build level, then they take over these <code>secondarySourceVersions</code> (at the project level).</p>
240 pub fn secondary_source_versions(mut self, input: crate::types::ProjectSourceVersion) -> Self {
241 self.inner = self.inner.secondary_source_versions(input);
242 self
243 }
244 /// <p>An array of <code>ProjectSourceVersion</code> objects. If <code>secondarySourceVersions</code> is specified at the build level, then they take over these <code>secondarySourceVersions</code> (at the project level).</p>
245 pub fn set_secondary_source_versions(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::ProjectSourceVersion>>) -> Self {
246 self.inner = self.inner.set_secondary_source_versions(input);
247 self
248 }
249 /// <p>An array of <code>ProjectSourceVersion</code> objects. If <code>secondarySourceVersions</code> is specified at the build level, then they take over these <code>secondarySourceVersions</code> (at the project level).</p>
250 pub fn get_secondary_source_versions(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ProjectSourceVersion>> {
251 self.inner.get_secondary_source_versions()
252 }
253 /// <p>Information to be changed about the build output artifacts for the build project.</p>
254 pub fn artifacts(mut self, input: crate::types::ProjectArtifacts) -> Self {
255 self.inner = self.inner.artifacts(input);
256 self
257 }
258 /// <p>Information to be changed about the build output artifacts for the build project.</p>
259 pub fn set_artifacts(mut self, input: ::std::option::Option<crate::types::ProjectArtifacts>) -> Self {
260 self.inner = self.inner.set_artifacts(input);
261 self
262 }
263 /// <p>Information to be changed about the build output artifacts for the build project.</p>
264 pub fn get_artifacts(&self) -> &::std::option::Option<crate::types::ProjectArtifacts> {
265 self.inner.get_artifacts()
266 }
267 ///
268 /// Appends an item to `secondaryArtifacts`.
269 ///
270 /// To override the contents of this collection use [`set_secondary_artifacts`](Self::set_secondary_artifacts).
271 ///
272 /// <p>An array of <code>ProjectArtifact</code> objects.</p>
273 pub fn secondary_artifacts(mut self, input: crate::types::ProjectArtifacts) -> Self {
274 self.inner = self.inner.secondary_artifacts(input);
275 self
276 }
277 /// <p>An array of <code>ProjectArtifact</code> objects.</p>
278 pub fn set_secondary_artifacts(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::ProjectArtifacts>>) -> Self {
279 self.inner = self.inner.set_secondary_artifacts(input);
280 self
281 }
282 /// <p>An array of <code>ProjectArtifact</code> objects.</p>
283 pub fn get_secondary_artifacts(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ProjectArtifacts>> {
284 self.inner.get_secondary_artifacts()
285 }
286 /// <p>Stores recently used information so that it can be quickly accessed at a later time.</p>
287 pub fn cache(mut self, input: crate::types::ProjectCache) -> Self {
288 self.inner = self.inner.cache(input);
289 self
290 }
291 /// <p>Stores recently used information so that it can be quickly accessed at a later time.</p>
292 pub fn set_cache(mut self, input: ::std::option::Option<crate::types::ProjectCache>) -> Self {
293 self.inner = self.inner.set_cache(input);
294 self
295 }
296 /// <p>Stores recently used information so that it can be quickly accessed at a later time.</p>
297 pub fn get_cache(&self) -> &::std::option::Option<crate::types::ProjectCache> {
298 self.inner.get_cache()
299 }
300 /// <p>Information to be changed about the build environment for the build project.</p>
301 pub fn environment(mut self, input: crate::types::ProjectEnvironment) -> Self {
302 self.inner = self.inner.environment(input);
303 self
304 }
305 /// <p>Information to be changed about the build environment for the build project.</p>
306 pub fn set_environment(mut self, input: ::std::option::Option<crate::types::ProjectEnvironment>) -> Self {
307 self.inner = self.inner.set_environment(input);
308 self
309 }
310 /// <p>Information to be changed about the build environment for the build project.</p>
311 pub fn get_environment(&self) -> &::std::option::Option<crate::types::ProjectEnvironment> {
312 self.inner.get_environment()
313 }
314 /// <p>The replacement ARN of the IAM role that enables CodeBuild to interact with dependent Amazon Web Services services on behalf of the Amazon Web Services account.</p>
315 pub fn service_role(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
316 self.inner = self.inner.service_role(input.into());
317 self
318 }
319 /// <p>The replacement ARN of the IAM role that enables CodeBuild to interact with dependent Amazon Web Services services on behalf of the Amazon Web Services account.</p>
320 pub fn set_service_role(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
321 self.inner = self.inner.set_service_role(input);
322 self
323 }
324 /// <p>The replacement ARN of the IAM role that enables CodeBuild to interact with dependent Amazon Web Services services on behalf of the Amazon Web Services account.</p>
325 pub fn get_service_role(&self) -> &::std::option::Option<::std::string::String> {
326 self.inner.get_service_role()
327 }
328 /// <p>The replacement value in minutes, from 5 to 2160 (36 hours), for CodeBuild to wait before timing out any related build that did not get marked as completed.</p>
329 pub fn timeout_in_minutes(mut self, input: i32) -> Self {
330 self.inner = self.inner.timeout_in_minutes(input);
331 self
332 }
333 /// <p>The replacement value in minutes, from 5 to 2160 (36 hours), for CodeBuild to wait before timing out any related build that did not get marked as completed.</p>
334 pub fn set_timeout_in_minutes(mut self, input: ::std::option::Option<i32>) -> Self {
335 self.inner = self.inner.set_timeout_in_minutes(input);
336 self
337 }
338 /// <p>The replacement value in minutes, from 5 to 2160 (36 hours), for CodeBuild to wait before timing out any related build that did not get marked as completed.</p>
339 pub fn get_timeout_in_minutes(&self) -> &::std::option::Option<i32> {
340 self.inner.get_timeout_in_minutes()
341 }
342 /// <p>The number of minutes a build is allowed to be queued before it times out.</p>
343 pub fn queued_timeout_in_minutes(mut self, input: i32) -> Self {
344 self.inner = self.inner.queued_timeout_in_minutes(input);
345 self
346 }
347 /// <p>The number of minutes a build is allowed to be queued before it times out.</p>
348 pub fn set_queued_timeout_in_minutes(mut self, input: ::std::option::Option<i32>) -> Self {
349 self.inner = self.inner.set_queued_timeout_in_minutes(input);
350 self
351 }
352 /// <p>The number of minutes a build is allowed to be queued before it times out.</p>
353 pub fn get_queued_timeout_in_minutes(&self) -> &::std::option::Option<i32> {
354 self.inner.get_queued_timeout_in_minutes()
355 }
356 /// <p>The Key Management Service customer master key (CMK) to be used for encrypting the build output artifacts.</p><note>
357 /// <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>
358 /// </note>
359 /// <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>
360 pub fn encryption_key(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
361 self.inner = self.inner.encryption_key(input.into());
362 self
363 }
364 /// <p>The Key Management Service customer master key (CMK) to be used for encrypting the build output artifacts.</p><note>
365 /// <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>
366 /// </note>
367 /// <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>
368 pub fn set_encryption_key(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
369 self.inner = self.inner.set_encryption_key(input);
370 self
371 }
372 /// <p>The Key Management Service customer master key (CMK) to be used for encrypting the build output artifacts.</p><note>
373 /// <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>
374 /// </note>
375 /// <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>
376 pub fn get_encryption_key(&self) -> &::std::option::Option<::std::string::String> {
377 self.inner.get_encryption_key()
378 }
379 ///
380 /// Appends an item to `tags`.
381 ///
382 /// To override the contents of this collection use [`set_tags`](Self::set_tags).
383 ///
384 /// <p>An updated list of tag key and value pairs associated with this build project.</p>
385 /// <p>These tags are available for use by Amazon Web Services services that support CodeBuild build project tags.</p>
386 pub fn tags(mut self, input: crate::types::Tag) -> Self {
387 self.inner = self.inner.tags(input);
388 self
389 }
390 /// <p>An updated list of tag key and value pairs associated with this build project.</p>
391 /// <p>These tags are available for use by Amazon Web Services services that support CodeBuild build project tags.</p>
392 pub fn set_tags(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>) -> Self {
393 self.inner = self.inner.set_tags(input);
394 self
395 }
396 /// <p>An updated list of tag key and value pairs associated with this build project.</p>
397 /// <p>These tags are available for use by Amazon Web Services services that support CodeBuild build project tags.</p>
398 pub fn get_tags(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Tag>> {
399 self.inner.get_tags()
400 }
401 /// <p>VpcConfig enables CodeBuild to access resources in an Amazon VPC.</p>
402 pub fn vpc_config(mut self, input: crate::types::VpcConfig) -> Self {
403 self.inner = self.inner.vpc_config(input);
404 self
405 }
406 /// <p>VpcConfig enables CodeBuild to access resources in an Amazon VPC.</p>
407 pub fn set_vpc_config(mut self, input: ::std::option::Option<crate::types::VpcConfig>) -> Self {
408 self.inner = self.inner.set_vpc_config(input);
409 self
410 }
411 /// <p>VpcConfig enables CodeBuild to access resources in an Amazon VPC.</p>
412 pub fn get_vpc_config(&self) -> &::std::option::Option<crate::types::VpcConfig> {
413 self.inner.get_vpc_config()
414 }
415 /// <p>Set this to true to generate a publicly accessible URL for your project's build badge.</p>
416 pub fn badge_enabled(mut self, input: bool) -> Self {
417 self.inner = self.inner.badge_enabled(input);
418 self
419 }
420 /// <p>Set this to true to generate a publicly accessible URL for your project's build badge.</p>
421 pub fn set_badge_enabled(mut self, input: ::std::option::Option<bool>) -> Self {
422 self.inner = self.inner.set_badge_enabled(input);
423 self
424 }
425 /// <p>Set this to true to generate a publicly accessible URL for your project's build badge.</p>
426 pub fn get_badge_enabled(&self) -> &::std::option::Option<bool> {
427 self.inner.get_badge_enabled()
428 }
429 /// <p>Information about logs for the build project. A project can create logs in CloudWatch Logs, logs in an S3 bucket, or both.</p>
430 pub fn logs_config(mut self, input: crate::types::LogsConfig) -> Self {
431 self.inner = self.inner.logs_config(input);
432 self
433 }
434 /// <p>Information about logs for the build project. A project can create logs in CloudWatch Logs, logs in an S3 bucket, or both.</p>
435 pub fn set_logs_config(mut self, input: ::std::option::Option<crate::types::LogsConfig>) -> Self {
436 self.inner = self.inner.set_logs_config(input);
437 self
438 }
439 /// <p>Information about logs for the build project. A project can create logs in CloudWatch Logs, logs in an S3 bucket, or both.</p>
440 pub fn get_logs_config(&self) -> &::std::option::Option<crate::types::LogsConfig> {
441 self.inner.get_logs_config()
442 }
443 ///
444 /// Appends an item to `fileSystemLocations`.
445 ///
446 /// To override the contents of this collection use [`set_file_system_locations`](Self::set_file_system_locations).
447 ///
448 /// <p>An array of <code>ProjectFileSystemLocation</code> objects for a CodeBuild build project. A <code>ProjectFileSystemLocation</code> object specifies the <code>identifier</code>, <code>location</code>, <code>mountOptions</code>, <code>mountPoint</code>, and <code>type</code> of a file system created using Amazon Elastic File System.</p>
449 pub fn file_system_locations(mut self, input: crate::types::ProjectFileSystemLocation) -> Self {
450 self.inner = self.inner.file_system_locations(input);
451 self
452 }
453 /// <p>An array of <code>ProjectFileSystemLocation</code> objects for a CodeBuild build project. A <code>ProjectFileSystemLocation</code> object specifies the <code>identifier</code>, <code>location</code>, <code>mountOptions</code>, <code>mountPoint</code>, and <code>type</code> of a file system created using Amazon Elastic File System.</p>
454 pub fn set_file_system_locations(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::ProjectFileSystemLocation>>) -> Self {
455 self.inner = self.inner.set_file_system_locations(input);
456 self
457 }
458 /// <p>An array of <code>ProjectFileSystemLocation</code> objects for a CodeBuild build project. A <code>ProjectFileSystemLocation</code> object specifies the <code>identifier</code>, <code>location</code>, <code>mountOptions</code>, <code>mountPoint</code>, and <code>type</code> of a file system created using Amazon Elastic File System.</p>
459 pub fn get_file_system_locations(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ProjectFileSystemLocation>> {
460 self.inner.get_file_system_locations()
461 }
462 /// <p>Contains configuration information about a batch build project.</p>
463 pub fn build_batch_config(mut self, input: crate::types::ProjectBuildBatchConfig) -> Self {
464 self.inner = self.inner.build_batch_config(input);
465 self
466 }
467 /// <p>Contains configuration information about a batch build project.</p>
468 pub fn set_build_batch_config(mut self, input: ::std::option::Option<crate::types::ProjectBuildBatchConfig>) -> Self {
469 self.inner = self.inner.set_build_batch_config(input);
470 self
471 }
472 /// <p>Contains configuration information about a batch build project.</p>
473 pub fn get_build_batch_config(&self) -> &::std::option::Option<crate::types::ProjectBuildBatchConfig> {
474 self.inner.get_build_batch_config()
475 }
476 /// <p>The maximum number of concurrent builds that are allowed for this project.</p>
477 /// <p>New builds are only started if the current number of builds is less than or equal to this limit. If the current build count meets this limit, new builds are throttled and are not run.</p>
478 /// <p>To remove this limit, set this value to -1.</p>
479 pub fn concurrent_build_limit(mut self, input: i32) -> Self {
480 self.inner = self.inner.concurrent_build_limit(input);
481 self
482 }
483 /// <p>The maximum number of concurrent builds that are allowed for this project.</p>
484 /// <p>New builds are only started if the current number of builds is less than or equal to this limit. If the current build count meets this limit, new builds are throttled and are not run.</p>
485 /// <p>To remove this limit, set this value to -1.</p>
486 pub fn set_concurrent_build_limit(mut self, input: ::std::option::Option<i32>) -> Self {
487 self.inner = self.inner.set_concurrent_build_limit(input);
488 self
489 }
490 /// <p>The maximum number of concurrent builds that are allowed for this project.</p>
491 /// <p>New builds are only started if the current number of builds is less than or equal to this limit. If the current build count meets this limit, new builds are throttled and are not run.</p>
492 /// <p>To remove this limit, set this value to -1.</p>
493 pub fn get_concurrent_build_limit(&self) -> &::std::option::Option<i32> {
494 self.inner.get_concurrent_build_limit()
495 }
496 /// <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>
497 pub fn auto_retry_limit(mut self, input: i32) -> Self {
498 self.inner = self.inner.auto_retry_limit(input);
499 self
500 }
501 /// <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>
502 pub fn set_auto_retry_limit(mut self, input: ::std::option::Option<i32>) -> Self {
503 self.inner = self.inner.set_auto_retry_limit(input);
504 self
505 }
506 /// <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>
507 pub fn get_auto_retry_limit(&self) -> &::std::option::Option<i32> {
508 self.inner.get_auto_retry_limit()
509 }
510}