// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub use crate::operation::create_workflow::_create_workflow_output::CreateWorkflowOutputBuilder;
pub use crate::operation::create_workflow::_create_workflow_input::CreateWorkflowInputBuilder;
impl crate::operation::create_workflow::builders::CreateWorkflowInputBuilder {
/// Sends a request with this input using the given client.
pub async fn send_with(
self,
client: &crate::Client,
) -> ::std::result::Result<
crate::operation::create_workflow::CreateWorkflowOutput,
::aws_smithy_runtime_api::client::result::SdkError<
crate::operation::create_workflow::CreateWorkflowError,
::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
>,
> {
let mut fluent_builder = client.create_workflow();
fluent_builder.inner = self;
fluent_builder.send().await
}
}
/// Fluent builder constructing a request to `CreateWorkflow`.
///
/// <p>Creates a private workflow. Before you create a private workflow, you must create and configure these required resources:</p>
/// <ul>
/// <li>
/// <p><i>Workflow definition file:</i> A workflow definition file written in WDL, Nextflow, or CWL. The workflow definition specifies the inputs and outputs for runs that use the workflow. It also includes specifications for the runs and run tasks for your workflow, including compute and memory requirements. The workflow definition file must be in <code>.zip</code> format. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflow-definition-files.html">Workflow definition files</a> in Amazon Web Services HealthOmics.</p>
/// <ul>
/// <li>
/// <p>You can use Amazon Q CLI to build and validate your workflow definition files in WDL, Nextflow, and CWL. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/getting-started.html#omics-q-prompts">Example prompts for Amazon Q CLI</a> and the <a href="https://github.com/aws-samples/aws-healthomics-tutorials/tree/main/generative-ai">Amazon Web Services HealthOmics Agentic generative AI tutorial</a> on GitHub.</p></li>
/// </ul></li>
/// <li>
/// <p><i>(Optional) Parameter template file:</i> A parameter template file written in JSON. Create the file to define the run parameters, or Amazon Web Services HealthOmics generates the parameter template for you. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/parameter-templates.html">Parameter template files for HealthOmics workflows</a>.</p></li>
/// <li>
/// <p><i>ECR container images:</i> Create container images for the workflow in a private ECR repository, or synchronize images from a supported upstream registry with your Amazon ECR private repository.</p></li>
/// <li>
/// <p><i>(Optional) Sentieon licenses:</i> Request a Sentieon license to use the Sentieon software in private workflows.</p></li>
/// </ul>
/// <p>For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/creating-private-workflows.html">Creating or updating a private workflow in Amazon Web Services HealthOmics</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
pub struct CreateWorkflowFluentBuilder {
handle: ::std::sync::Arc<crate::client::Handle>,
inner: crate::operation::create_workflow::builders::CreateWorkflowInputBuilder,
config_override: ::std::option::Option<crate::config::Builder>,
}
impl
crate::client::customize::internal::CustomizableSend<
crate::operation::create_workflow::CreateWorkflowOutput,
crate::operation::create_workflow::CreateWorkflowError,
> for CreateWorkflowFluentBuilder
{
fn send(
self,
config_override: crate::config::Builder,
) -> crate::client::customize::internal::BoxFuture<
crate::client::customize::internal::SendResult<
crate::operation::create_workflow::CreateWorkflowOutput,
crate::operation::create_workflow::CreateWorkflowError,
>,
> {
::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
}
}
impl CreateWorkflowFluentBuilder {
/// Creates a new `CreateWorkflowFluentBuilder`.
pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
Self {
handle,
inner: ::std::default::Default::default(),
config_override: ::std::option::Option::None,
}
}
/// Access the CreateWorkflow as a reference.
pub fn as_input(&self) -> &crate::operation::create_workflow::builders::CreateWorkflowInputBuilder {
&self.inner
}
/// Sends the request and returns the response.
///
/// If an error occurs, an `SdkError` will be returned with additional details that
/// can be matched against.
///
/// By default, any retryable failures will be retried twice. Retry behavior
/// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
/// set when configuring the client.
pub async fn send(
self,
) -> ::std::result::Result<
crate::operation::create_workflow::CreateWorkflowOutput,
::aws_smithy_runtime_api::client::result::SdkError<
crate::operation::create_workflow::CreateWorkflowError,
::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
>,
> {
let input = self
.inner
.build()
.map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
let runtime_plugins = crate::operation::create_workflow::CreateWorkflow::operation_runtime_plugins(
self.handle.runtime_plugins.clone(),
&self.handle.conf,
self.config_override,
);
crate::operation::create_workflow::CreateWorkflow::orchestrate(&runtime_plugins, input).await
}
/// Consumes this builder, creating a customizable operation that can be modified before being sent.
pub fn customize(
self,
) -> crate::client::customize::CustomizableOperation<
crate::operation::create_workflow::CreateWorkflowOutput,
crate::operation::create_workflow::CreateWorkflowError,
Self,
> {
crate::client::customize::CustomizableOperation::new(self)
}
pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
self.set_config_override(::std::option::Option::Some(config_override.into()));
self
}
pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
self.config_override = config_override;
self
}
/// <p>Name (optional but highly recommended) for the workflow to locate relevant information in the CloudWatch logs and Amazon Web Services HealthOmics console.</p>
pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.name(input.into());
self
}
/// <p>Name (optional but highly recommended) for the workflow to locate relevant information in the CloudWatch logs and Amazon Web Services HealthOmics console.</p>
pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_name(input);
self
}
/// <p>Name (optional but highly recommended) for the workflow to locate relevant information in the CloudWatch logs and Amazon Web Services HealthOmics console.</p>
pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_name()
}
/// <p>A description for the workflow.</p>
pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.description(input.into());
self
}
/// <p>A description for the workflow.</p>
pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_description(input);
self
}
/// <p>A description for the workflow.</p>
pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_description()
}
/// <p>The workflow engine for the workflow. 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>
pub fn engine(mut self, input: crate::types::WorkflowEngine) -> Self {
self.inner = self.inner.engine(input);
self
}
/// <p>The workflow engine for the workflow. 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>
pub fn set_engine(mut self, input: ::std::option::Option<crate::types::WorkflowEngine>) -> Self {
self.inner = self.inner.set_engine(input);
self
}
/// <p>The workflow engine for the workflow. 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>
pub fn get_engine(&self) -> &::std::option::Option<crate::types::WorkflowEngine> {
self.inner.get_engine()
}
/// <p>A ZIP archive containing the main workflow definition file and dependencies that it imports for the workflow. You can use a file with a ://fileb prefix instead of the Base64 string. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflow-defn-requirements.html">Workflow definition requirements</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
pub fn definition_zip(mut self, input: ::aws_smithy_types::Blob) -> Self {
self.inner = self.inner.definition_zip(input);
self
}
/// <p>A ZIP archive containing the main workflow definition file and dependencies that it imports for the workflow. You can use a file with a ://fileb prefix instead of the Base64 string. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflow-defn-requirements.html">Workflow definition requirements</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
pub fn set_definition_zip(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
self.inner = self.inner.set_definition_zip(input);
self
}
/// <p>A ZIP archive containing the main workflow definition file and dependencies that it imports for the workflow. You can use a file with a ://fileb prefix instead of the Base64 string. For more information, see <a href="https://docs.aws.amazon.com/omics/latest/dev/workflow-defn-requirements.html">Workflow definition requirements</a> in the <i>Amazon Web Services HealthOmics User Guide</i>.</p>
pub fn get_definition_zip(&self) -> &::std::option::Option<::aws_smithy_types::Blob> {
self.inner.get_definition_zip()
}
/// <p>The S3 URI of a definition for the workflow. The S3 bucket must be in the same region as the workflow.</p>
pub fn definition_uri(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.definition_uri(input.into());
self
}
/// <p>The S3 URI of a definition for the workflow. The S3 bucket must be in the same region as the workflow.</p>
pub fn set_definition_uri(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_definition_uri(input);
self
}
/// <p>The S3 URI of a definition for the workflow. The S3 bucket must be in the same region as the workflow.</p>
pub fn get_definition_uri(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_definition_uri()
}
/// <p>The path of the main definition file for the workflow. 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>
pub fn main(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.main(input.into());
self
}
/// <p>The path of the main definition file for the workflow. 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>
pub fn set_main(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_main(input);
self
}
/// <p>The path of the main definition file for the workflow. 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>
pub fn get_main(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_main()
}
///
/// Adds a key-value pair to `parameterTemplate`.
///
/// To override the contents of this collection use [`set_parameter_template`](Self::set_parameter_template).
///
/// <p>A parameter template for the workflow. 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>
pub fn parameter_template(mut self, k: impl ::std::convert::Into<::std::string::String>, v: crate::types::WorkflowParameter) -> Self {
self.inner = self.inner.parameter_template(k.into(), v);
self
}
/// <p>A parameter template for the workflow. 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>
pub fn set_parameter_template(
mut self,
input: ::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::WorkflowParameter>>,
) -> Self {
self.inner = self.inner.set_parameter_template(input);
self
}
/// <p>A parameter template for the workflow. 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>
pub fn get_parameter_template(
&self,
) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, crate::types::WorkflowParameter>> {
self.inner.get_parameter_template()
}
/// <p>The default static storage capacity (in gibibytes) for runs that use this workflow or 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>
pub fn storage_capacity(mut self, input: i32) -> Self {
self.inner = self.inner.storage_capacity(input);
self
}
/// <p>The default static storage capacity (in gibibytes) for runs that use this workflow or 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>
pub fn set_storage_capacity(mut self, input: ::std::option::Option<i32>) -> Self {
self.inner = self.inner.set_storage_capacity(input);
self
}
/// <p>The default static storage capacity (in gibibytes) for runs that use this workflow or 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>
pub fn get_storage_capacity(&self) -> &::std::option::Option<i32> {
self.inner.get_storage_capacity()
}
///
/// Adds a key-value pair to `tags`.
///
/// To override the contents of this collection use [`set_tags`](Self::set_tags).
///
/// <p>Tags for the workflow. 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>
pub fn tags(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.tags(k.into(), v.into());
self
}
/// <p>Tags for the workflow. 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>
pub fn set_tags(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
self.inner = self.inner.set_tags(input);
self
}
/// <p>Tags for the workflow. 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>
pub fn get_tags(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
self.inner.get_tags()
}
/// <p>An idempotency token to ensure that duplicate workflows are not created when Amazon Web Services HealthOmics submits retry requests.</p>
pub fn request_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.request_id(input.into());
self
}
/// <p>An idempotency token to ensure that duplicate workflows are not created when Amazon Web Services HealthOmics submits retry requests.</p>
pub fn set_request_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_request_id(input);
self
}
/// <p>An idempotency token to ensure that duplicate workflows are not created when Amazon Web Services HealthOmics submits retry requests.</p>
pub fn get_request_id(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_request_id()
}
/// <p>The computational accelerator specified to run the workflow.</p>
pub fn accelerators(mut self, input: crate::types::Accelerators) -> Self {
self.inner = self.inner.accelerators(input);
self
}
/// <p>The computational accelerator specified to run the workflow.</p>
pub fn set_accelerators(mut self, input: ::std::option::Option<crate::types::Accelerators>) -> Self {
self.inner = self.inner.set_accelerators(input);
self
}
/// <p>The computational accelerator specified to run the workflow.</p>
pub fn get_accelerators(&self) -> &::std::option::Option<crate::types::Accelerators> {
self.inner.get_accelerators()
}
/// <p>The default storage type for runs that use this workflow. 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. <code>STATIC</code> 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>
pub fn storage_type(mut self, input: crate::types::StorageType) -> Self {
self.inner = self.inner.storage_type(input);
self
}
/// <p>The default storage type for runs that use this workflow. 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. <code>STATIC</code> 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>
pub fn set_storage_type(mut self, input: ::std::option::Option<crate::types::StorageType>) -> Self {
self.inner = self.inner.set_storage_type(input);
self
}
/// <p>The default storage type for runs that use this workflow. 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. <code>STATIC</code> 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>
pub fn get_storage_type(&self) -> &::std::option::Option<crate::types::StorageType> {
self.inner.get_storage_type()
}
/// <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>
pub fn container_registry_map(mut self, input: crate::types::ContainerRegistryMap) -> Self {
self.inner = self.inner.container_registry_map(input);
self
}
/// <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>
pub fn set_container_registry_map(mut self, input: ::std::option::Option<crate::types::ContainerRegistryMap>) -> Self {
self.inner = self.inner.set_container_registry_map(input);
self
}
/// <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>
pub fn get_container_registry_map(&self) -> &::std::option::Option<crate::types::ContainerRegistryMap> {
self.inner.get_container_registry_map()
}
/// <p>(Optional) URI of the S3 location for the registry mapping file.</p>
pub fn container_registry_map_uri(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.container_registry_map_uri(input.into());
self
}
/// <p>(Optional) URI of the S3 location for the registry mapping file.</p>
pub fn set_container_registry_map_uri(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_container_registry_map_uri(input);
self
}
/// <p>(Optional) URI of the S3 location for the registry mapping file.</p>
pub fn get_container_registry_map_uri(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_container_registry_map_uri()
}
/// <p>The markdown content for the workflow's README file. This provides documentation and usage information for users of the workflow.</p>
pub fn readme_markdown(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.readme_markdown(input.into());
self
}
/// <p>The markdown content for the workflow's README file. This provides documentation and usage information for users of the workflow.</p>
pub fn set_readme_markdown(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_readme_markdown(input);
self
}
/// <p>The markdown content for the workflow's README file. This provides documentation and usage information for users of the workflow.</p>
pub fn get_readme_markdown(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_readme_markdown()
}
/// <p>The path to the workflow parameter template JSON file within the repository. This file defines the input parameters for runs that use this workflow. If not specified, the workflow will be created without a parameter template.</p>
pub fn parameter_template_path(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.parameter_template_path(input.into());
self
}
/// <p>The path to the workflow parameter template JSON file within the repository. This file defines the input parameters for runs that use this workflow. If not specified, the workflow will be created without a parameter template.</p>
pub fn set_parameter_template_path(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_parameter_template_path(input);
self
}
/// <p>The path to the workflow parameter template JSON file within the repository. This file defines the input parameters for runs that use this workflow. If not specified, the workflow will be created without a parameter template.</p>
pub fn get_parameter_template_path(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_parameter_template_path()
}
/// <p>The path to the workflow 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>
pub fn readme_path(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.readme_path(input.into());
self
}
/// <p>The path to the workflow 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>
pub fn set_readme_path(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_readme_path(input);
self
}
/// <p>The path to the workflow 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>
pub fn get_readme_path(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_readme_path()
}
/// <p>The repository information for the workflow definition. This allows you to source your workflow definition directly from a code repository.</p>
pub fn definition_repository(mut self, input: crate::types::DefinitionRepository) -> Self {
self.inner = self.inner.definition_repository(input);
self
}
/// <p>The repository information for the workflow definition. This allows you to source your workflow definition directly from a code repository.</p>
pub fn set_definition_repository(mut self, input: ::std::option::Option<crate::types::DefinitionRepository>) -> Self {
self.inner = self.inner.set_definition_repository(input);
self
}
/// <p>The repository information for the workflow definition. This allows you to source your workflow definition directly from a code repository.</p>
pub fn get_definition_repository(&self) -> &::std::option::Option<crate::types::DefinitionRepository> {
self.inner.get_definition_repository()
}
/// <p>The Amazon Web Services account ID of the expected owner of the S3 bucket that contains the workflow definition. If not specified, the service skips the validation.</p>
pub fn workflow_bucket_owner_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.workflow_bucket_owner_id(input.into());
self
}
/// <p>The Amazon Web Services account ID of the expected owner of the S3 bucket that contains the workflow definition. If not specified, the service skips the validation.</p>
pub fn set_workflow_bucket_owner_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_workflow_bucket_owner_id(input);
self
}
/// <p>The Amazon Web Services account ID of the expected owner of the S3 bucket that contains the workflow definition. If not specified, the service skips the validation.</p>
pub fn get_workflow_bucket_owner_id(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_workflow_bucket_owner_id()
}
/// <p>The S3 URI of the README file for the workflow. This file provides documentation and usage information for the workflow. Requirements include:</p>
/// <ul>
/// <li>
/// <p>The S3 URI must begin with <code>s3://USER-OWNED-BUCKET/</code></p></li>
/// <li>
/// <p>The requester must have access to the S3 bucket and object.</p></li>
/// <li>
/// <p>The max README content length is 500 KiB.</p></li>
/// </ul>
pub fn readme_uri(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.inner = self.inner.readme_uri(input.into());
self
}
/// <p>The S3 URI of the README file for the workflow. This file provides documentation and usage information for the workflow. Requirements include:</p>
/// <ul>
/// <li>
/// <p>The S3 URI must begin with <code>s3://USER-OWNED-BUCKET/</code></p></li>
/// <li>
/// <p>The requester must have access to the S3 bucket and object.</p></li>
/// <li>
/// <p>The max README content length is 500 KiB.</p></li>
/// </ul>
pub fn set_readme_uri(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.inner = self.inner.set_readme_uri(input);
self
}
/// <p>The S3 URI of the README file for the workflow. This file provides documentation and usage information for the workflow. Requirements include:</p>
/// <ul>
/// <li>
/// <p>The S3 URI must begin with <code>s3://USER-OWNED-BUCKET/</code></p></li>
/// <li>
/// <p>The requester must have access to the S3 bucket and object.</p></li>
/// <li>
/// <p>The max README content length is 500 KiB.</p></li>
/// </ul>
pub fn get_readme_uri(&self) -> &::std::option::Option<::std::string::String> {
self.inner.get_readme_uri()
}
}