1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`CreateLaunch`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`project(impl Into<String>)`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder::project) / [`set_project(Option<String>)`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder::set_project):<br>required: **true**<br><p>The name or ARN of the project that you want to create the launch in.</p><br>
    ///   - [`name(impl Into<String>)`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder::set_name):<br>required: **true**<br><p>The name for the new launch.</p><br>
    ///   - [`description(impl Into<String>)`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder::set_description):<br>required: **false**<br><p>An optional description for the launch.</p><br>
    ///   - [`scheduled_splits_config(ScheduledSplitsLaunchConfig)`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder::scheduled_splits_config) / [`set_scheduled_splits_config(Option<ScheduledSplitsLaunchConfig>)`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder::set_scheduled_splits_config):<br>required: **false**<br><p>An array of structures that define the traffic allocation percentages among the feature variations during each step of the launch.</p><br>
    ///   - [`metric_monitors(MetricMonitorConfig)`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder::metric_monitors) / [`set_metric_monitors(Option<Vec::<MetricMonitorConfig>>)`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder::set_metric_monitors):<br>required: **false**<br><p>An array of structures that define the metrics that will be used to monitor the launch performance.</p><br>
    ///   - [`groups(LaunchGroupConfig)`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder::groups) / [`set_groups(Option<Vec::<LaunchGroupConfig>>)`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder::set_groups):<br>required: **true**<br><p>An array of structures that contains the feature and variations that are to be used for the launch.</p><br>
    ///   - [`randomization_salt(impl Into<String>)`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder::randomization_salt) / [`set_randomization_salt(Option<String>)`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder::set_randomization_salt):<br>required: **false**<br><p>When Evidently assigns a particular user session to a launch, it must use a randomization ID to determine which variation the user session is served. This randomization ID is a combination of the entity ID and <code>randomizationSalt</code>. If you omit <code>randomizationSalt</code>, Evidently uses the launch name as the <code>randomizationSalt</code>.</p><br>
    ///   - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_launch::builders::CreateLaunchFluentBuilder::set_tags):<br>required: **false**<br><p>Assigns one or more tags (key-value pairs) to the launch.</p> <p>Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.</p> <p>Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.</p> <p>You can associate as many as 50 tags with a launch.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html">Tagging Amazon Web Services resources</a>.</p><br>
    /// - On success, responds with [`CreateLaunchOutput`](crate::operation::create_launch::CreateLaunchOutput) with field(s):
    ///   - [`launch(Option<Launch>)`](crate::operation::create_launch::CreateLaunchOutput::launch): <p>A structure that contains the configuration of the launch that was created.</p>
    /// - On failure, responds with [`SdkError<CreateLaunchError>`](crate::operation::create_launch::CreateLaunchError)
    pub fn create_launch(&self) -> crate::operation::create_launch::builders::CreateLaunchFluentBuilder {
        crate::operation::create_launch::builders::CreateLaunchFluentBuilder::new(self.handle.clone())
    }
}