1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`CreateScript`](crate::operation::create_script::builders::CreateScriptFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`name(impl Into<String>)`](crate::operation::create_script::builders::CreateScriptFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_script::builders::CreateScriptFluentBuilder::set_name):<br>required: **false**<br><p>A descriptive label that is associated with a script. Script names don't need to be unique. You can use <a href="https://docs.aws.amazon.com/gamelift/latest/apireference/API_UpdateScript.html">UpdateScript</a> to change this value later.</p><br>
    ///   - [`version(impl Into<String>)`](crate::operation::create_script::builders::CreateScriptFluentBuilder::version) / [`set_version(Option<String>)`](crate::operation::create_script::builders::CreateScriptFluentBuilder::set_version):<br>required: **false**<br><p>Version information associated with a build or script. Version strings don't need to be unique. You can use <a href="https://docs.aws.amazon.com/gamelift/latest/apireference/API_UpdateScript.html">UpdateScript</a> to change this value later.</p><br>
    ///   - [`storage_location(S3Location)`](crate::operation::create_script::builders::CreateScriptFluentBuilder::storage_location) / [`set_storage_location(Option<S3Location>)`](crate::operation::create_script::builders::CreateScriptFluentBuilder::set_storage_location):<br>required: **false**<br><p>The location of the Amazon S3 bucket where a zipped file containing your Realtime scripts is stored. The storage location must specify the Amazon S3 bucket name, the zip file name (the "key"), and a role ARN that allows Amazon GameLift to access the Amazon S3 storage location. The S3 bucket must be in the same Region where you want to create a new script. By default, Amazon GameLift uploads the latest version of the zip file; if you have S3 object versioning turned on, you can use the <code>ObjectVersion</code> parameter to specify an earlier version.</p><br>
    ///   - [`zip_file(Blob)`](crate::operation::create_script::builders::CreateScriptFluentBuilder::zip_file) / [`set_zip_file(Option<Blob>)`](crate::operation::create_script::builders::CreateScriptFluentBuilder::set_zip_file):<br>required: **false**<br><p>A data object containing your Realtime scripts and dependencies as a zip file. The zip file can have one or multiple files. Maximum size of a zip file is 5 MB.</p> <p>When using the Amazon Web Services CLI tool to create a script, this parameter is set to the zip file name. It must be prepended with the string "fileb://" to indicate that the file data is a binary object. For example: <code>--zip-file fileb://myRealtimeScript.zip</code>.</p><br>
    ///   - [`tags(Tag)`](crate::operation::create_script::builders::CreateScriptFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_script::builders::CreateScriptFluentBuilder::set_tags):<br>required: **false**<br><p>A list of labels to assign to the new script resource. Tags are developer-defined key-value pairs. Tagging Amazon Web Services resources are useful for resource management, access management and cost allocation. For more information, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html"> Tagging Amazon Web Services Resources</a> in the <i>Amazon Web Services General Reference</i>. Once the resource is created, you can use <a href="https://docs.aws.amazon.com/gamelift/latest/apireference/API_TagResource.html">TagResource</a>, <a href="https://docs.aws.amazon.com/gamelift/latest/apireference/API_UntagResource.html">UntagResource</a>, and <a href="https://docs.aws.amazon.com/gamelift/latest/apireference/API_ListTagsForResource.html">ListTagsForResource</a> to add, remove, and view tags. The maximum tag limit may be lower than stated. See the Amazon Web Services General Reference for actual tagging limits.</p><br>
    /// - On success, responds with [`CreateScriptOutput`](crate::operation::create_script::CreateScriptOutput) with field(s):
    ///   - [`script(Option<Script>)`](crate::operation::create_script::CreateScriptOutput::script): <p>The newly created script record with a unique script ID and ARN. The new script's storage location reflects an Amazon S3 location: (1) If the script was uploaded from an S3 bucket under your account, the storage location reflects the information that was provided in the <i>CreateScript</i> request; (2) If the script file was uploaded from a local zip file, the storage location reflects an S3 location controls by the Amazon GameLift service.</p>
    /// - On failure, responds with [`SdkError<CreateScriptError>`](crate::operation::create_script::CreateScriptError)
    pub fn create_script(&self) -> crate::operation::create_script::builders::CreateScriptFluentBuilder {
        crate::operation::create_script::builders::CreateScriptFluentBuilder::new(self.handle.clone())
    }
}