aws_sdk_imagebuilder/client/
create_workflow.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3    /// Constructs a fluent builder for the [`CreateWorkflow`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`name(impl Into<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::set_name):<br>required: **true**<br><p>The name of the workflow to create.</p><br>
7    ///   - [`semantic_version(impl Into<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::semantic_version) / [`set_semantic_version(Option<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::set_semantic_version):<br>required: **true**<br><p>The semantic version of this workflow resource. The semantic version syntax adheres to the following rules.</p><note>  <p>The semantic version has four nodes: <major>    .    <minor>     .     <patch>      /      <build>       . You can assign values for the first three, and can filter on all of them.      </build>     </patch>    </minor>   </major></p>  <p><b>Assignment:</b> For the first three nodes you can assign any positive integer value, including zero, with an upper limit of 2^30-1, or 1073741823 for each node. Image Builder automatically assigns the build number to the fourth node.</p>  <p><b>Patterns:</b> You can use any numeric pattern that adheres to the assignment requirements for the nodes that you can assign. For example, you might choose a software version pattern, such as 1.0.0, or a date, such as 2021.01.01.</p> </note><br>
8    ///   - [`description(impl Into<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::set_description):<br>required: **false**<br><p>Describes the workflow.</p><br>
9    ///   - [`change_description(impl Into<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::change_description) / [`set_change_description(Option<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::set_change_description):<br>required: **false**<br><p>Describes what change has been made in this version of the workflow, or what makes this version different from other versions of the workflow.</p><br>
10    ///   - [`data(impl Into<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::data) / [`set_data(Option<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::set_data):<br>required: **false**<br><p>Contains the UTF-8 encoded YAML document content for the workflow. Alternatively, you can specify the <code>uri</code> of a YAML document file stored in Amazon S3. However, you cannot specify both properties.</p><br>
11    ///   - [`uri(impl Into<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::uri) / [`set_uri(Option<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::set_uri):<br>required: **false**<br><p>The <code>uri</code> of a YAML component document file. This must be an S3 URL (<code>s3://bucket/key</code>), and the requester must have permission to access the S3 bucket it points to. If you use Amazon S3, you can specify component content up to your service quota.</p> <p>Alternatively, you can specify the YAML document inline, using the component <code>data</code> property. You cannot specify both properties.</p><br>
12    ///   - [`kms_key_id(impl Into<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::kms_key_id) / [`set_kms_key_id(Option<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::set_kms_key_id):<br>required: **false**<br><p>The ID of the KMS key that is used to encrypt this workflow resource.</p><br>
13    ///   - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::set_tags):<br>required: **false**<br><p>Tags that apply to the workflow resource.</p><br>
14    ///   - [`client_token(impl Into<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::set_client_token):<br>required: **true**<br><p>Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensuring idempotency</a> in the <i>Amazon EC2 API Reference</i>.</p><br>
15    ///   - [`r#type(WorkflowType)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::type) / [`set_type(Option<WorkflowType>)`](crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::set_type):<br>required: **true**<br><p>The phase in the image build process for which the workflow resource is responsible.</p><br>
16    /// - On success, responds with [`CreateWorkflowOutput`](crate::operation::create_workflow::CreateWorkflowOutput) with field(s):
17    ///   - [`client_token(Option<String>)`](crate::operation::create_workflow::CreateWorkflowOutput::client_token): <p>The client token that uniquely identifies the request.</p>
18    ///   - [`workflow_build_version_arn(Option<String>)`](crate::operation::create_workflow::CreateWorkflowOutput::workflow_build_version_arn): <p>The Amazon Resource Name (ARN) of the workflow resource that the request created.</p>
19    /// - On failure, responds with [`SdkError<CreateWorkflowError>`](crate::operation::create_workflow::CreateWorkflowError)
20    pub fn create_workflow(&self) -> crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder {
21        crate::operation::create_workflow::builders::CreateWorkflowFluentBuilder::new(self.handle.clone())
22    }
23}