// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`DescribeAppVersionTemplate`](crate::operation::describe_app_version_template::builders::DescribeAppVersionTemplateFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`app_arn(impl Into<String>)`](crate::operation::describe_app_version_template::builders::DescribeAppVersionTemplateFluentBuilder::app_arn) / [`set_app_arn(Option<String>)`](crate::operation::describe_app_version_template::builders::DescribeAppVersionTemplateFluentBuilder::set_app_arn):<br>required: **true**<br><p>Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:<code>partition</code>:resiliencehub:<code>region</code>:<code>account</code>:app/<code>app-id</code>. For more information about ARNs, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html"> Amazon Resource Names (ARNs)</a> in the <i>Amazon Web Services General Reference</i> guide.</p><br>
/// - [`app_version(impl Into<String>)`](crate::operation::describe_app_version_template::builders::DescribeAppVersionTemplateFluentBuilder::app_version) / [`set_app_version(Option<String>)`](crate::operation::describe_app_version_template::builders::DescribeAppVersionTemplateFluentBuilder::set_app_version):<br>required: **true**<br><p>The version of the application.</p><br>
/// - On success, responds with [`DescribeAppVersionTemplateOutput`](crate::operation::describe_app_version_template::DescribeAppVersionTemplateOutput) with field(s):
/// - [`app_arn(String)`](crate::operation::describe_app_version_template::DescribeAppVersionTemplateOutput::app_arn): <p>Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:<code>partition</code>:resiliencehub:<code>region</code>:<code>account</code>:app/<code>app-id</code>. For more information about ARNs, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html"> Amazon Resource Names (ARNs)</a> in the <i>Amazon Web Services General Reference</i> guide.</p>
/// - [`app_version(String)`](crate::operation::describe_app_version_template::DescribeAppVersionTemplateOutput::app_version): <p>The version of the application.</p>
/// - [`app_template_body(String)`](crate::operation::describe_app_version_template::DescribeAppVersionTemplateOutput::app_template_body): <p>A JSON string that provides information about your application structure. To learn more about the <code>appTemplateBody</code> template, see the sample template provided in the <i>Examples</i> section.</p> <p>The <code>appTemplateBody</code> JSON string has the following structure:</p> <ul> <li> <p><b> <code>resources</code> </b></p> <p>The list of logical resources that must be included in the Resilience Hub application.</p> <p>Type: Array</p><note> <p>Don't add the resources that you want to exclude.</p> </note> <p>Each <code>resources</code> array item includes the following fields:</p> <ul> <li> <p><i> <code>logicalResourceId</code> </i></p> <p>Logical identifier of the resource.</p> <p>Type: Object</p> <p>Each <code>logicalResourceId</code> object includes the following fields:</p> <ul> <li> <p><code>identifier</code></p> <p>Identifier of the resource.</p> <p>Type: String</p></li> <li> <p><code>logicalStackName</code></p> <p>The name of the CloudFormation stack this resource belongs to.</p> <p>Type: String</p></li> <li> <p><code>resourceGroupName</code></p> <p>The name of the resource group this resource belongs to.</p> <p>Type: String</p></li> <li> <p><code>terraformSourceName</code></p> <p>The name of the Terraform S3 state file this resource belongs to.</p> <p>Type: String</p></li> <li> <p><code>eksSourceName</code></p> <p>Name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.</p><note> <p>This parameter accepts values in "eks-cluster/namespace" format.</p> </note> <p>Type: String</p></li> </ul></li> <li> <p><i> <code>type</code> </i></p> <p>The type of resource.</p> <p>Type: string</p></li> <li> <p><i> <code>name</code> </i></p> <p>The name of the resource.</p> <p>Type: String</p></li> <li> <p><code>additionalInfo</code></p> <p>Additional configuration parameters for an Resilience Hub application. If you want to implement <code>additionalInfo</code> through the Resilience Hub console rather than using an API call, see <a href="https://docs.aws.amazon.com/resilience-hub/latest/userguide/app-config-param.html">Configure the application configuration parameters</a>.</p><note> <p>Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.</p> <p>Key: <code>"failover-regions"</code></p> <p>Value: <code>"[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"</code></p> </note></li> </ul></li> <li> <p><b> <code>appComponents</code> </b></p> <p>List of Application Components that this resource belongs to. If an Application Component is not part of the Resilience Hub application, it will be added.</p> <p>Type: Array</p> <p>Each <code>appComponents</code> array item includes the following fields:</p> <ul> <li> <p><code>name</code></p> <p>Name of the Application Component.</p> <p>Type: String</p></li> <li> <p><code>type</code></p> <p>Type of Application Component. For more information about the types of Application Component, see <a href="https://docs.aws.amazon.com/resilience-hub/latest/userguide/AppComponent.grouping.html">Grouping resources in an AppComponent</a>.</p> <p>Type: String</p></li> <li> <p><code>resourceNames</code></p> <p>The list of included resources that are assigned to the Application Component.</p> <p>Type: Array of strings</p></li> <li> <p><code>additionalInfo</code></p> <p>Additional configuration parameters for an Resilience Hub application. If you want to implement <code>additionalInfo</code> through the Resilience Hub console rather than using an API call, see <a href="https://docs.aws.amazon.com/resilience-hub/latest/userguide/app-config-param.html">Configure the application configuration parameters</a>.</p><note> <p>Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.</p> <p>Key: <code>"failover-regions"</code></p> <p>Value: <code>"[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"</code></p> </note></li> </ul></li> <li> <p><b> <code>excludedResources</code> </b></p> <p>The list of logical resource identifiers to be excluded from the application.</p> <p>Type: Array</p><note> <p>Don't add the resources that you want to include.</p> </note> <p>Each <code>excludedResources</code> array item includes the following fields:</p> <ul> <li> <p><i> <code>logicalResourceIds</code> </i></p> <p>Logical identifier of the resource.</p> <p>Type: Object</p><note> <p>You can configure only one of the following fields:</p> <ul> <li> <p><code>logicalStackName</code></p></li> <li> <p><code>resourceGroupName</code></p></li> <li> <p><code>terraformSourceName</code></p></li> <li> <p><code>eksSourceName</code></p></li> </ul> </note> <p>Each <code>logicalResourceIds</code> object includes the following fields:</p> <ul> <li> <p><code>identifier</code></p> <p>Identifier of the resource.</p> <p>Type: String</p></li> <li> <p><code>logicalStackName</code></p> <p>The name of the CloudFormation stack this resource belongs to.</p> <p>Type: String</p></li> <li> <p><code>resourceGroupName</code></p> <p>The name of the resource group this resource belongs to.</p> <p>Type: String</p></li> <li> <p><code>terraformSourceName</code></p> <p>The name of the Terraform S3 state file this resource belongs to.</p> <p>Type: String</p></li> <li> <p><code>eksSourceName</code></p> <p>Name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.</p><note> <p>This parameter accepts values in "eks-cluster/namespace" format.</p> </note> <p>Type: String</p></li> </ul></li> </ul></li> <li> <p><b> <code>version</code> </b></p> <p>Resilience Hub application version.</p></li> <li> <p><code>additionalInfo</code></p> <p>Additional configuration parameters for an Resilience Hub application. If you want to implement <code>additionalInfo</code> through the Resilience Hub console rather than using an API call, see <a href="https://docs.aws.amazon.com/resilience-hub/latest/userguide/app-config-param.html">Configure the application configuration parameters</a>.</p><note> <p>Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.</p> <p>Key: <code>"failover-regions"</code></p> <p>Value: <code>"[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"</code></p> </note></li> </ul>
/// - On failure, responds with [`SdkError<DescribeAppVersionTemplateError>`](crate::operation::describe_app_version_template::DescribeAppVersionTemplateError)
pub fn describe_app_version_template(
&self,
) -> crate::operation::describe_app_version_template::builders::DescribeAppVersionTemplateFluentBuilder {
crate::operation::describe_app_version_template::builders::DescribeAppVersionTemplateFluentBuilder::new(self.handle.clone())
}
}