aws_sdk_imagebuilder/client/create_image_recipe.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 [`CreateImageRecipe`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`name(impl Into<String>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::set_name):<br>required: **true**<br><p>The name of the image recipe.</p><br>
7 /// - [`description(impl Into<String>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::set_description):<br>required: **false**<br><p>The description of the image recipe.</p><br>
8 /// - [`semantic_version(impl Into<String>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::semantic_version) / [`set_semantic_version(Option<String>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::set_semantic_version):<br>required: **true**<br><p>The semantic version of the image recipe. This version follows the semantic version syntax.</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>
9 /// - [`components(ComponentConfiguration)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::components) / [`set_components(Option<Vec::<ComponentConfiguration>>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::set_components):<br>required: **true**<br><p>The components included in the image recipe.</p><br>
10 /// - [`parent_image(impl Into<String>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::parent_image) / [`set_parent_image(Option<String>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::set_parent_image):<br>required: **true**<br><p>The base image for customizations specified in the image recipe. You can specify the parent image using one of the following options:</p> <ul> <li> <p>AMI ID</p></li> <li> <p>Image Builder image Amazon Resource Name (ARN)</p></li> <li> <p>Amazon Web Services Systems Manager (SSM) Parameter Store Parameter, prefixed by <code>ssm:</code>, followed by the parameter name or ARN.</p></li> <li> <p>Amazon Web Services Marketplace product ID</p></li> </ul> <p>If you enter an AMI ID or an SSM parameter that contains the AMI ID, you must have access to the AMI, and the AMI must be in the source Region.</p><br>
11 /// - [`block_device_mappings(InstanceBlockDeviceMapping)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::block_device_mappings) / [`set_block_device_mappings(Option<Vec::<InstanceBlockDeviceMapping>>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::set_block_device_mappings):<br>required: **false**<br><p>The block device mappings of the image recipe.</p><br>
12 /// - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::set_tags):<br>required: **false**<br><p>The tags of the image recipe.</p><br>
13 /// - [`working_directory(impl Into<String>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::working_directory) / [`set_working_directory(Option<String>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::set_working_directory):<br>required: **false**<br><p>The working directory used during build and test workflows.</p><br>
14 /// - [`additional_instance_configuration(AdditionalInstanceConfiguration)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::additional_instance_configuration) / [`set_additional_instance_configuration(Option<AdditionalInstanceConfiguration>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::set_additional_instance_configuration):<br>required: **false**<br><p>Specify additional settings and launch scripts for your build instances.</p><br>
15 /// - [`client_token(impl Into<String>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::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>
16 /// - On success, responds with [`CreateImageRecipeOutput`](crate::operation::create_image_recipe::CreateImageRecipeOutput) with field(s):
17 /// - [`request_id(Option<String>)`](crate::operation::create_image_recipe::CreateImageRecipeOutput::request_id): <p>The request ID that uniquely identifies this request.</p>
18 /// - [`client_token(Option<String>)`](crate::operation::create_image_recipe::CreateImageRecipeOutput::client_token): <p>The client token that uniquely identifies the request.</p>
19 /// - [`image_recipe_arn(Option<String>)`](crate::operation::create_image_recipe::CreateImageRecipeOutput::image_recipe_arn): <p>The Amazon Resource Name (ARN) of the image recipe that was created by this request.</p>
20 /// - On failure, responds with [`SdkError<CreateImageRecipeError>`](crate::operation::create_image_recipe::CreateImageRecipeError)
21 pub fn create_image_recipe(&self) -> crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder {
22 crate::operation::create_image_recipe::builders::CreateImageRecipeFluentBuilder::new(self.handle.clone())
23 }
24}