aws_sdk_gameliftstreams/client/update_application.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 [`UpdateApplication`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`identifier(impl Into<String>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::identifier) / [`set_identifier(Option<String>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::set_identifier):<br>required: **true**<br><p>An <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html">Amazon Resource Name (ARN)</a> or ID that uniquely identifies the application resource. Example ARN: <code>arn:aws:gameliftstreams:us-west-2:111122223333:application/a-9ZY8X7Wv6</code>. Example ID: <code>a-9ZY8X7Wv6</code>.</p><br>
7 /// - [`description(impl Into<String>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::set_description):<br>required: **false**<br><p>A human-readable label for the application.</p><br>
8 /// - [`application_log_paths(impl Into<String>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::application_log_paths) / [`set_application_log_paths(Option<Vec::<String>>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::set_application_log_paths):<br>required: **false**<br><p>Locations of log files that your content generates during a stream session. Enter path values that are relative to the <code>ApplicationSourceUri</code> location. You can specify up to 10 log paths. Amazon GameLift Streams uploads designated log files to the Amazon S3 bucket that you specify in <code>ApplicationLogOutputUri</code> at the end of a stream session. To retrieve stored log files, call <a href="https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_GetStreamSession.html">GetStreamSession</a> and get the <code>LogFileLocationUri</code>.</p><br>
9 /// - [`application_log_output_uri(impl Into<String>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::application_log_output_uri) / [`set_application_log_output_uri(Option<String>)`](crate::operation::update_application::builders::UpdateApplicationFluentBuilder::set_application_log_output_uri):<br>required: **false**<br><p>An Amazon S3 URI to a bucket where you would like Amazon GameLift Streams to save application logs. Required if you specify one or more <code>ApplicationLogPaths</code>.</p><note> <p>The log bucket must have permissions that give Amazon GameLift Streams access to write the log files. For more information, see <a href="https://docs.aws.amazon.com/gameliftstreams/latest/developerguide/applications.html#application-bucket-permission-template">Application log bucket permission policy</a> in the <i>Amazon GameLift Streams Developer Guide</i>.</p> </note><br>
10 /// - On success, responds with [`UpdateApplicationOutput`](crate::operation::update_application::UpdateApplicationOutput) with field(s):
11 /// - [`arn(String)`](crate::operation::update_application::UpdateApplicationOutput::arn): <p>The <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html">Amazon Resource Name (ARN)</a> that's assigned to an application resource and uniquely identifies it across all Amazon Web Services Regions. Format is <code>arn:aws:gameliftstreams:\[AWS Region\]:\[AWS account\]:application/\[resource ID\]</code>.</p>
12 /// - [`description(Option<String>)`](crate::operation::update_application::UpdateApplicationOutput::description): <p>A human-readable label for the application. You can edit this value.</p>
13 /// - [`runtime_environment(Option<RuntimeEnvironment>)`](crate::operation::update_application::UpdateApplicationOutput::runtime_environment): <p>Configuration settings that identify the operating system for an application resource. This can also include a compatibility layer and other drivers.</p> <p>A runtime environment can be one of the following:</p> <ul> <li> <p>For Linux applications</p> <ul> <li> <p>Ubuntu 22.04 LTS (<code>Type=UBUNTU, Version=22_04_LTS</code>)</p></li> </ul></li> <li> <p>For Windows applications</p> <ul> <li> <p>Microsoft Windows Server 2022 Base (<code>Type=WINDOWS, Version=2022</code>)</p></li> <li> <p>Proton 9.0-2 (<code>Type=PROTON, Version=20250516</code>)</p></li> <li> <p>Proton 8.0-5 (<code>Type=PROTON, Version=20241007</code>)</p></li> <li> <p>Proton 8.0-2c (<code>Type=PROTON, Version=20230704</code>)</p></li> </ul></li> </ul>
14 /// - [`executable_path(Option<String>)`](crate::operation::update_application::UpdateApplicationOutput::executable_path): <p>The path and file name of the executable file that launches the content for streaming.</p>
15 /// - [`application_log_paths(Option<Vec::<String>>)`](crate::operation::update_application::UpdateApplicationOutput::application_log_paths): <p>Locations of log files that your content generates during a stream session. Amazon GameLift Streams uploads log files to the Amazon S3 bucket that you specify in <code>ApplicationLogOutputUri</code> at the end of a stream session. To retrieve stored log files, call <a href="https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_GetStreamSession.html">GetStreamSession</a> and get the <code>LogFileLocationUri</code>.</p>
16 /// - [`application_log_output_uri(Option<String>)`](crate::operation::update_application::UpdateApplicationOutput::application_log_output_uri): <p>An Amazon S3 URI to a bucket where you would like Amazon GameLift Streams to save application logs. Required if you specify one or more <code>ApplicationLogPaths</code>.</p>
17 /// - [`application_source_uri(Option<String>)`](crate::operation::update_application::UpdateApplicationOutput::application_source_uri): <p>The original Amazon S3 location of uploaded stream content for the application.</p>
18 /// - [`id(Option<String>)`](crate::operation::update_application::UpdateApplicationOutput::id): <p>A unique ID value that is assigned to the resource when it's created. Format example: <code>a-9ZY8X7Wv6</code>.</p>
19 /// - [`status(Option<ApplicationStatus>)`](crate::operation::update_application::UpdateApplicationOutput::status): <p>The current status of the application resource. Possible statuses include the following:</p> <ul> <li> <p><code>INITIALIZED</code>: Amazon GameLift Streams has received the request and is initiating the work flow to create an application.</p></li> <li> <p><code>PROCESSING</code>: The create application work flow is in process. Amazon GameLift Streams is copying the content and caching for future deployment in a stream group.</p></li> <li> <p><code>READY</code>: The application is ready to deploy in a stream group.</p></li> <li> <p><code>ERROR</code>: An error occurred when setting up the application. See <code>StatusReason</code> for more information.</p></li> <li> <p><code>DELETING</code>: Amazon GameLift Streams is in the process of deleting the application.</p></li> </ul>
20 /// - [`status_reason(Option<ApplicationStatusReason>)`](crate::operation::update_application::UpdateApplicationOutput::status_reason): <p>A short description of the status reason when the application is in <code>ERROR</code> status.</p>
21 /// - [`replication_statuses(Option<Vec::<ReplicationStatus>>)`](crate::operation::update_application::UpdateApplicationOutput::replication_statuses): <p>A set of replication statuses for each location.</p>
22 /// - [`created_at(Option<DateTime>)`](crate::operation::update_application::UpdateApplicationOutput::created_at): <p>A timestamp that indicates when this resource was created. Timestamps are expressed using in ISO8601 format, such as: <code>2022-12-27T22:29:40+00:00</code> (UTC).</p>
23 /// - [`last_updated_at(Option<DateTime>)`](crate::operation::update_application::UpdateApplicationOutput::last_updated_at): <p>A timestamp that indicates when this resource was last updated. Timestamps are expressed using in ISO8601 format, such as: <code>2022-12-27T22:29:40+00:00</code> (UTC).</p>
24 /// - [`associated_stream_groups(Option<Vec::<String>>)`](crate::operation::update_application::UpdateApplicationOutput::associated_stream_groups): <p>A set of stream groups that this application is associated with. You can use any of these stream groups to stream your application.</p> <p>This value is a set of <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html">Amazon Resource Names (ARNs)</a> that uniquely identify stream group resources. Example ARN: <code>arn:aws:gameliftstreams:us-west-2:111122223333:streamgroup/sg-1AB2C3De4</code>.</p>
25 /// - On failure, responds with [`SdkError<UpdateApplicationError>`](crate::operation::update_application::UpdateApplicationError)
26 pub fn update_application(&self) -> crate::operation::update_application::builders::UpdateApplicationFluentBuilder {
27 crate::operation::update_application::builders::UpdateApplicationFluentBuilder::new(self.handle.clone())
28 }
29}