aws_sdk_omics/operation/start_run/_start_run_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 StartRunInput {
6 /// <p>The run's workflow ID. The <code>workflowId</code> is not the UUID.</p>
7 pub workflow_id: ::std::option::Option<::std::string::String>,
8 /// <p>The run's workflow type. The <code>workflowType</code> must be specified if you are running a <code>READY2RUN</code> workflow. If you are running a <code>PRIVATE</code> workflow (default), you do not need to include the workflow type.</p>
9 pub workflow_type: ::std::option::Option<crate::types::WorkflowType>,
10 /// <p>The ID of a run to duplicate.</p>
11 pub run_id: ::std::option::Option<::std::string::String>,
12 /// <p>A service role for the run. The <code>roleArn</code> requires access to Amazon Web Services HealthOmics, S3, Cloudwatch logs, and EC2. An example <code>roleArn</code> is <code>arn:aws:iam::123456789012:role/omics-service-role-serviceRole-W8O1XMPL7QZ</code>. In this example, the AWS account ID is <code>123456789012</code> and the role name is <code>omics-service-role-serviceRole-W8O1XMPL7QZ</code>.</p>
13 pub role_arn: ::std::option::Option<::std::string::String>,
14 /// <p>A name for the run. This is recommended to view and organize runs in the Amazon Web Services HealthOmics console and CloudWatch logs.</p>
15 pub name: ::std::option::Option<::std::string::String>,
16 /// <p>Identifier of the cache associated with this run. If you don't specify a cache ID, no task outputs are cached for this run.</p>
17 pub cache_id: ::std::option::Option<::std::string::String>,
18 /// <p>The cache behavior for the run. You specify this value if you want to override the default behavior for the cache. You had set the default value when you created the cache. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/how-run-cache.html#run-cache-behavior">Run cache behavior</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
19 pub cache_behavior: ::std::option::Option<crate::types::CacheBehavior>,
20 /// <p>The run's group ID. Use a run group to cap the compute resources (and number of concurrent runs) for the runs that you add to the run group.</p>
21 pub run_group_id: ::std::option::Option<::std::string::String>,
22 /// <p>Use the run priority (highest: 1) to establish the order of runs in a run group when you start a run. If multiple runs share the same priority, the run that was initiated first will have the higher priority. Runs that do not belong to a run group can be assigned a priority. The priorities of these runs are ranked among other runs that are not in a run group. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/creating-run-groups.html#run-priority">Run priority</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
23 pub priority: ::std::option::Option<i32>,
24 /// <p>Parameters for the run. The run needs all required parameters and can include optional parameters. The run cannot include any parameters that are not defined in the parameter template. To retrieve parameters from the run, use the GetRun API operation.</p>
25 pub parameters: ::std::option::Option<::aws_smithy_types::Document>,
26 /// <p>The <code>STATIC</code> storage capacity (in gibibytes, GiB) for this run. The default run storage capacity is 1200 GiB. If your requested storage capacity is unavailable, the system rounds up the value to the nearest 1200 GiB multiple. If the requested storage capacity is still unavailable, the system rounds up the value to the nearest 2400 GiB multiple. This field is not required if the storage type is <code>DYNAMIC</code> (the system ignores any value that you enter).</p>
27 pub storage_capacity: ::std::option::Option<i32>,
28 /// <p>An output S3 URI for the run. The S3 bucket must be in the same region as the workflow. The role ARN must have permission to write to this S3 bucket.</p>
29 pub output_uri: ::std::option::Option<::std::string::String>,
30 /// <p>A log level for the run.</p>
31 pub log_level: ::std::option::Option<crate::types::RunLogLevel>,
32 /// <p>Tags for the run. You can add up to 50 tags per run. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/add-a-tag.html">Adding a tag</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
33 pub tags: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
34 /// <p>An idempotency token used to dedupe retry requests so that duplicate runs are not created.</p>
35 pub request_id: ::std::option::Option<::std::string::String>,
36 /// <p>The retention mode for the run. The default value is <code>RETAIN</code>.</p>
37 /// <p>Amazon Web Services HealthOmics stores a fixed number of runs that are available to the console and API. In the default mode (<code>RETAIN</code>), you need to remove runs manually when the number of run exceeds the maximum. If you set the retention mode to <code>REMOVE</code>, Amazon Web Services HealthOmics automatically removes runs (that have mode set to <code>REMOVE</code>) when the number of run exceeds the maximum. All run logs are available in CloudWatch logs, if you need information about a run that is no longer available to the API.</p>
38 /// <p>For more information about retention mode, see <a href="https://docs.aws.amazon.com/omics/latest/dev/starting-a-run.html">Specifying run retention mode</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
39 pub retention_mode: ::std::option::Option<crate::types::RunRetentionMode>,
40 /// <p>The storage type for the run. If you set the storage type to <code>DYNAMIC</code>, Amazon Web Services HealthOmics dynamically scales the storage up or down, based on file system utilization. By default, the run uses <code>STATIC</code> storage type, which allocates a fixed amount of storage. For more information about <code>DYNAMIC</code> and <code>STATIC</code> storage, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflows-run-types.html">Run storage types</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
41 pub storage_type: ::std::option::Option<crate::types::StorageType>,
42 /// <p>The 12-digit account ID of the workflow owner that is used for running a shared workflow. The workflow owner ID can be retrieved using the <code>GetShare</code> API operation. If you are the workflow owner, you do not need to include this ID.</p>
43 pub workflow_owner_id: ::std::option::Option<::std::string::String>,
44 /// <p>The name of the workflow version. Use workflow versions to track and organize changes to the workflow. If your workflow has multiple versions, the run uses the default version unless you specify a version name. To learn more, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflow-versions.html">Workflow versioning</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
45 pub workflow_version_name: ::std::option::Option<::std::string::String>,
46}
47impl StartRunInput {
48 /// <p>The run's workflow ID. The <code>workflowId</code> is not the UUID.</p>
49 pub fn workflow_id(&self) -> ::std::option::Option<&str> {
50 self.workflow_id.as_deref()
51 }
52 /// <p>The run's workflow type. The <code>workflowType</code> must be specified if you are running a <code>READY2RUN</code> workflow. If you are running a <code>PRIVATE</code> workflow (default), you do not need to include the workflow type.</p>
53 pub fn workflow_type(&self) -> ::std::option::Option<&crate::types::WorkflowType> {
54 self.workflow_type.as_ref()
55 }
56 /// <p>The ID of a run to duplicate.</p>
57 pub fn run_id(&self) -> ::std::option::Option<&str> {
58 self.run_id.as_deref()
59 }
60 /// <p>A service role for the run. The <code>roleArn</code> requires access to Amazon Web Services HealthOmics, S3, Cloudwatch logs, and EC2. An example <code>roleArn</code> is <code>arn:aws:iam::123456789012:role/omics-service-role-serviceRole-W8O1XMPL7QZ</code>. In this example, the AWS account ID is <code>123456789012</code> and the role name is <code>omics-service-role-serviceRole-W8O1XMPL7QZ</code>.</p>
61 pub fn role_arn(&self) -> ::std::option::Option<&str> {
62 self.role_arn.as_deref()
63 }
64 /// <p>A name for the run. This is recommended to view and organize runs in the Amazon Web Services HealthOmics console and CloudWatch logs.</p>
65 pub fn name(&self) -> ::std::option::Option<&str> {
66 self.name.as_deref()
67 }
68 /// <p>Identifier of the cache associated with this run. If you don't specify a cache ID, no task outputs are cached for this run.</p>
69 pub fn cache_id(&self) -> ::std::option::Option<&str> {
70 self.cache_id.as_deref()
71 }
72 /// <p>The cache behavior for the run. You specify this value if you want to override the default behavior for the cache. You had set the default value when you created the cache. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/how-run-cache.html#run-cache-behavior">Run cache behavior</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
73 pub fn cache_behavior(&self) -> ::std::option::Option<&crate::types::CacheBehavior> {
74 self.cache_behavior.as_ref()
75 }
76 /// <p>The run's group ID. Use a run group to cap the compute resources (and number of concurrent runs) for the runs that you add to the run group.</p>
77 pub fn run_group_id(&self) -> ::std::option::Option<&str> {
78 self.run_group_id.as_deref()
79 }
80 /// <p>Use the run priority (highest: 1) to establish the order of runs in a run group when you start a run. If multiple runs share the same priority, the run that was initiated first will have the higher priority. Runs that do not belong to a run group can be assigned a priority. The priorities of these runs are ranked among other runs that are not in a run group. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/creating-run-groups.html#run-priority">Run priority</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
81 pub fn priority(&self) -> ::std::option::Option<i32> {
82 self.priority
83 }
84 /// <p>Parameters for the run. The run needs all required parameters and can include optional parameters. The run cannot include any parameters that are not defined in the parameter template. To retrieve parameters from the run, use the GetRun API operation.</p>
85 pub fn parameters(&self) -> ::std::option::Option<&::aws_smithy_types::Document> {
86 self.parameters.as_ref()
87 }
88 /// <p>The <code>STATIC</code> storage capacity (in gibibytes, GiB) for this run. The default run storage capacity is 1200 GiB. If your requested storage capacity is unavailable, the system rounds up the value to the nearest 1200 GiB multiple. If the requested storage capacity is still unavailable, the system rounds up the value to the nearest 2400 GiB multiple. This field is not required if the storage type is <code>DYNAMIC</code> (the system ignores any value that you enter).</p>
89 pub fn storage_capacity(&self) -> ::std::option::Option<i32> {
90 self.storage_capacity
91 }
92 /// <p>An output S3 URI for the run. The S3 bucket must be in the same region as the workflow. The role ARN must have permission to write to this S3 bucket.</p>
93 pub fn output_uri(&self) -> ::std::option::Option<&str> {
94 self.output_uri.as_deref()
95 }
96 /// <p>A log level for the run.</p>
97 pub fn log_level(&self) -> ::std::option::Option<&crate::types::RunLogLevel> {
98 self.log_level.as_ref()
99 }
100 /// <p>Tags for the run. You can add up to 50 tags per run. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/add-a-tag.html">Adding a tag</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
101 pub fn tags(&self) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, ::std::string::String>> {
102 self.tags.as_ref()
103 }
104 /// <p>An idempotency token used to dedupe retry requests so that duplicate runs are not created.</p>
105 pub fn request_id(&self) -> ::std::option::Option<&str> {
106 self.request_id.as_deref()
107 }
108 /// <p>The retention mode for the run. The default value is <code>RETAIN</code>.</p>
109 /// <p>Amazon Web Services HealthOmics stores a fixed number of runs that are available to the console and API. In the default mode (<code>RETAIN</code>), you need to remove runs manually when the number of run exceeds the maximum. If you set the retention mode to <code>REMOVE</code>, Amazon Web Services HealthOmics automatically removes runs (that have mode set to <code>REMOVE</code>) when the number of run exceeds the maximum. All run logs are available in CloudWatch logs, if you need information about a run that is no longer available to the API.</p>
110 /// <p>For more information about retention mode, see <a href="https://docs.aws.amazon.com/omics/latest/dev/starting-a-run.html">Specifying run retention mode</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
111 pub fn retention_mode(&self) -> ::std::option::Option<&crate::types::RunRetentionMode> {
112 self.retention_mode.as_ref()
113 }
114 /// <p>The storage type for the run. If you set the storage type to <code>DYNAMIC</code>, Amazon Web Services HealthOmics dynamically scales the storage up or down, based on file system utilization. By default, the run uses <code>STATIC</code> storage type, which allocates a fixed amount of storage. For more information about <code>DYNAMIC</code> and <code>STATIC</code> storage, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflows-run-types.html">Run storage types</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
115 pub fn storage_type(&self) -> ::std::option::Option<&crate::types::StorageType> {
116 self.storage_type.as_ref()
117 }
118 /// <p>The 12-digit account ID of the workflow owner that is used for running a shared workflow. The workflow owner ID can be retrieved using the <code>GetShare</code> API operation. If you are the workflow owner, you do not need to include this ID.</p>
119 pub fn workflow_owner_id(&self) -> ::std::option::Option<&str> {
120 self.workflow_owner_id.as_deref()
121 }
122 /// <p>The name of the workflow version. Use workflow versions to track and organize changes to the workflow. If your workflow has multiple versions, the run uses the default version unless you specify a version name. To learn more, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflow-versions.html">Workflow versioning</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
123 pub fn workflow_version_name(&self) -> ::std::option::Option<&str> {
124 self.workflow_version_name.as_deref()
125 }
126}
127impl StartRunInput {
128 /// Creates a new builder-style object to manufacture [`StartRunInput`](crate::operation::start_run::StartRunInput).
129 pub fn builder() -> crate::operation::start_run::builders::StartRunInputBuilder {
130 crate::operation::start_run::builders::StartRunInputBuilder::default()
131 }
132}
133
134/// A builder for [`StartRunInput`](crate::operation::start_run::StartRunInput).
135#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
136#[non_exhaustive]
137pub struct StartRunInputBuilder {
138 pub(crate) workflow_id: ::std::option::Option<::std::string::String>,
139 pub(crate) workflow_type: ::std::option::Option<crate::types::WorkflowType>,
140 pub(crate) run_id: ::std::option::Option<::std::string::String>,
141 pub(crate) role_arn: ::std::option::Option<::std::string::String>,
142 pub(crate) name: ::std::option::Option<::std::string::String>,
143 pub(crate) cache_id: ::std::option::Option<::std::string::String>,
144 pub(crate) cache_behavior: ::std::option::Option<crate::types::CacheBehavior>,
145 pub(crate) run_group_id: ::std::option::Option<::std::string::String>,
146 pub(crate) priority: ::std::option::Option<i32>,
147 pub(crate) parameters: ::std::option::Option<::aws_smithy_types::Document>,
148 pub(crate) storage_capacity: ::std::option::Option<i32>,
149 pub(crate) output_uri: ::std::option::Option<::std::string::String>,
150 pub(crate) log_level: ::std::option::Option<crate::types::RunLogLevel>,
151 pub(crate) tags: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
152 pub(crate) request_id: ::std::option::Option<::std::string::String>,
153 pub(crate) retention_mode: ::std::option::Option<crate::types::RunRetentionMode>,
154 pub(crate) storage_type: ::std::option::Option<crate::types::StorageType>,
155 pub(crate) workflow_owner_id: ::std::option::Option<::std::string::String>,
156 pub(crate) workflow_version_name: ::std::option::Option<::std::string::String>,
157}
158impl StartRunInputBuilder {
159 /// <p>The run's workflow ID. The <code>workflowId</code> is not the UUID.</p>
160 pub fn workflow_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
161 self.workflow_id = ::std::option::Option::Some(input.into());
162 self
163 }
164 /// <p>The run's workflow ID. The <code>workflowId</code> is not the UUID.</p>
165 pub fn set_workflow_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
166 self.workflow_id = input;
167 self
168 }
169 /// <p>The run's workflow ID. The <code>workflowId</code> is not the UUID.</p>
170 pub fn get_workflow_id(&self) -> &::std::option::Option<::std::string::String> {
171 &self.workflow_id
172 }
173 /// <p>The run's workflow type. The <code>workflowType</code> must be specified if you are running a <code>READY2RUN</code> workflow. If you are running a <code>PRIVATE</code> workflow (default), you do not need to include the workflow type.</p>
174 pub fn workflow_type(mut self, input: crate::types::WorkflowType) -> Self {
175 self.workflow_type = ::std::option::Option::Some(input);
176 self
177 }
178 /// <p>The run's workflow type. The <code>workflowType</code> must be specified if you are running a <code>READY2RUN</code> workflow. If you are running a <code>PRIVATE</code> workflow (default), you do not need to include the workflow type.</p>
179 pub fn set_workflow_type(mut self, input: ::std::option::Option<crate::types::WorkflowType>) -> Self {
180 self.workflow_type = input;
181 self
182 }
183 /// <p>The run's workflow type. The <code>workflowType</code> must be specified if you are running a <code>READY2RUN</code> workflow. If you are running a <code>PRIVATE</code> workflow (default), you do not need to include the workflow type.</p>
184 pub fn get_workflow_type(&self) -> &::std::option::Option<crate::types::WorkflowType> {
185 &self.workflow_type
186 }
187 /// <p>The ID of a run to duplicate.</p>
188 pub fn run_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
189 self.run_id = ::std::option::Option::Some(input.into());
190 self
191 }
192 /// <p>The ID of a run to duplicate.</p>
193 pub fn set_run_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
194 self.run_id = input;
195 self
196 }
197 /// <p>The ID of a run to duplicate.</p>
198 pub fn get_run_id(&self) -> &::std::option::Option<::std::string::String> {
199 &self.run_id
200 }
201 /// <p>A service role for the run. The <code>roleArn</code> requires access to Amazon Web Services HealthOmics, S3, Cloudwatch logs, and EC2. An example <code>roleArn</code> is <code>arn:aws:iam::123456789012:role/omics-service-role-serviceRole-W8O1XMPL7QZ</code>. In this example, the AWS account ID is <code>123456789012</code> and the role name is <code>omics-service-role-serviceRole-W8O1XMPL7QZ</code>.</p>
202 /// This field is required.
203 pub fn role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
204 self.role_arn = ::std::option::Option::Some(input.into());
205 self
206 }
207 /// <p>A service role for the run. The <code>roleArn</code> requires access to Amazon Web Services HealthOmics, S3, Cloudwatch logs, and EC2. An example <code>roleArn</code> is <code>arn:aws:iam::123456789012:role/omics-service-role-serviceRole-W8O1XMPL7QZ</code>. In this example, the AWS account ID is <code>123456789012</code> and the role name is <code>omics-service-role-serviceRole-W8O1XMPL7QZ</code>.</p>
208 pub fn set_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
209 self.role_arn = input;
210 self
211 }
212 /// <p>A service role for the run. The <code>roleArn</code> requires access to Amazon Web Services HealthOmics, S3, Cloudwatch logs, and EC2. An example <code>roleArn</code> is <code>arn:aws:iam::123456789012:role/omics-service-role-serviceRole-W8O1XMPL7QZ</code>. In this example, the AWS account ID is <code>123456789012</code> and the role name is <code>omics-service-role-serviceRole-W8O1XMPL7QZ</code>.</p>
213 pub fn get_role_arn(&self) -> &::std::option::Option<::std::string::String> {
214 &self.role_arn
215 }
216 /// <p>A name for the run. This is recommended to view and organize runs in the Amazon Web Services HealthOmics console and CloudWatch logs.</p>
217 pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
218 self.name = ::std::option::Option::Some(input.into());
219 self
220 }
221 /// <p>A name for the run. This is recommended to view and organize runs in the Amazon Web Services HealthOmics console and CloudWatch logs.</p>
222 pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
223 self.name = input;
224 self
225 }
226 /// <p>A name for the run. This is recommended to view and organize runs in the Amazon Web Services HealthOmics console and CloudWatch logs.</p>
227 pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
228 &self.name
229 }
230 /// <p>Identifier of the cache associated with this run. If you don't specify a cache ID, no task outputs are cached for this run.</p>
231 pub fn cache_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
232 self.cache_id = ::std::option::Option::Some(input.into());
233 self
234 }
235 /// <p>Identifier of the cache associated with this run. If you don't specify a cache ID, no task outputs are cached for this run.</p>
236 pub fn set_cache_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
237 self.cache_id = input;
238 self
239 }
240 /// <p>Identifier of the cache associated with this run. If you don't specify a cache ID, no task outputs are cached for this run.</p>
241 pub fn get_cache_id(&self) -> &::std::option::Option<::std::string::String> {
242 &self.cache_id
243 }
244 /// <p>The cache behavior for the run. You specify this value if you want to override the default behavior for the cache. You had set the default value when you created the cache. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/how-run-cache.html#run-cache-behavior">Run cache behavior</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
245 pub fn cache_behavior(mut self, input: crate::types::CacheBehavior) -> Self {
246 self.cache_behavior = ::std::option::Option::Some(input);
247 self
248 }
249 /// <p>The cache behavior for the run. You specify this value if you want to override the default behavior for the cache. You had set the default value when you created the cache. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/how-run-cache.html#run-cache-behavior">Run cache behavior</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
250 pub fn set_cache_behavior(mut self, input: ::std::option::Option<crate::types::CacheBehavior>) -> Self {
251 self.cache_behavior = input;
252 self
253 }
254 /// <p>The cache behavior for the run. You specify this value if you want to override the default behavior for the cache. You had set the default value when you created the cache. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/how-run-cache.html#run-cache-behavior">Run cache behavior</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
255 pub fn get_cache_behavior(&self) -> &::std::option::Option<crate::types::CacheBehavior> {
256 &self.cache_behavior
257 }
258 /// <p>The run's group ID. Use a run group to cap the compute resources (and number of concurrent runs) for the runs that you add to the run group.</p>
259 pub fn run_group_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
260 self.run_group_id = ::std::option::Option::Some(input.into());
261 self
262 }
263 /// <p>The run's group ID. Use a run group to cap the compute resources (and number of concurrent runs) for the runs that you add to the run group.</p>
264 pub fn set_run_group_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
265 self.run_group_id = input;
266 self
267 }
268 /// <p>The run's group ID. Use a run group to cap the compute resources (and number of concurrent runs) for the runs that you add to the run group.</p>
269 pub fn get_run_group_id(&self) -> &::std::option::Option<::std::string::String> {
270 &self.run_group_id
271 }
272 /// <p>Use the run priority (highest: 1) to establish the order of runs in a run group when you start a run. If multiple runs share the same priority, the run that was initiated first will have the higher priority. Runs that do not belong to a run group can be assigned a priority. The priorities of these runs are ranked among other runs that are not in a run group. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/creating-run-groups.html#run-priority">Run priority</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
273 pub fn priority(mut self, input: i32) -> Self {
274 self.priority = ::std::option::Option::Some(input);
275 self
276 }
277 /// <p>Use the run priority (highest: 1) to establish the order of runs in a run group when you start a run. If multiple runs share the same priority, the run that was initiated first will have the higher priority. Runs that do not belong to a run group can be assigned a priority. The priorities of these runs are ranked among other runs that are not in a run group. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/creating-run-groups.html#run-priority">Run priority</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
278 pub fn set_priority(mut self, input: ::std::option::Option<i32>) -> Self {
279 self.priority = input;
280 self
281 }
282 /// <p>Use the run priority (highest: 1) to establish the order of runs in a run group when you start a run. If multiple runs share the same priority, the run that was initiated first will have the higher priority. Runs that do not belong to a run group can be assigned a priority. The priorities of these runs are ranked among other runs that are not in a run group. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/creating-run-groups.html#run-priority">Run priority</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
283 pub fn get_priority(&self) -> &::std::option::Option<i32> {
284 &self.priority
285 }
286 /// <p>Parameters for the run. The run needs all required parameters and can include optional parameters. The run cannot include any parameters that are not defined in the parameter template. To retrieve parameters from the run, use the GetRun API operation.</p>
287 pub fn parameters(mut self, input: ::aws_smithy_types::Document) -> Self {
288 self.parameters = ::std::option::Option::Some(input);
289 self
290 }
291 /// <p>Parameters for the run. The run needs all required parameters and can include optional parameters. The run cannot include any parameters that are not defined in the parameter template. To retrieve parameters from the run, use the GetRun API operation.</p>
292 pub fn set_parameters(mut self, input: ::std::option::Option<::aws_smithy_types::Document>) -> Self {
293 self.parameters = input;
294 self
295 }
296 /// <p>Parameters for the run. The run needs all required parameters and can include optional parameters. The run cannot include any parameters that are not defined in the parameter template. To retrieve parameters from the run, use the GetRun API operation.</p>
297 pub fn get_parameters(&self) -> &::std::option::Option<::aws_smithy_types::Document> {
298 &self.parameters
299 }
300 /// <p>The <code>STATIC</code> storage capacity (in gibibytes, GiB) for this run. The default run storage capacity is 1200 GiB. If your requested storage capacity is unavailable, the system rounds up the value to the nearest 1200 GiB multiple. If the requested storage capacity is still unavailable, the system rounds up the value to the nearest 2400 GiB multiple. This field is not required if the storage type is <code>DYNAMIC</code> (the system ignores any value that you enter).</p>
301 pub fn storage_capacity(mut self, input: i32) -> Self {
302 self.storage_capacity = ::std::option::Option::Some(input);
303 self
304 }
305 /// <p>The <code>STATIC</code> storage capacity (in gibibytes, GiB) for this run. The default run storage capacity is 1200 GiB. If your requested storage capacity is unavailable, the system rounds up the value to the nearest 1200 GiB multiple. If the requested storage capacity is still unavailable, the system rounds up the value to the nearest 2400 GiB multiple. This field is not required if the storage type is <code>DYNAMIC</code> (the system ignores any value that you enter).</p>
306 pub fn set_storage_capacity(mut self, input: ::std::option::Option<i32>) -> Self {
307 self.storage_capacity = input;
308 self
309 }
310 /// <p>The <code>STATIC</code> storage capacity (in gibibytes, GiB) for this run. The default run storage capacity is 1200 GiB. If your requested storage capacity is unavailable, the system rounds up the value to the nearest 1200 GiB multiple. If the requested storage capacity is still unavailable, the system rounds up the value to the nearest 2400 GiB multiple. This field is not required if the storage type is <code>DYNAMIC</code> (the system ignores any value that you enter).</p>
311 pub fn get_storage_capacity(&self) -> &::std::option::Option<i32> {
312 &self.storage_capacity
313 }
314 /// <p>An output S3 URI for the run. The S3 bucket must be in the same region as the workflow. The role ARN must have permission to write to this S3 bucket.</p>
315 /// This field is required.
316 pub fn output_uri(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
317 self.output_uri = ::std::option::Option::Some(input.into());
318 self
319 }
320 /// <p>An output S3 URI for the run. The S3 bucket must be in the same region as the workflow. The role ARN must have permission to write to this S3 bucket.</p>
321 pub fn set_output_uri(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
322 self.output_uri = input;
323 self
324 }
325 /// <p>An output S3 URI for the run. The S3 bucket must be in the same region as the workflow. The role ARN must have permission to write to this S3 bucket.</p>
326 pub fn get_output_uri(&self) -> &::std::option::Option<::std::string::String> {
327 &self.output_uri
328 }
329 /// <p>A log level for the run.</p>
330 pub fn log_level(mut self, input: crate::types::RunLogLevel) -> Self {
331 self.log_level = ::std::option::Option::Some(input);
332 self
333 }
334 /// <p>A log level for the run.</p>
335 pub fn set_log_level(mut self, input: ::std::option::Option<crate::types::RunLogLevel>) -> Self {
336 self.log_level = input;
337 self
338 }
339 /// <p>A log level for the run.</p>
340 pub fn get_log_level(&self) -> &::std::option::Option<crate::types::RunLogLevel> {
341 &self.log_level
342 }
343 /// Adds a key-value pair to `tags`.
344 ///
345 /// To override the contents of this collection use [`set_tags`](Self::set_tags).
346 ///
347 /// <p>Tags for the run. You can add up to 50 tags per run. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/add-a-tag.html">Adding a tag</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
348 pub fn tags(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
349 let mut hash_map = self.tags.unwrap_or_default();
350 hash_map.insert(k.into(), v.into());
351 self.tags = ::std::option::Option::Some(hash_map);
352 self
353 }
354 /// <p>Tags for the run. You can add up to 50 tags per run. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/add-a-tag.html">Adding a tag</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
355 pub fn set_tags(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
356 self.tags = input;
357 self
358 }
359 /// <p>Tags for the run. You can add up to 50 tags per run. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/add-a-tag.html">Adding a tag</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
360 pub fn get_tags(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
361 &self.tags
362 }
363 /// <p>An idempotency token used to dedupe retry requests so that duplicate runs are not created.</p>
364 /// This field is required.
365 pub fn request_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
366 self.request_id = ::std::option::Option::Some(input.into());
367 self
368 }
369 /// <p>An idempotency token used to dedupe retry requests so that duplicate runs are not created.</p>
370 pub fn set_request_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
371 self.request_id = input;
372 self
373 }
374 /// <p>An idempotency token used to dedupe retry requests so that duplicate runs are not created.</p>
375 pub fn get_request_id(&self) -> &::std::option::Option<::std::string::String> {
376 &self.request_id
377 }
378 /// <p>The retention mode for the run. The default value is <code>RETAIN</code>.</p>
379 /// <p>Amazon Web Services HealthOmics stores a fixed number of runs that are available to the console and API. In the default mode (<code>RETAIN</code>), you need to remove runs manually when the number of run exceeds the maximum. If you set the retention mode to <code>REMOVE</code>, Amazon Web Services HealthOmics automatically removes runs (that have mode set to <code>REMOVE</code>) when the number of run exceeds the maximum. All run logs are available in CloudWatch logs, if you need information about a run that is no longer available to the API.</p>
380 /// <p>For more information about retention mode, see <a href="https://docs.aws.amazon.com/omics/latest/dev/starting-a-run.html">Specifying run retention mode</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
381 pub fn retention_mode(mut self, input: crate::types::RunRetentionMode) -> Self {
382 self.retention_mode = ::std::option::Option::Some(input);
383 self
384 }
385 /// <p>The retention mode for the run. The default value is <code>RETAIN</code>.</p>
386 /// <p>Amazon Web Services HealthOmics stores a fixed number of runs that are available to the console and API. In the default mode (<code>RETAIN</code>), you need to remove runs manually when the number of run exceeds the maximum. If you set the retention mode to <code>REMOVE</code>, Amazon Web Services HealthOmics automatically removes runs (that have mode set to <code>REMOVE</code>) when the number of run exceeds the maximum. All run logs are available in CloudWatch logs, if you need information about a run that is no longer available to the API.</p>
387 /// <p>For more information about retention mode, see <a href="https://docs.aws.amazon.com/omics/latest/dev/starting-a-run.html">Specifying run retention mode</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
388 pub fn set_retention_mode(mut self, input: ::std::option::Option<crate::types::RunRetentionMode>) -> Self {
389 self.retention_mode = input;
390 self
391 }
392 /// <p>The retention mode for the run. The default value is <code>RETAIN</code>.</p>
393 /// <p>Amazon Web Services HealthOmics stores a fixed number of runs that are available to the console and API. In the default mode (<code>RETAIN</code>), you need to remove runs manually when the number of run exceeds the maximum. If you set the retention mode to <code>REMOVE</code>, Amazon Web Services HealthOmics automatically removes runs (that have mode set to <code>REMOVE</code>) when the number of run exceeds the maximum. All run logs are available in CloudWatch logs, if you need information about a run that is no longer available to the API.</p>
394 /// <p>For more information about retention mode, see <a href="https://docs.aws.amazon.com/omics/latest/dev/starting-a-run.html">Specifying run retention mode</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
395 pub fn get_retention_mode(&self) -> &::std::option::Option<crate::types::RunRetentionMode> {
396 &self.retention_mode
397 }
398 /// <p>The storage type for the run. If you set the storage type to <code>DYNAMIC</code>, Amazon Web Services HealthOmics dynamically scales the storage up or down, based on file system utilization. By default, the run uses <code>STATIC</code> storage type, which allocates a fixed amount of storage. For more information about <code>DYNAMIC</code> and <code>STATIC</code> storage, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflows-run-types.html">Run storage types</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
399 pub fn storage_type(mut self, input: crate::types::StorageType) -> Self {
400 self.storage_type = ::std::option::Option::Some(input);
401 self
402 }
403 /// <p>The storage type for the run. If you set the storage type to <code>DYNAMIC</code>, Amazon Web Services HealthOmics dynamically scales the storage up or down, based on file system utilization. By default, the run uses <code>STATIC</code> storage type, which allocates a fixed amount of storage. For more information about <code>DYNAMIC</code> and <code>STATIC</code> storage, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflows-run-types.html">Run storage types</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
404 pub fn set_storage_type(mut self, input: ::std::option::Option<crate::types::StorageType>) -> Self {
405 self.storage_type = input;
406 self
407 }
408 /// <p>The storage type for the run. If you set the storage type to <code>DYNAMIC</code>, Amazon Web Services HealthOmics dynamically scales the storage up or down, based on file system utilization. By default, the run uses <code>STATIC</code> storage type, which allocates a fixed amount of storage. For more information about <code>DYNAMIC</code> and <code>STATIC</code> storage, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflows-run-types.html">Run storage types</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
409 pub fn get_storage_type(&self) -> &::std::option::Option<crate::types::StorageType> {
410 &self.storage_type
411 }
412 /// <p>The 12-digit account ID of the workflow owner that is used for running a shared workflow. The workflow owner ID can be retrieved using the <code>GetShare</code> API operation. If you are the workflow owner, you do not need to include this ID.</p>
413 pub fn workflow_owner_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
414 self.workflow_owner_id = ::std::option::Option::Some(input.into());
415 self
416 }
417 /// <p>The 12-digit account ID of the workflow owner that is used for running a shared workflow. The workflow owner ID can be retrieved using the <code>GetShare</code> API operation. If you are the workflow owner, you do not need to include this ID.</p>
418 pub fn set_workflow_owner_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
419 self.workflow_owner_id = input;
420 self
421 }
422 /// <p>The 12-digit account ID of the workflow owner that is used for running a shared workflow. The workflow owner ID can be retrieved using the <code>GetShare</code> API operation. If you are the workflow owner, you do not need to include this ID.</p>
423 pub fn get_workflow_owner_id(&self) -> &::std::option::Option<::std::string::String> {
424 &self.workflow_owner_id
425 }
426 /// <p>The name of the workflow version. Use workflow versions to track and organize changes to the workflow. If your workflow has multiple versions, the run uses the default version unless you specify a version name. To learn more, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflow-versions.html">Workflow versioning</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
427 pub fn workflow_version_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
428 self.workflow_version_name = ::std::option::Option::Some(input.into());
429 self
430 }
431 /// <p>The name of the workflow version. Use workflow versions to track and organize changes to the workflow. If your workflow has multiple versions, the run uses the default version unless you specify a version name. To learn more, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflow-versions.html">Workflow versioning</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
432 pub fn set_workflow_version_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
433 self.workflow_version_name = input;
434 self
435 }
436 /// <p>The name of the workflow version. Use workflow versions to track and organize changes to the workflow. If your workflow has multiple versions, the run uses the default version unless you specify a version name. To learn more, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflow-versions.html">Workflow versioning</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
437 pub fn get_workflow_version_name(&self) -> &::std::option::Option<::std::string::String> {
438 &self.workflow_version_name
439 }
440 /// Consumes the builder and constructs a [`StartRunInput`](crate::operation::start_run::StartRunInput).
441 pub fn build(self) -> ::std::result::Result<crate::operation::start_run::StartRunInput, ::aws_smithy_types::error::operation::BuildError> {
442 ::std::result::Result::Ok(crate::operation::start_run::StartRunInput {
443 workflow_id: self.workflow_id,
444 workflow_type: self.workflow_type,
445 run_id: self.run_id,
446 role_arn: self.role_arn,
447 name: self.name,
448 cache_id: self.cache_id,
449 cache_behavior: self.cache_behavior,
450 run_group_id: self.run_group_id,
451 priority: self.priority,
452 parameters: self.parameters,
453 storage_capacity: self.storage_capacity,
454 output_uri: self.output_uri,
455 log_level: self.log_level,
456 tags: self.tags,
457 request_id: self.request_id,
458 retention_mode: self.retention_mode,
459 storage_type: self.storage_type,
460 workflow_owner_id: self.workflow_owner_id,
461 workflow_version_name: self.workflow_version_name,
462 })
463 }
464}