aws_sdk_imagebuilder/client/create_container_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 [`CreateContainerRecipe`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`container_type(ContainerType)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::container_type) / [`set_container_type(Option<ContainerType>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::set_container_type):<br>required: **true**<br><p>The type of container to create.</p><br>
7 /// - [`name(impl Into<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::set_name):<br>required: **true**<br><p>The name of the container recipe.</p><br>
8 /// - [`description(impl Into<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::set_description):<br>required: **false**<br><p>The description of the container recipe.</p><br>
9 /// - [`semantic_version(impl Into<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::semantic_version) / [`set_semantic_version(Option<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::set_semantic_version):<br>required: **true**<br><p>The semantic version of the container 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>
10 /// - [`components(ComponentConfiguration)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::components) / [`set_components(Option<Vec::<ComponentConfiguration>>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::set_components):<br>required: **true**<br><p>Components for build and test that are included in the container recipe. Recipes require a minimum of one build component, and can have a maximum of 20 build and test components in any combination.</p><br>
11 /// - [`instance_configuration(InstanceConfiguration)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::instance_configuration) / [`set_instance_configuration(Option<InstanceConfiguration>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::set_instance_configuration):<br>required: **false**<br><p>A group of options that can be used to configure an instance for building and testing container images.</p><br>
12 /// - [`dockerfile_template_data(impl Into<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::dockerfile_template_data) / [`set_dockerfile_template_data(Option<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::set_dockerfile_template_data):<br>required: **false**<br><p>The Dockerfile template used to build your image as an inline data blob.</p><br>
13 /// - [`dockerfile_template_uri(impl Into<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::dockerfile_template_uri) / [`set_dockerfile_template_uri(Option<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::set_dockerfile_template_uri):<br>required: **false**<br><p>The Amazon S3 URI for the Dockerfile that will be used to build your container image.</p><br>
14 /// - [`platform_override(Platform)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::platform_override) / [`set_platform_override(Option<Platform>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::set_platform_override):<br>required: **false**<br><p>Specifies the operating system platform when you use a custom base image.</p><br>
15 /// - [`image_os_version_override(impl Into<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::image_os_version_override) / [`set_image_os_version_override(Option<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::set_image_os_version_override):<br>required: **false**<br><p>Specifies the operating system version for the base image.</p><br>
16 /// - [`parent_image(impl Into<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::parent_image) / [`set_parent_image(Option<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::set_parent_image):<br>required: **true**<br><p>The base image for the container recipe.</p><br>
17 /// - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::set_tags):<br>required: **false**<br><p>Tags that are attached to the container recipe.</p><br>
18 /// - [`working_directory(impl Into<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::working_directory) / [`set_working_directory(Option<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::set_working_directory):<br>required: **false**<br><p>The working directory for use during build and test workflows.</p><br>
19 /// - [`target_repository(TargetContainerRepository)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::target_repository) / [`set_target_repository(Option<TargetContainerRepository>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::set_target_repository):<br>required: **true**<br><p>The destination repository for the container image.</p><br>
20 /// - [`kms_key_id(impl Into<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::kms_key_id) / [`set_kms_key_id(Option<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::set_kms_key_id):<br>required: **false**<br><p>Identifies which KMS key is used to encrypt the Dockerfile template.</p><br>
21 /// - [`client_token(impl Into<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::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>
22 /// - On success, responds with [`CreateContainerRecipeOutput`](crate::operation::create_container_recipe::CreateContainerRecipeOutput) with field(s):
23 /// - [`request_id(Option<String>)`](crate::operation::create_container_recipe::CreateContainerRecipeOutput::request_id): <p>The request ID that uniquely identifies this request.</p>
24 /// - [`client_token(Option<String>)`](crate::operation::create_container_recipe::CreateContainerRecipeOutput::client_token): <p>The client token that uniquely identifies the request.</p>
25 /// - [`container_recipe_arn(Option<String>)`](crate::operation::create_container_recipe::CreateContainerRecipeOutput::container_recipe_arn): <p>Returns the Amazon Resource Name (ARN) of the container recipe that the request created.</p>
26 /// - On failure, responds with [`SdkError<CreateContainerRecipeError>`](crate::operation::create_container_recipe::CreateContainerRecipeError)
27 pub fn create_container_recipe(&self) -> crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder {
28 crate::operation::create_container_recipe::builders::CreateContainerRecipeFluentBuilder::new(self.handle.clone())
29 }
30}