aws_sdk_batch/operation/submit_job/
builders.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::submit_job::_submit_job_output::SubmitJobOutputBuilder;
3
4pub use crate::operation::submit_job::_submit_job_input::SubmitJobInputBuilder;
5
6impl crate::operation::submit_job::builders::SubmitJobInputBuilder {
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::submit_job::SubmitJobOutput,
13        ::aws_smithy_runtime_api::client::result::SdkError<
14            crate::operation::submit_job::SubmitJobError,
15            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16        >,
17    > {
18        let mut fluent_builder = client.submit_job();
19        fluent_builder.inner = self;
20        fluent_builder.send().await
21    }
22}
23/// Fluent builder constructing a request to `SubmitJob`.
24///
25/// <p>Submits an Batch job from a job definition. Parameters that are specified during <code>SubmitJob</code> override parameters defined in the job definition. vCPU and memory requirements that are specified in the <code>resourceRequirements</code> objects in the job definition are the exception. They can't be overridden this way using the <code>memory</code> and <code>vcpus</code> parameters. Rather, you must specify updates to job definition parameters in a <code>resourceRequirements</code> object that's included in the <code>containerOverrides</code> parameter.</p><note>
26/// <p>Job queues with a scheduling policy are limited to 500 active share identifiers at a time.</p>
27/// </note> <important>
28/// <p>Jobs that run on Fargate resources can't be guaranteed to run for more than 14 days. This is because, after 14 days, Fargate resources might become unavailable and job might be terminated.</p>
29/// </important>
30#[derive(::std::clone::Clone, ::std::fmt::Debug)]
31pub struct SubmitJobFluentBuilder {
32    handle: ::std::sync::Arc<crate::client::Handle>,
33    inner: crate::operation::submit_job::builders::SubmitJobInputBuilder,
34    config_override: ::std::option::Option<crate::config::Builder>,
35}
36impl crate::client::customize::internal::CustomizableSend<crate::operation::submit_job::SubmitJobOutput, crate::operation::submit_job::SubmitJobError>
37    for SubmitJobFluentBuilder
38{
39    fn send(
40        self,
41        config_override: crate::config::Builder,
42    ) -> crate::client::customize::internal::BoxFuture<
43        crate::client::customize::internal::SendResult<crate::operation::submit_job::SubmitJobOutput, crate::operation::submit_job::SubmitJobError>,
44    > {
45        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
46    }
47}
48impl SubmitJobFluentBuilder {
49    /// Creates a new `SubmitJobFluentBuilder`.
50    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
51        Self {
52            handle,
53            inner: ::std::default::Default::default(),
54            config_override: ::std::option::Option::None,
55        }
56    }
57    /// Access the SubmitJob as a reference.
58    pub fn as_input(&self) -> &crate::operation::submit_job::builders::SubmitJobInputBuilder {
59        &self.inner
60    }
61    /// Sends the request and returns the response.
62    ///
63    /// If an error occurs, an `SdkError` will be returned with additional details that
64    /// can be matched against.
65    ///
66    /// By default, any retryable failures will be retried twice. Retry behavior
67    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
68    /// set when configuring the client.
69    pub async fn send(
70        self,
71    ) -> ::std::result::Result<
72        crate::operation::submit_job::SubmitJobOutput,
73        ::aws_smithy_runtime_api::client::result::SdkError<
74            crate::operation::submit_job::SubmitJobError,
75            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
76        >,
77    > {
78        let input = self
79            .inner
80            .build()
81            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
82        let runtime_plugins = crate::operation::submit_job::SubmitJob::operation_runtime_plugins(
83            self.handle.runtime_plugins.clone(),
84            &self.handle.conf,
85            self.config_override,
86        );
87        crate::operation::submit_job::SubmitJob::orchestrate(&runtime_plugins, input).await
88    }
89
90    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
91    pub fn customize(
92        self,
93    ) -> crate::client::customize::CustomizableOperation<
94        crate::operation::submit_job::SubmitJobOutput,
95        crate::operation::submit_job::SubmitJobError,
96        Self,
97    > {
98        crate::client::customize::CustomizableOperation::new(self)
99    }
100    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
101        self.set_config_override(::std::option::Option::Some(config_override.into()));
102        self
103    }
104
105    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
106        self.config_override = config_override;
107        self
108    }
109    /// <p>The name of the job. It can be up to 128 letters long. The first character must be alphanumeric, can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).</p>
110    pub fn job_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
111        self.inner = self.inner.job_name(input.into());
112        self
113    }
114    /// <p>The name of the job. It can be up to 128 letters long. The first character must be alphanumeric, can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).</p>
115    pub fn set_job_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
116        self.inner = self.inner.set_job_name(input);
117        self
118    }
119    /// <p>The name of the job. It can be up to 128 letters long. The first character must be alphanumeric, can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).</p>
120    pub fn get_job_name(&self) -> &::std::option::Option<::std::string::String> {
121        self.inner.get_job_name()
122    }
123    /// <p>The job queue where the job is submitted. You can specify either the name or the Amazon Resource Name (ARN) of the queue.</p>
124    pub fn job_queue(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
125        self.inner = self.inner.job_queue(input.into());
126        self
127    }
128    /// <p>The job queue where the job is submitted. You can specify either the name or the Amazon Resource Name (ARN) of the queue.</p>
129    pub fn set_job_queue(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
130        self.inner = self.inner.set_job_queue(input);
131        self
132    }
133    /// <p>The job queue where the job is submitted. You can specify either the name or the Amazon Resource Name (ARN) of the queue.</p>
134    pub fn get_job_queue(&self) -> &::std::option::Option<::std::string::String> {
135        self.inner.get_job_queue()
136    }
137    /// <p>The share identifier for the job. Don't specify this parameter if the job queue doesn't have a fair-share scheduling policy. If the job queue has a fair-share scheduling policy, then this parameter must be specified.</p>
138    /// <p>This string is limited to 255 alphanumeric characters, and can be followed by an asterisk (*).</p>
139    pub fn share_identifier(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
140        self.inner = self.inner.share_identifier(input.into());
141        self
142    }
143    /// <p>The share identifier for the job. Don't specify this parameter if the job queue doesn't have a fair-share scheduling policy. If the job queue has a fair-share scheduling policy, then this parameter must be specified.</p>
144    /// <p>This string is limited to 255 alphanumeric characters, and can be followed by an asterisk (*).</p>
145    pub fn set_share_identifier(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
146        self.inner = self.inner.set_share_identifier(input);
147        self
148    }
149    /// <p>The share identifier for the job. Don't specify this parameter if the job queue doesn't have a fair-share scheduling policy. If the job queue has a fair-share scheduling policy, then this parameter must be specified.</p>
150    /// <p>This string is limited to 255 alphanumeric characters, and can be followed by an asterisk (*).</p>
151    pub fn get_share_identifier(&self) -> &::std::option::Option<::std::string::String> {
152        self.inner.get_share_identifier()
153    }
154    /// <p>The scheduling priority for the job. This only affects jobs in job queues with a fair-share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority. This overrides any scheduling priority in the job definition and works only within a single share identifier.</p>
155    /// <p>The minimum supported value is 0 and the maximum supported value is 9999.</p>
156    pub fn scheduling_priority_override(mut self, input: i32) -> Self {
157        self.inner = self.inner.scheduling_priority_override(input);
158        self
159    }
160    /// <p>The scheduling priority for the job. This only affects jobs in job queues with a fair-share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority. This overrides any scheduling priority in the job definition and works only within a single share identifier.</p>
161    /// <p>The minimum supported value is 0 and the maximum supported value is 9999.</p>
162    pub fn set_scheduling_priority_override(mut self, input: ::std::option::Option<i32>) -> Self {
163        self.inner = self.inner.set_scheduling_priority_override(input);
164        self
165    }
166    /// <p>The scheduling priority for the job. This only affects jobs in job queues with a fair-share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority. This overrides any scheduling priority in the job definition and works only within a single share identifier.</p>
167    /// <p>The minimum supported value is 0 and the maximum supported value is 9999.</p>
168    pub fn get_scheduling_priority_override(&self) -> &::std::option::Option<i32> {
169        self.inner.get_scheduling_priority_override()
170    }
171    /// <p>The array properties for the submitted job, such as the size of the array. The array size can be between 2 and 10,000. If you specify array properties for a job, it becomes an array job. For more information, see <a href="https://docs.aws.amazon.com/batch/latest/userguide/array_jobs.html">Array Jobs</a> in the <i>Batch User Guide</i>.</p>
172    pub fn array_properties(mut self, input: crate::types::ArrayProperties) -> Self {
173        self.inner = self.inner.array_properties(input);
174        self
175    }
176    /// <p>The array properties for the submitted job, such as the size of the array. The array size can be between 2 and 10,000. If you specify array properties for a job, it becomes an array job. For more information, see <a href="https://docs.aws.amazon.com/batch/latest/userguide/array_jobs.html">Array Jobs</a> in the <i>Batch User Guide</i>.</p>
177    pub fn set_array_properties(mut self, input: ::std::option::Option<crate::types::ArrayProperties>) -> Self {
178        self.inner = self.inner.set_array_properties(input);
179        self
180    }
181    /// <p>The array properties for the submitted job, such as the size of the array. The array size can be between 2 and 10,000. If you specify array properties for a job, it becomes an array job. For more information, see <a href="https://docs.aws.amazon.com/batch/latest/userguide/array_jobs.html">Array Jobs</a> in the <i>Batch User Guide</i>.</p>
182    pub fn get_array_properties(&self) -> &::std::option::Option<crate::types::ArrayProperties> {
183        self.inner.get_array_properties()
184    }
185    ///
186    /// Appends an item to `dependsOn`.
187    ///
188    /// To override the contents of this collection use [`set_depends_on`](Self::set_depends_on).
189    ///
190    /// <p>A list of dependencies for the job. A job can depend upon a maximum of 20 jobs. You can specify a <code>SEQUENTIAL</code> type dependency without specifying a job ID for array jobs so that each child array job completes sequentially, starting at index 0. You can also specify an <code>N_TO_N</code> type dependency with a job ID for array jobs. In that case, each index child of this job must wait for the corresponding index child of each dependency to complete before it can begin.</p>
191    pub fn depends_on(mut self, input: crate::types::JobDependency) -> Self {
192        self.inner = self.inner.depends_on(input);
193        self
194    }
195    /// <p>A list of dependencies for the job. A job can depend upon a maximum of 20 jobs. You can specify a <code>SEQUENTIAL</code> type dependency without specifying a job ID for array jobs so that each child array job completes sequentially, starting at index 0. You can also specify an <code>N_TO_N</code> type dependency with a job ID for array jobs. In that case, each index child of this job must wait for the corresponding index child of each dependency to complete before it can begin.</p>
196    pub fn set_depends_on(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::JobDependency>>) -> Self {
197        self.inner = self.inner.set_depends_on(input);
198        self
199    }
200    /// <p>A list of dependencies for the job. A job can depend upon a maximum of 20 jobs. You can specify a <code>SEQUENTIAL</code> type dependency without specifying a job ID for array jobs so that each child array job completes sequentially, starting at index 0. You can also specify an <code>N_TO_N</code> type dependency with a job ID for array jobs. In that case, each index child of this job must wait for the corresponding index child of each dependency to complete before it can begin.</p>
201    pub fn get_depends_on(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::JobDependency>> {
202        self.inner.get_depends_on()
203    }
204    /// <p>The job definition used by this job. This value can be one of <code>definition-name</code>, <code>definition-name:revision</code>, or the Amazon Resource Name (ARN) for the job definition, with or without the revision (<code>arn:aws:batch:<i>region</i>:<i>account</i>:job-definition/<i>definition-name</i>:<i>revision</i> </code>, or <code>arn:aws:batch:<i>region</i>:<i>account</i>:job-definition/<i>definition-name</i> </code>).</p>
205    /// <p>If the revision is not specified, then the latest active revision is used.</p>
206    pub fn job_definition(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
207        self.inner = self.inner.job_definition(input.into());
208        self
209    }
210    /// <p>The job definition used by this job. This value can be one of <code>definition-name</code>, <code>definition-name:revision</code>, or the Amazon Resource Name (ARN) for the job definition, with or without the revision (<code>arn:aws:batch:<i>region</i>:<i>account</i>:job-definition/<i>definition-name</i>:<i>revision</i> </code>, or <code>arn:aws:batch:<i>region</i>:<i>account</i>:job-definition/<i>definition-name</i> </code>).</p>
211    /// <p>If the revision is not specified, then the latest active revision is used.</p>
212    pub fn set_job_definition(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
213        self.inner = self.inner.set_job_definition(input);
214        self
215    }
216    /// <p>The job definition used by this job. This value can be one of <code>definition-name</code>, <code>definition-name:revision</code>, or the Amazon Resource Name (ARN) for the job definition, with or without the revision (<code>arn:aws:batch:<i>region</i>:<i>account</i>:job-definition/<i>definition-name</i>:<i>revision</i> </code>, or <code>arn:aws:batch:<i>region</i>:<i>account</i>:job-definition/<i>definition-name</i> </code>).</p>
217    /// <p>If the revision is not specified, then the latest active revision is used.</p>
218    pub fn get_job_definition(&self) -> &::std::option::Option<::std::string::String> {
219        self.inner.get_job_definition()
220    }
221    ///
222    /// Adds a key-value pair to `parameters`.
223    ///
224    /// To override the contents of this collection use [`set_parameters`](Self::set_parameters).
225    ///
226    /// <p>Additional parameters passed to the job that replace parameter substitution placeholders that are set in the job definition. Parameters are specified as a key and value pair mapping. Parameters in a <code>SubmitJob</code> request override any corresponding parameter defaults from the job definition.</p>
227    pub fn parameters(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
228        self.inner = self.inner.parameters(k.into(), v.into());
229        self
230    }
231    /// <p>Additional parameters passed to the job that replace parameter substitution placeholders that are set in the job definition. Parameters are specified as a key and value pair mapping. Parameters in a <code>SubmitJob</code> request override any corresponding parameter defaults from the job definition.</p>
232    pub fn set_parameters(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
233        self.inner = self.inner.set_parameters(input);
234        self
235    }
236    /// <p>Additional parameters passed to the job that replace parameter substitution placeholders that are set in the job definition. Parameters are specified as a key and value pair mapping. Parameters in a <code>SubmitJob</code> request override any corresponding parameter defaults from the job definition.</p>
237    pub fn get_parameters(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
238        self.inner.get_parameters()
239    }
240    /// <p>An object with properties that override the defaults for the job definition that specify the name of a container in the specified job definition and the overrides it should receive. You can override the default command for a container, which is specified in the job definition or the Docker image, with a <code>command</code> override. You can also override existing environment variables on a container or add new environment variables to it with an <code>environment</code> override.</p>
241    pub fn container_overrides(mut self, input: crate::types::ContainerOverrides) -> Self {
242        self.inner = self.inner.container_overrides(input);
243        self
244    }
245    /// <p>An object with properties that override the defaults for the job definition that specify the name of a container in the specified job definition and the overrides it should receive. You can override the default command for a container, which is specified in the job definition or the Docker image, with a <code>command</code> override. You can also override existing environment variables on a container or add new environment variables to it with an <code>environment</code> override.</p>
246    pub fn set_container_overrides(mut self, input: ::std::option::Option<crate::types::ContainerOverrides>) -> Self {
247        self.inner = self.inner.set_container_overrides(input);
248        self
249    }
250    /// <p>An object with properties that override the defaults for the job definition that specify the name of a container in the specified job definition and the overrides it should receive. You can override the default command for a container, which is specified in the job definition or the Docker image, with a <code>command</code> override. You can also override existing environment variables on a container or add new environment variables to it with an <code>environment</code> override.</p>
251    pub fn get_container_overrides(&self) -> &::std::option::Option<crate::types::ContainerOverrides> {
252        self.inner.get_container_overrides()
253    }
254    /// <p>A list of node overrides in JSON format that specify the node range to target and the container overrides for that node range.</p><note>
255    /// <p>This parameter isn't applicable to jobs that are running on Fargate resources; use <code>containerOverrides</code> instead.</p>
256    /// </note>
257    pub fn node_overrides(mut self, input: crate::types::NodeOverrides) -> Self {
258        self.inner = self.inner.node_overrides(input);
259        self
260    }
261    /// <p>A list of node overrides in JSON format that specify the node range to target and the container overrides for that node range.</p><note>
262    /// <p>This parameter isn't applicable to jobs that are running on Fargate resources; use <code>containerOverrides</code> instead.</p>
263    /// </note>
264    pub fn set_node_overrides(mut self, input: ::std::option::Option<crate::types::NodeOverrides>) -> Self {
265        self.inner = self.inner.set_node_overrides(input);
266        self
267    }
268    /// <p>A list of node overrides in JSON format that specify the node range to target and the container overrides for that node range.</p><note>
269    /// <p>This parameter isn't applicable to jobs that are running on Fargate resources; use <code>containerOverrides</code> instead.</p>
270    /// </note>
271    pub fn get_node_overrides(&self) -> &::std::option::Option<crate::types::NodeOverrides> {
272        self.inner.get_node_overrides()
273    }
274    /// <p>The retry strategy to use for failed jobs from this <code>SubmitJob</code> operation. When a retry strategy is specified here, it overrides the retry strategy defined in the job definition.</p>
275    pub fn retry_strategy(mut self, input: crate::types::RetryStrategy) -> Self {
276        self.inner = self.inner.retry_strategy(input);
277        self
278    }
279    /// <p>The retry strategy to use for failed jobs from this <code>SubmitJob</code> operation. When a retry strategy is specified here, it overrides the retry strategy defined in the job definition.</p>
280    pub fn set_retry_strategy(mut self, input: ::std::option::Option<crate::types::RetryStrategy>) -> Self {
281        self.inner = self.inner.set_retry_strategy(input);
282        self
283    }
284    /// <p>The retry strategy to use for failed jobs from this <code>SubmitJob</code> operation. When a retry strategy is specified here, it overrides the retry strategy defined in the job definition.</p>
285    pub fn get_retry_strategy(&self) -> &::std::option::Option<crate::types::RetryStrategy> {
286        self.inner.get_retry_strategy()
287    }
288    /// <p>Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task. If no value is specified, the tags aren't propagated. Tags can only be propagated to the tasks during task creation. For tags with the same name, job tags are given priority over job definitions tags. If the total number of combined tags from the job and job definition is over 50, the job is moved to the <code>FAILED</code> state. When specified, this overrides the tag propagation setting in the job definition.</p>
289    pub fn propagate_tags(mut self, input: bool) -> Self {
290        self.inner = self.inner.propagate_tags(input);
291        self
292    }
293    /// <p>Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task. If no value is specified, the tags aren't propagated. Tags can only be propagated to the tasks during task creation. For tags with the same name, job tags are given priority over job definitions tags. If the total number of combined tags from the job and job definition is over 50, the job is moved to the <code>FAILED</code> state. When specified, this overrides the tag propagation setting in the job definition.</p>
294    pub fn set_propagate_tags(mut self, input: ::std::option::Option<bool>) -> Self {
295        self.inner = self.inner.set_propagate_tags(input);
296        self
297    }
298    /// <p>Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task. If no value is specified, the tags aren't propagated. Tags can only be propagated to the tasks during task creation. For tags with the same name, job tags are given priority over job definitions tags. If the total number of combined tags from the job and job definition is over 50, the job is moved to the <code>FAILED</code> state. When specified, this overrides the tag propagation setting in the job definition.</p>
299    pub fn get_propagate_tags(&self) -> &::std::option::Option<bool> {
300        self.inner.get_propagate_tags()
301    }
302    /// <p>The timeout configuration for this <code>SubmitJob</code> operation. You can specify a timeout duration after which Batch terminates your jobs if they haven't finished. If a job is terminated due to a timeout, it isn't retried. The minimum value for the timeout is 60 seconds. This configuration overrides any timeout configuration specified in the job definition. For array jobs, child jobs have the same timeout configuration as the parent job. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/job_timeouts.html">Job Timeouts</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
303    pub fn timeout(mut self, input: crate::types::JobTimeout) -> Self {
304        self.inner = self.inner.timeout(input);
305        self
306    }
307    /// <p>The timeout configuration for this <code>SubmitJob</code> operation. You can specify a timeout duration after which Batch terminates your jobs if they haven't finished. If a job is terminated due to a timeout, it isn't retried. The minimum value for the timeout is 60 seconds. This configuration overrides any timeout configuration specified in the job definition. For array jobs, child jobs have the same timeout configuration as the parent job. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/job_timeouts.html">Job Timeouts</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
308    pub fn set_timeout(mut self, input: ::std::option::Option<crate::types::JobTimeout>) -> Self {
309        self.inner = self.inner.set_timeout(input);
310        self
311    }
312    /// <p>The timeout configuration for this <code>SubmitJob</code> operation. You can specify a timeout duration after which Batch terminates your jobs if they haven't finished. If a job is terminated due to a timeout, it isn't retried. The minimum value for the timeout is 60 seconds. This configuration overrides any timeout configuration specified in the job definition. For array jobs, child jobs have the same timeout configuration as the parent job. For more information, see <a href="https://docs.aws.amazon.com/AmazonECS/latest/developerguide/job_timeouts.html">Job Timeouts</a> in the <i>Amazon Elastic Container Service Developer Guide</i>.</p>
313    pub fn get_timeout(&self) -> &::std::option::Option<crate::types::JobTimeout> {
314        self.inner.get_timeout()
315    }
316    ///
317    /// Adds a key-value pair to `tags`.
318    ///
319    /// To override the contents of this collection use [`set_tags`](Self::set_tags).
320    ///
321    /// <p>The tags that you apply to the job request to help you categorize and organize your resources. Each tag consists of a key and an optional value. For more information, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html">Tagging Amazon Web Services Resources</a> in <i>Amazon Web Services General Reference</i>.</p>
322    pub fn tags(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
323        self.inner = self.inner.tags(k.into(), v.into());
324        self
325    }
326    /// <p>The tags that you apply to the job request to help you categorize and organize your resources. Each tag consists of a key and an optional value. For more information, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html">Tagging Amazon Web Services Resources</a> in <i>Amazon Web Services General Reference</i>.</p>
327    pub fn set_tags(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
328        self.inner = self.inner.set_tags(input);
329        self
330    }
331    /// <p>The tags that you apply to the job request to help you categorize and organize your resources. Each tag consists of a key and an optional value. For more information, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html">Tagging Amazon Web Services Resources</a> in <i>Amazon Web Services General Reference</i>.</p>
332    pub fn get_tags(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
333        self.inner.get_tags()
334    }
335    /// <p>An object, with properties that override defaults for the job definition, can only be specified for jobs that are run on Amazon EKS resources.</p>
336    pub fn eks_properties_override(mut self, input: crate::types::EksPropertiesOverride) -> Self {
337        self.inner = self.inner.eks_properties_override(input);
338        self
339    }
340    /// <p>An object, with properties that override defaults for the job definition, can only be specified for jobs that are run on Amazon EKS resources.</p>
341    pub fn set_eks_properties_override(mut self, input: ::std::option::Option<crate::types::EksPropertiesOverride>) -> Self {
342        self.inner = self.inner.set_eks_properties_override(input);
343        self
344    }
345    /// <p>An object, with properties that override defaults for the job definition, can only be specified for jobs that are run on Amazon EKS resources.</p>
346    pub fn get_eks_properties_override(&self) -> &::std::option::Option<crate::types::EksPropertiesOverride> {
347        self.inner.get_eks_properties_override()
348    }
349    /// <p>An object, with properties that override defaults for the job definition, can only be specified for jobs that are run on Amazon ECS resources.</p>
350    pub fn ecs_properties_override(mut self, input: crate::types::EcsPropertiesOverride) -> Self {
351        self.inner = self.inner.ecs_properties_override(input);
352        self
353    }
354    /// <p>An object, with properties that override defaults for the job definition, can only be specified for jobs that are run on Amazon ECS resources.</p>
355    pub fn set_ecs_properties_override(mut self, input: ::std::option::Option<crate::types::EcsPropertiesOverride>) -> Self {
356        self.inner = self.inner.set_ecs_properties_override(input);
357        self
358    }
359    /// <p>An object, with properties that override defaults for the job definition, can only be specified for jobs that are run on Amazon ECS resources.</p>
360    pub fn get_ecs_properties_override(&self) -> &::std::option::Option<crate::types::EcsPropertiesOverride> {
361        self.inner.get_ecs_properties_override()
362    }
363    /// <p>An object that contains overrides for the consumable resources of a job.</p>
364    pub fn consumable_resource_properties_override(mut self, input: crate::types::ConsumableResourceProperties) -> Self {
365        self.inner = self.inner.consumable_resource_properties_override(input);
366        self
367    }
368    /// <p>An object that contains overrides for the consumable resources of a job.</p>
369    pub fn set_consumable_resource_properties_override(mut self, input: ::std::option::Option<crate::types::ConsumableResourceProperties>) -> Self {
370        self.inner = self.inner.set_consumable_resource_properties_override(input);
371        self
372    }
373    /// <p>An object that contains overrides for the consumable resources of a job.</p>
374    pub fn get_consumable_resource_properties_override(&self) -> &::std::option::Option<crate::types::ConsumableResourceProperties> {
375        self.inner.get_consumable_resource_properties_override()
376    }
377}