aws_sdk_proton/client/
create_service_template_version.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 [`CreateServiceTemplateVersion`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`client_token(impl Into<String>)`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::set_client_token):<br>required: **false**<br><p>When included, if two identical requests are made with the same client token, Proton returns the service template version that the first request created.</p><br>
7    ///   - [`template_name(impl Into<String>)`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::template_name) / [`set_template_name(Option<String>)`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::set_template_name):<br>required: **true**<br><p>The name of the service template.</p><br>
8    ///   - [`description(impl Into<String>)`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::set_description):<br>required: **false**<br><p>A description of the new version of a service template.</p><br>
9    ///   - [`major_version(impl Into<String>)`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::major_version) / [`set_major_version(Option<String>)`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::set_major_version):<br>required: **false**<br><p>To create a new minor version of the service template, include a <code>major Version</code>.</p> <p>To create a new major and minor version of the service template, <i>exclude</i> <code>major Version</code>.</p><br>
10    ///   - [`source(TemplateVersionSourceInput)`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::source) / [`set_source(Option<TemplateVersionSourceInput>)`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::set_source):<br>required: **true**<br><p>An object that includes the template bundle S3 bucket path and name for the new version of a service template.</p><br>
11    ///   - [`compatible_environment_templates(CompatibleEnvironmentTemplateInput)`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::compatible_environment_templates) / [`set_compatible_environment_templates(Option<Vec::<CompatibleEnvironmentTemplateInput>>)`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::set_compatible_environment_templates):<br>required: **true**<br><p>An array of environment template objects that are compatible with the new service template version. A service instance based on this service template version can run in environments based on compatible templates.</p><br>
12    ///   - [`tags(Tag)`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::set_tags):<br>required: **false**<br><p>An optional list of metadata items that you can associate with the Proton service template version. A tag is a key-value pair.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/proton/latest/userguide/resources.html">Proton resources and tagging</a> in the <i>Proton User Guide</i>.</p><br>
13    ///   - [`supported_component_sources(ServiceTemplateSupportedComponentSourceType)`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::supported_component_sources) / [`set_supported_component_sources(Option<Vec::<ServiceTemplateSupportedComponentSourceType>>)`](crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::set_supported_component_sources):<br>required: **false**<br><p>An array of supported component sources. Components with supported sources can be attached to service instances based on this service template version.</p> <p>For more information about components, see <a href="https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html">Proton components</a> in the <i>Proton User Guide</i>.</p><br>
14    /// - On success, responds with [`CreateServiceTemplateVersionOutput`](crate::operation::create_service_template_version::CreateServiceTemplateVersionOutput) with field(s):
15    ///   - [`service_template_version(Option<ServiceTemplateVersion>)`](crate::operation::create_service_template_version::CreateServiceTemplateVersionOutput::service_template_version): <p>The service template version summary of detail data that's returned by Proton.</p>
16    /// - On failure, responds with [`SdkError<CreateServiceTemplateVersionError>`](crate::operation::create_service_template_version::CreateServiceTemplateVersionError)
17    pub fn create_service_template_version(
18        &self,
19    ) -> crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder {
20        crate::operation::create_service_template_version::builders::CreateServiceTemplateVersionFluentBuilder::new(self.handle.clone())
21    }
22}