aws_sdk_omics/operation/create_workflow_version/
builders.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::create_workflow_version::_create_workflow_version_output::CreateWorkflowVersionOutputBuilder;
3
4pub use crate::operation::create_workflow_version::_create_workflow_version_input::CreateWorkflowVersionInputBuilder;
5
6impl crate::operation::create_workflow_version::builders::CreateWorkflowVersionInputBuilder {
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::create_workflow_version::CreateWorkflowVersionOutput,
13        ::aws_smithy_runtime_api::client::result::SdkError<
14            crate::operation::create_workflow_version::CreateWorkflowVersionError,
15            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16        >,
17    > {
18        let mut fluent_builder = client.create_workflow_version();
19        fluent_builder.inner = self;
20        fluent_builder.send().await
21    }
22}
23/// Fluent builder constructing a request to `CreateWorkflowVersion`.
24///
25/// <p>Creates a new workflow version for the workflow that you specify with the <code>workflowId</code> parameter.</p>
26/// <p>When you create a new version of a workflow, you need to specify the configuration for the new version. It doesn't inherit any configuration values from the workflow.</p>
27/// <p>Provide a version name that is unique for this workflow. You cannot change the name after HealthOmics creates the version.</p><note>
28/// <p>Don't include any personally identifiable information (PII) in the version name. Version names appear in the workflow version ARN.</p>
29/// </note>
30/// <p>For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflow-versions.html">Workflow versioning in Amazon Web Services HealthOmics</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
31#[derive(::std::clone::Clone, ::std::fmt::Debug)]
32pub struct CreateWorkflowVersionFluentBuilder {
33    handle: ::std::sync::Arc<crate::client::Handle>,
34    inner: crate::operation::create_workflow_version::builders::CreateWorkflowVersionInputBuilder,
35    config_override: ::std::option::Option<crate::config::Builder>,
36}
37impl
38    crate::client::customize::internal::CustomizableSend<
39        crate::operation::create_workflow_version::CreateWorkflowVersionOutput,
40        crate::operation::create_workflow_version::CreateWorkflowVersionError,
41    > for CreateWorkflowVersionFluentBuilder
42{
43    fn send(
44        self,
45        config_override: crate::config::Builder,
46    ) -> crate::client::customize::internal::BoxFuture<
47        crate::client::customize::internal::SendResult<
48            crate::operation::create_workflow_version::CreateWorkflowVersionOutput,
49            crate::operation::create_workflow_version::CreateWorkflowVersionError,
50        >,
51    > {
52        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
53    }
54}
55impl CreateWorkflowVersionFluentBuilder {
56    /// Creates a new `CreateWorkflowVersionFluentBuilder`.
57    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
58        Self {
59            handle,
60            inner: ::std::default::Default::default(),
61            config_override: ::std::option::Option::None,
62        }
63    }
64    /// Access the CreateWorkflowVersion as a reference.
65    pub fn as_input(&self) -> &crate::operation::create_workflow_version::builders::CreateWorkflowVersionInputBuilder {
66        &self.inner
67    }
68    /// Sends the request and returns the response.
69    ///
70    /// If an error occurs, an `SdkError` will be returned with additional details that
71    /// can be matched against.
72    ///
73    /// By default, any retryable failures will be retried twice. Retry behavior
74    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
75    /// set when configuring the client.
76    pub async fn send(
77        self,
78    ) -> ::std::result::Result<
79        crate::operation::create_workflow_version::CreateWorkflowVersionOutput,
80        ::aws_smithy_runtime_api::client::result::SdkError<
81            crate::operation::create_workflow_version::CreateWorkflowVersionError,
82            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
83        >,
84    > {
85        let input = self
86            .inner
87            .build()
88            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
89        let runtime_plugins = crate::operation::create_workflow_version::CreateWorkflowVersion::operation_runtime_plugins(
90            self.handle.runtime_plugins.clone(),
91            &self.handle.conf,
92            self.config_override,
93        );
94        crate::operation::create_workflow_version::CreateWorkflowVersion::orchestrate(&runtime_plugins, input).await
95    }
96
97    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
98    pub fn customize(
99        self,
100    ) -> crate::client::customize::CustomizableOperation<
101        crate::operation::create_workflow_version::CreateWorkflowVersionOutput,
102        crate::operation::create_workflow_version::CreateWorkflowVersionError,
103        Self,
104    > {
105        crate::client::customize::CustomizableOperation::new(self)
106    }
107    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
108        self.set_config_override(::std::option::Option::Some(config_override.into()));
109        self
110    }
111
112    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
113        self.config_override = config_override;
114        self
115    }
116    /// <p>The ID of the workflow where you are creating the new version. The <code>workflowId</code> is not the UUID.</p>
117    pub fn workflow_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
118        self.inner = self.inner.workflow_id(input.into());
119        self
120    }
121    /// <p>The ID of the workflow where you are creating the new version. The <code>workflowId</code> is not the UUID.</p>
122    pub fn set_workflow_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
123        self.inner = self.inner.set_workflow_id(input);
124        self
125    }
126    /// <p>The ID of the workflow where you are creating the new version. The <code>workflowId</code> is not the UUID.</p>
127    pub fn get_workflow_id(&self) -> &::std::option::Option<::std::string::String> {
128        self.inner.get_workflow_id()
129    }
130    /// <p>A name for the workflow version. Provide a version name that is unique for this workflow. You cannot change the name after HealthOmics creates the version.</p>
131    /// <p>The version name must start with a letter or number and it can include upper-case and lower-case letters, numbers, hyphens, periods and underscores. The maximum length is 64 characters. You can use a simple naming scheme, such as version1, version2, version3. You can also match your workflow versions with your own internal versioning conventions, such as 2.7.0, 2.7.1, 2.7.2.</p>
132    pub fn version_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
133        self.inner = self.inner.version_name(input.into());
134        self
135    }
136    /// <p>A name for the workflow version. Provide a version name that is unique for this workflow. You cannot change the name after HealthOmics creates the version.</p>
137    /// <p>The version name must start with a letter or number and it can include upper-case and lower-case letters, numbers, hyphens, periods and underscores. The maximum length is 64 characters. You can use a simple naming scheme, such as version1, version2, version3. You can also match your workflow versions with your own internal versioning conventions, such as 2.7.0, 2.7.1, 2.7.2.</p>
138    pub fn set_version_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
139        self.inner = self.inner.set_version_name(input);
140        self
141    }
142    /// <p>A name for the workflow version. Provide a version name that is unique for this workflow. You cannot change the name after HealthOmics creates the version.</p>
143    /// <p>The version name must start with a letter or number and it can include upper-case and lower-case letters, numbers, hyphens, periods and underscores. The maximum length is 64 characters. You can use a simple naming scheme, such as version1, version2, version3. You can also match your workflow versions with your own internal versioning conventions, such as 2.7.0, 2.7.1, 2.7.2.</p>
144    pub fn get_version_name(&self) -> &::std::option::Option<::std::string::String> {
145        self.inner.get_version_name()
146    }
147    /// <p>A ZIP archive containing the main workflow definition file and dependencies that it imports for this workflow version. You can use a file with a ://fileb prefix instead of the Base64 string. For more information, see Workflow definition requirements in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
148    pub fn definition_zip(mut self, input: ::aws_smithy_types::Blob) -> Self {
149        self.inner = self.inner.definition_zip(input);
150        self
151    }
152    /// <p>A ZIP archive containing the main workflow definition file and dependencies that it imports for this workflow version. You can use a file with a ://fileb prefix instead of the Base64 string. For more information, see Workflow definition requirements in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
153    pub fn set_definition_zip(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
154        self.inner = self.inner.set_definition_zip(input);
155        self
156    }
157    /// <p>A ZIP archive containing the main workflow definition file and dependencies that it imports for this workflow version. You can use a file with a ://fileb prefix instead of the Base64 string. For more information, see Workflow definition requirements in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
158    pub fn get_definition_zip(&self) -> &::std::option::Option<::aws_smithy_types::Blob> {
159        self.inner.get_definition_zip()
160    }
161    /// <p>The S3 URI of a definition for this workflow version. The S3 bucket must be in the same region as this workflow version.</p>
162    pub fn definition_uri(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
163        self.inner = self.inner.definition_uri(input.into());
164        self
165    }
166    /// <p>The S3 URI of a definition for this workflow version. The S3 bucket must be in the same region as this workflow version.</p>
167    pub fn set_definition_uri(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
168        self.inner = self.inner.set_definition_uri(input);
169        self
170    }
171    /// <p>The S3 URI of a definition for this workflow version. The S3 bucket must be in the same region as this workflow version.</p>
172    pub fn get_definition_uri(&self) -> &::std::option::Option<::std::string::String> {
173        self.inner.get_definition_uri()
174    }
175    /// <p>The computational accelerator for this workflow version.</p>
176    pub fn accelerators(mut self, input: crate::types::Accelerators) -> Self {
177        self.inner = self.inner.accelerators(input);
178        self
179    }
180    /// <p>The computational accelerator for this workflow version.</p>
181    pub fn set_accelerators(mut self, input: ::std::option::Option<crate::types::Accelerators>) -> Self {
182        self.inner = self.inner.set_accelerators(input);
183        self
184    }
185    /// <p>The computational accelerator for this workflow version.</p>
186    pub fn get_accelerators(&self) -> &::std::option::Option<crate::types::Accelerators> {
187        self.inner.get_accelerators()
188    }
189    /// <p>A description for this workflow version.</p>
190    pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
191        self.inner = self.inner.description(input.into());
192        self
193    }
194    /// <p>A description for this workflow version.</p>
195    pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
196        self.inner = self.inner.set_description(input);
197        self
198    }
199    /// <p>A description for this workflow version.</p>
200    pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
201        self.inner.get_description()
202    }
203    /// <p>The workflow engine for this workflow version. This is only required if you have workflow definition files from more than one engine in your zip file. Otherwise, the service can detect the engine automatically from your workflow definition.</p>
204    pub fn engine(mut self, input: crate::types::WorkflowEngine) -> Self {
205        self.inner = self.inner.engine(input);
206        self
207    }
208    /// <p>The workflow engine for this workflow version. This is only required if you have workflow definition files from more than one engine in your zip file. Otherwise, the service can detect the engine automatically from your workflow definition.</p>
209    pub fn set_engine(mut self, input: ::std::option::Option<crate::types::WorkflowEngine>) -> Self {
210        self.inner = self.inner.set_engine(input);
211        self
212    }
213    /// <p>The workflow engine for this workflow version. This is only required if you have workflow definition files from more than one engine in your zip file. Otherwise, the service can detect the engine automatically from your workflow definition.</p>
214    pub fn get_engine(&self) -> &::std::option::Option<crate::types::WorkflowEngine> {
215        self.inner.get_engine()
216    }
217    /// <p>The path of the main definition file for this workflow version. This parameter is not required if the ZIP archive contains only one workflow definition file, or if the main definition file is named “main”. An example path is: <code>workflow-definition/main-file.wdl</code>.</p>
218    pub fn main(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
219        self.inner = self.inner.main(input.into());
220        self
221    }
222    /// <p>The path of the main definition file for this workflow version. This parameter is not required if the ZIP archive contains only one workflow definition file, or if the main definition file is named “main”. An example path is: <code>workflow-definition/main-file.wdl</code>.</p>
223    pub fn set_main(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
224        self.inner = self.inner.set_main(input);
225        self
226    }
227    /// <p>The path of the main definition file for this workflow version. This parameter is not required if the ZIP archive contains only one workflow definition file, or if the main definition file is named “main”. An example path is: <code>workflow-definition/main-file.wdl</code>.</p>
228    pub fn get_main(&self) -> &::std::option::Option<::std::string::String> {
229        self.inner.get_main()
230    }
231    ///
232    /// Adds a key-value pair to `parameterTemplate`.
233    ///
234    /// To override the contents of this collection use [`set_parameter_template`](Self::set_parameter_template).
235    ///
236    /// <p>A parameter template for this workflow version. If this field is blank, Amazon Web Services HealthOmics will automatically parse the parameter template values from your workflow definition file. To override these service generated default values, provide a parameter template. To view an example of a parameter template, see <a href="https://docs.aws.amazon.com/omics/latest/dev/parameter-templates.html">Parameter template files</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
237    pub fn parameter_template(mut self, k: impl ::std::convert::Into<::std::string::String>, v: crate::types::WorkflowParameter) -> Self {
238        self.inner = self.inner.parameter_template(k.into(), v);
239        self
240    }
241    /// <p>A parameter template for this workflow version. If this field is blank, Amazon Web Services HealthOmics will automatically parse the parameter template values from your workflow definition file. To override these service generated default values, provide a parameter template. To view an example of a parameter template, see <a href="https://docs.aws.amazon.com/omics/latest/dev/parameter-templates.html">Parameter template files</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
242    pub fn set_parameter_template(
243        mut self,
244        input: ::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::WorkflowParameter>>,
245    ) -> Self {
246        self.inner = self.inner.set_parameter_template(input);
247        self
248    }
249    /// <p>A parameter template for this workflow version. If this field is blank, Amazon Web Services HealthOmics will automatically parse the parameter template values from your workflow definition file. To override these service generated default values, provide a parameter template. To view an example of a parameter template, see <a href="https://docs.aws.amazon.com/omics/latest/dev/parameter-templates.html">Parameter template files</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
250    pub fn get_parameter_template(
251        &self,
252    ) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::WorkflowParameter>> {
253        self.inner.get_parameter_template()
254    }
255    /// <p>An idempotency token to ensure that duplicate workflows are not created when Amazon Web Services HealthOmics submits retry requests.</p>
256    pub fn request_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
257        self.inner = self.inner.request_id(input.into());
258        self
259    }
260    /// <p>An idempotency token to ensure that duplicate workflows are not created when Amazon Web Services HealthOmics submits retry requests.</p>
261    pub fn set_request_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
262        self.inner = self.inner.set_request_id(input);
263        self
264    }
265    /// <p>An idempotency token to ensure that duplicate workflows are not created when Amazon Web Services HealthOmics submits retry requests.</p>
266    pub fn get_request_id(&self) -> &::std::option::Option<::std::string::String> {
267        self.inner.get_request_id()
268    }
269    /// <p>The default storage type for runs that use this workflow version. The <code>storageType</code> can be overridden at run time. <code>DYNAMIC</code> storage dynamically scales the storage up or down, based on file system utilization. STATIC storage allocates a fixed amount of storage. For more information about dynamic and static storage types, 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>
270    pub fn storage_type(mut self, input: crate::types::StorageType) -> Self {
271        self.inner = self.inner.storage_type(input);
272        self
273    }
274    /// <p>The default storage type for runs that use this workflow version. The <code>storageType</code> can be overridden at run time. <code>DYNAMIC</code> storage dynamically scales the storage up or down, based on file system utilization. STATIC storage allocates a fixed amount of storage. For more information about dynamic and static storage types, 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>
275    pub fn set_storage_type(mut self, input: ::std::option::Option<crate::types::StorageType>) -> Self {
276        self.inner = self.inner.set_storage_type(input);
277        self
278    }
279    /// <p>The default storage type for runs that use this workflow version. The <code>storageType</code> can be overridden at run time. <code>DYNAMIC</code> storage dynamically scales the storage up or down, based on file system utilization. STATIC storage allocates a fixed amount of storage. For more information about dynamic and static storage types, 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>
280    pub fn get_storage_type(&self) -> &::std::option::Option<crate::types::StorageType> {
281        self.inner.get_storage_type()
282    }
283    /// <p>The default static storage capacity (in gibibytes) for runs that use this workflow version. The <code>storageCapacity</code> can be overwritten at run time. The storage capacity is not required for runs with a <code>DYNAMIC</code> storage type.</p>
284    pub fn storage_capacity(mut self, input: i32) -> Self {
285        self.inner = self.inner.storage_capacity(input);
286        self
287    }
288    /// <p>The default static storage capacity (in gibibytes) for runs that use this workflow version. The <code>storageCapacity</code> can be overwritten at run time. The storage capacity is not required for runs with a <code>DYNAMIC</code> storage type.</p>
289    pub fn set_storage_capacity(mut self, input: ::std::option::Option<i32>) -> Self {
290        self.inner = self.inner.set_storage_capacity(input);
291        self
292    }
293    /// <p>The default static storage capacity (in gibibytes) for runs that use this workflow version. The <code>storageCapacity</code> can be overwritten at run time. The storage capacity is not required for runs with a <code>DYNAMIC</code> storage type.</p>
294    pub fn get_storage_capacity(&self) -> &::std::option::Option<i32> {
295        self.inner.get_storage_capacity()
296    }
297    ///
298    /// Adds a key-value pair to `tags`.
299    ///
300    /// To override the contents of this collection use [`set_tags`](Self::set_tags).
301    ///
302    /// <p>Tags for this workflow version. You can define up to 50 tags for the workflow. 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>
303    pub fn tags(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
304        self.inner = self.inner.tags(k.into(), v.into());
305        self
306    }
307    /// <p>Tags for this workflow version. You can define up to 50 tags for the workflow. 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>
308    pub fn set_tags(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
309        self.inner = self.inner.set_tags(input);
310        self
311    }
312    /// <p>Tags for this workflow version. You can define up to 50 tags for the workflow. 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>
313    pub fn get_tags(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
314        self.inner.get_tags()
315    }
316    /// <p>Amazon Web Services Id of the owner of the S3 bucket that contains the workflow definition. You need to specify this parameter if your account is not the bucket owner.</p>
317    pub fn workflow_bucket_owner_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
318        self.inner = self.inner.workflow_bucket_owner_id(input.into());
319        self
320    }
321    /// <p>Amazon Web Services Id of the owner of the S3 bucket that contains the workflow definition. You need to specify this parameter if your account is not the bucket owner.</p>
322    pub fn set_workflow_bucket_owner_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
323        self.inner = self.inner.set_workflow_bucket_owner_id(input);
324        self
325    }
326    /// <p>Amazon Web Services Id of the owner of the S3 bucket that contains the workflow definition. You need to specify this parameter if your account is not the bucket owner.</p>
327    pub fn get_workflow_bucket_owner_id(&self) -> &::std::option::Option<::std::string::String> {
328        self.inner.get_workflow_bucket_owner_id()
329    }
330    /// <p>(Optional) Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflows-ecr.html">Container images</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
331    pub fn container_registry_map(mut self, input: crate::types::ContainerRegistryMap) -> Self {
332        self.inner = self.inner.container_registry_map(input);
333        self
334    }
335    /// <p>(Optional) Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflows-ecr.html">Container images</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
336    pub fn set_container_registry_map(mut self, input: ::std::option::Option<crate::types::ContainerRegistryMap>) -> Self {
337        self.inner = self.inner.set_container_registry_map(input);
338        self
339    }
340    /// <p>(Optional) Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflows-ecr.html">Container images</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
341    pub fn get_container_registry_map(&self) -> &::std::option::Option<crate::types::ContainerRegistryMap> {
342        self.inner.get_container_registry_map()
343    }
344    /// <p>(Optional) URI of the S3 location for the registry mapping file.</p>
345    pub fn container_registry_map_uri(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
346        self.inner = self.inner.container_registry_map_uri(input.into());
347        self
348    }
349    /// <p>(Optional) URI of the S3 location for the registry mapping file.</p>
350    pub fn set_container_registry_map_uri(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
351        self.inner = self.inner.set_container_registry_map_uri(input);
352        self
353    }
354    /// <p>(Optional) URI of the S3 location for the registry mapping file.</p>
355    pub fn get_container_registry_map_uri(&self) -> &::std::option::Option<::std::string::String> {
356        self.inner.get_container_registry_map_uri()
357    }
358    /// <p>The markdown content for the workflow version's README file. This provides documentation and usage information for users of this specific workflow version.</p>
359    pub fn readme_markdown(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
360        self.inner = self.inner.readme_markdown(input.into());
361        self
362    }
363    /// <p>The markdown content for the workflow version's README file. This provides documentation and usage information for users of this specific workflow version.</p>
364    pub fn set_readme_markdown(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
365        self.inner = self.inner.set_readme_markdown(input);
366        self
367    }
368    /// <p>The markdown content for the workflow version's README file. This provides documentation and usage information for users of this specific workflow version.</p>
369    pub fn get_readme_markdown(&self) -> &::std::option::Option<::std::string::String> {
370        self.inner.get_readme_markdown()
371    }
372    /// <p>The path to the workflow version parameter template JSON file within the repository. This file defines the input parameters for runs that use this workflow version. If not specified, the workflow version will be created without a parameter template.</p>
373    pub fn parameter_template_path(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
374        self.inner = self.inner.parameter_template_path(input.into());
375        self
376    }
377    /// <p>The path to the workflow version parameter template JSON file within the repository. This file defines the input parameters for runs that use this workflow version. If not specified, the workflow version will be created without a parameter template.</p>
378    pub fn set_parameter_template_path(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
379        self.inner = self.inner.set_parameter_template_path(input);
380        self
381    }
382    /// <p>The path to the workflow version parameter template JSON file within the repository. This file defines the input parameters for runs that use this workflow version. If not specified, the workflow version will be created without a parameter template.</p>
383    pub fn get_parameter_template_path(&self) -> &::std::option::Option<::std::string::String> {
384        self.inner.get_parameter_template_path()
385    }
386    /// <p>The path to the workflow version README markdown file within the repository. This file provides documentation and usage information for the workflow. If not specified, the <code>README.md</code> file from the root directory of the repository will be used.</p>
387    pub fn readme_path(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
388        self.inner = self.inner.readme_path(input.into());
389        self
390    }
391    /// <p>The path to the workflow version README markdown file within the repository. This file provides documentation and usage information for the workflow. If not specified, the <code>README.md</code> file from the root directory of the repository will be used.</p>
392    pub fn set_readme_path(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
393        self.inner = self.inner.set_readme_path(input);
394        self
395    }
396    /// <p>The path to the workflow version README markdown file within the repository. This file provides documentation and usage information for the workflow. If not specified, the <code>README.md</code> file from the root directory of the repository will be used.</p>
397    pub fn get_readme_path(&self) -> &::std::option::Option<::std::string::String> {
398        self.inner.get_readme_path()
399    }
400    /// <p>The repository information for the workflow version definition. This allows you to source your workflow version definition directly from a code repository.</p>
401    pub fn definition_repository(mut self, input: crate::types::DefinitionRepository) -> Self {
402        self.inner = self.inner.definition_repository(input);
403        self
404    }
405    /// <p>The repository information for the workflow version definition. This allows you to source your workflow version definition directly from a code repository.</p>
406    pub fn set_definition_repository(mut self, input: ::std::option::Option<crate::types::DefinitionRepository>) -> Self {
407        self.inner = self.inner.set_definition_repository(input);
408        self
409    }
410    /// <p>The repository information for the workflow version definition. This allows you to source your workflow version definition directly from a code repository.</p>
411    pub fn get_definition_repository(&self) -> &::std::option::Option<crate::types::DefinitionRepository> {
412        self.inner.get_definition_repository()
413    }
414    /// <p>The S3 URI of the README file for the workflow version. This file provides documentation and usage information for the workflow version. Requirements include:</p>
415    /// <ul>
416    /// <li>
417    /// <p>The S3 URI must begin with <code>s3://USER-OWNED-BUCKET/</code></p></li>
418    /// <li>
419    /// <p>The requester must have access to the S3 bucket and object.</p></li>
420    /// <li>
421    /// <p>The max README content length is 500 KiB.</p></li>
422    /// </ul>
423    pub fn readme_uri(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
424        self.inner = self.inner.readme_uri(input.into());
425        self
426    }
427    /// <p>The S3 URI of the README file for the workflow version. This file provides documentation and usage information for the workflow version. Requirements include:</p>
428    /// <ul>
429    /// <li>
430    /// <p>The S3 URI must begin with <code>s3://USER-OWNED-BUCKET/</code></p></li>
431    /// <li>
432    /// <p>The requester must have access to the S3 bucket and object.</p></li>
433    /// <li>
434    /// <p>The max README content length is 500 KiB.</p></li>
435    /// </ul>
436    pub fn set_readme_uri(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
437        self.inner = self.inner.set_readme_uri(input);
438        self
439    }
440    /// <p>The S3 URI of the README file for the workflow version. This file provides documentation and usage information for the workflow version. Requirements include:</p>
441    /// <ul>
442    /// <li>
443    /// <p>The S3 URI must begin with <code>s3://USER-OWNED-BUCKET/</code></p></li>
444    /// <li>
445    /// <p>The requester must have access to the S3 bucket and object.</p></li>
446    /// <li>
447    /// <p>The max README content length is 500 KiB.</p></li>
448    /// </ul>
449    pub fn get_readme_uri(&self) -> &::std::option::Option<::std::string::String> {
450        self.inner.get_readme_uri()
451    }
452}