aws_sdk_imagebuilder/client/
create_image.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 [`CreateImage`](crate::operation::create_image::builders::CreateImageFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`image_recipe_arn(impl Into<String>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::image_recipe_arn) / [`set_image_recipe_arn(Option<String>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::set_image_recipe_arn):<br>required: **false**<br><p>The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed.</p><br>
7    ///   - [`container_recipe_arn(impl Into<String>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::container_recipe_arn) / [`set_container_recipe_arn(Option<String>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::set_container_recipe_arn):<br>required: **false**<br><p>The Amazon Resource Name (ARN) of the container recipe that defines how images are configured and tested.</p><br>
8    ///   - [`distribution_configuration_arn(impl Into<String>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::distribution_configuration_arn) / [`set_distribution_configuration_arn(Option<String>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::set_distribution_configuration_arn):<br>required: **false**<br><p>The Amazon Resource Name (ARN) of the distribution configuration that defines and configures the outputs of your pipeline.</p><br>
9    ///   - [`infrastructure_configuration_arn(impl Into<String>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::infrastructure_configuration_arn) / [`set_infrastructure_configuration_arn(Option<String>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::set_infrastructure_configuration_arn):<br>required: **true**<br><p>The Amazon Resource Name (ARN) of the infrastructure configuration that defines the environment in which your image will be built and tested.</p><br>
10    ///   - [`image_tests_configuration(ImageTestsConfiguration)`](crate::operation::create_image::builders::CreateImageFluentBuilder::image_tests_configuration) / [`set_image_tests_configuration(Option<ImageTestsConfiguration>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::set_image_tests_configuration):<br>required: **false**<br><p>The image tests configuration of the image.</p><br>
11    ///   - [`enhanced_image_metadata_enabled(bool)`](crate::operation::create_image::builders::CreateImageFluentBuilder::enhanced_image_metadata_enabled) / [`set_enhanced_image_metadata_enabled(Option<bool>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::set_enhanced_image_metadata_enabled):<br>required: **false**<br><p>Collects additional information about the image being created, including the operating system (OS) version and package list. This information is used to enhance the overall experience of using EC2 Image Builder. Enabled by default.</p><br>
12    ///   - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::set_tags):<br>required: **false**<br><p>The tags of the image.</p><br>
13    ///   - [`client_token(impl Into<String>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::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>
14    ///   - [`image_scanning_configuration(ImageScanningConfiguration)`](crate::operation::create_image::builders::CreateImageFluentBuilder::image_scanning_configuration) / [`set_image_scanning_configuration(Option<ImageScanningConfiguration>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::set_image_scanning_configuration):<br>required: **false**<br><p>Contains settings for vulnerability scans.</p><br>
15    ///   - [`workflows(WorkflowConfiguration)`](crate::operation::create_image::builders::CreateImageFluentBuilder::workflows) / [`set_workflows(Option<Vec::<WorkflowConfiguration>>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::set_workflows):<br>required: **false**<br><p>Contains an array of workflow configuration objects.</p><br>
16    ///   - [`execution_role(impl Into<String>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::execution_role) / [`set_execution_role(Option<String>)`](crate::operation::create_image::builders::CreateImageFluentBuilder::set_execution_role):<br>required: **false**<br><p>The name or Amazon Resource Name (ARN) for the IAM role you create that grants Image Builder access to perform workflow actions.</p><br>
17    /// - On success, responds with [`CreateImageOutput`](crate::operation::create_image::CreateImageOutput) with field(s):
18    ///   - [`request_id(Option<String>)`](crate::operation::create_image::CreateImageOutput::request_id): <p>The request ID that uniquely identifies this request.</p>
19    ///   - [`client_token(Option<String>)`](crate::operation::create_image::CreateImageOutput::client_token): <p>The client token that uniquely identifies the request.</p>
20    ///   - [`image_build_version_arn(Option<String>)`](crate::operation::create_image::CreateImageOutput::image_build_version_arn): <p>The Amazon Resource Name (ARN) of the image that the request created.</p>
21    /// - On failure, responds with [`SdkError<CreateImageError>`](crate::operation::create_image::CreateImageError)
22    pub fn create_image(&self) -> crate::operation::create_image::builders::CreateImageFluentBuilder {
23        crate::operation::create_image::builders::CreateImageFluentBuilder::new(self.handle.clone())
24    }
25}