CfnAppProps

class aws_cdk.aws_resiliencehub.CfnAppProps(*, app_template_body, name, resource_mappings, app_assessment_schedule=None, description=None, resiliency_policy_arn=None, tags=None)

Bases: object

Properties for defining a CfnApp.

Parameters:
  • app_template_body (str) –

    A JSON string that provides information about your application structure. To learn more about the appTemplateBody template, see the sample template provided in the Examples section. The appTemplateBody JSON string has the following structure: - ``resources`` The list of logical resources that needs to be included in the AWS Resilience Hub application. Type: Array .. epigraph:: Don’t add the resources that you want to exclude. Each resources array item includes the following fields: - ``logicalResourceId`` The logical identifier of the resource. Type: Object Each logicalResourceId object includes the following fields: - identifier The identifier of the resource. Type: String - logicalStackName The name of the AWS CloudFormation stack this resource belongs to. Type: String - resourceGroupName The name of the resource group this resource belongs to. Type: String - terraformSourceName The name of the Terraform S3 state file this resource belongs to. Type: String - eksSourceName The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to. .. epigraph:: This parameter accepts values in “eks-cluster/namespace” format. Type: String - ``type`` The type of resource. Type: string - ``name`` The name of the resource. Type: String - additionalInfo Additional configuration parameters for an AWS Resilience Hub application. If you want to implement additionalInfo through the AWS Resilience Hub console rather than using an API call, see Configure the application configuration parameters . .. epigraph:: Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account. Key: "failover-regions" Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]" - ``appComponents`` The list of Application Components (AppComponent) that this resource belongs to. If an AppComponent is not part of the AWS Resilience Hub application, it will be added. Type: Array Each appComponents array item includes the following fields: - name The name of the AppComponent. Type: String - type The type of AppComponent. For more information about the types of AppComponent, see Grouping resources in an AppComponent . Type: String - resourceNames The list of included resources that are assigned to the AppComponent. Type: Array of strings - additionalInfo Additional configuration parameters for an AWS Resilience Hub application. If you want to implement additionalInfo through the AWS Resilience Hub console rather than using an API call, see Configure the application configuration parameters . .. epigraph:: Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account. Key: "failover-regions" Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]" - ``excludedResources`` The list of logical resource identifiers to be excluded from the application. Type: Array .. epigraph:: Don’t add the resources that you want to include. Each excludedResources array item includes the following fields: - ``logicalResourceIds`` The logical identifier of the resource. Type: Object .. epigraph:: You can configure only one of the following fields: - logicalStackName - resourceGroupName - terraformSourceName - eksSourceName Each logicalResourceIds object includes the following fields: - identifier The identifier of the resource. Type: String - logicalStackName The name of the AWS CloudFormation stack this resource belongs to. Type: String - resourceGroupName The name of the resource group this resource belongs to. Type: String - terraformSourceName The name of the Terraform S3 state file this resource belongs to. Type: String - eksSourceName The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to. .. epigraph:: This parameter accepts values in “eks-cluster/namespace” format. Type: String - ``version`` The AWS Resilience Hub application version. - additionalInfo Additional configuration parameters for an AWS Resilience Hub application. If you want to implement additionalInfo through the AWS Resilience Hub console rather than using an API call, see Configure the application configuration parameters . .. epigraph:: Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account. Key: "failover-regions" Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"

  • name (str) – The name for the application.

  • resource_mappings (Union[IResolvable, Sequence[Union[ResourceMappingProperty, Dict[str, Any], IResolvable]]]) – An array of ResourceMapping objects.

  • app_assessment_schedule (Optional[str]) – Assessment execution schedule with ‘Daily’ or ‘Disabled’ values.

  • description (Optional[str]) – The optional description for an app.

  • resiliency_policy_arn (Optional[str]) – The Amazon Resource Name (ARN) of the resiliency policy.

  • tags (Optional[Mapping[str, str]]) – The tags assigned to the resource. A tag is a label that you assign to an AWS resource. Each tag consists of a key/value pair.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-app.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_resiliencehub as resiliencehub

cfn_app_props = resiliencehub.CfnAppProps(
    app_template_body="appTemplateBody",
    name="name",
    resource_mappings=[resiliencehub.CfnApp.ResourceMappingProperty(
        mapping_type="mappingType",
        physical_resource_id=resiliencehub.CfnApp.PhysicalResourceIdProperty(
            identifier="identifier",
            type="type",

            # the properties below are optional
            aws_account_id="awsAccountId",
            aws_region="awsRegion"
        ),

        # the properties below are optional
        eks_source_name="eksSourceName",
        logical_stack_name="logicalStackName",
        resource_name="resourceName",
        terraform_source_name="terraformSourceName"
    )],

    # the properties below are optional
    app_assessment_schedule="appAssessmentSchedule",
    description="description",
    resiliency_policy_arn="resiliencyPolicyArn",
    tags={
        "tags_key": "tags"
    }
)

Attributes

app_assessment_schedule

Assessment execution schedule with ‘Daily’ or ‘Disabled’ values.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-app.html#cfn-resiliencehub-app-appassessmentschedule

app_template_body

A JSON string that provides information about your application structure.

To learn more about the appTemplateBody template, see the sample template provided in the Examples section.

The appTemplateBody JSON string has the following structure:

  • ``resources``

The list of logical resources that needs to be included in the AWS Resilience Hub application.

Type: Array .. epigraph:

Don't add the resources that you want to exclude.

Each resources array item includes the following fields:

  • ``logicalResourceId``

The logical identifier of the resource.

Type: Object

Each logicalResourceId object includes the following fields:

  • identifier

The identifier of the resource.

Type: String

  • logicalStackName

The name of the AWS CloudFormation stack this resource belongs to.

Type: String

  • resourceGroupName

The name of the resource group this resource belongs to.

Type: String

  • terraformSourceName

The name of the Terraform S3 state file this resource belongs to.

Type: String

  • eksSourceName

The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to. .. epigraph:

This parameter accepts values in "eks-cluster/namespace" format.

Type: String

  • ``type``

The type of resource.

Type: string

  • ``name``

The name of the resource.

Type: String

  • additionalInfo

Additional configuration parameters for an AWS Resilience Hub application. If you want to implement additionalInfo through the AWS Resilience Hub console rather than using an API call, see Configure the application configuration parameters . .. epigraph:

Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.

Key: ``"failover-regions"``

Value: ``"[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"``
  • ``appComponents``

The list of Application Components (AppComponent) that this resource belongs to. If an AppComponent is not part of the AWS Resilience Hub application, it will be added.

Type: Array

Each appComponents array item includes the following fields:

  • name

The name of the AppComponent.

Type: String

  • type

The type of AppComponent. For more information about the types of AppComponent, see Grouping resources in an AppComponent .

Type: String

  • resourceNames

The list of included resources that are assigned to the AppComponent.

Type: Array of strings

  • additionalInfo

Additional configuration parameters for an AWS Resilience Hub application. If you want to implement additionalInfo through the AWS Resilience Hub console rather than using an API call, see Configure the application configuration parameters . .. epigraph:

Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.

Key: ``"failover-regions"``

Value: ``"[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"``
  • ``excludedResources``

The list of logical resource identifiers to be excluded from the application.

Type: Array .. epigraph:

Don't add the resources that you want to include.

Each excludedResources array item includes the following fields:

  • ``logicalResourceIds``

The logical identifier of the resource.

Type: Object .. epigraph:

You can configure only one of the following fields:

- ``logicalStackName``
- ``resourceGroupName``
- ``terraformSourceName``
- ``eksSourceName``

Each logicalResourceIds object includes the following fields:

  • identifier

The identifier of the resource.

Type: String

  • logicalStackName

The name of the AWS CloudFormation stack this resource belongs to.

Type: String

  • resourceGroupName

The name of the resource group this resource belongs to.

Type: String

  • terraformSourceName

The name of the Terraform S3 state file this resource belongs to.

Type: String

  • eksSourceName

The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to. .. epigraph:

This parameter accepts values in "eks-cluster/namespace" format.

Type: String

  • ``version``

The AWS Resilience Hub application version.

  • additionalInfo

Additional configuration parameters for an AWS Resilience Hub application. If you want to implement additionalInfo through the AWS Resilience Hub console rather than using an API call, see Configure the application configuration parameters . .. epigraph:

Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account.

Key: ``"failover-regions"``

Value: ``"[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"``
Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-app.html#cfn-resiliencehub-app-apptemplatebody

description

The optional description for an app.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-app.html#cfn-resiliencehub-app-description

name

The name for the application.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-app.html#cfn-resiliencehub-app-name

resiliency_policy_arn

The Amazon Resource Name (ARN) of the resiliency policy.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-app.html#cfn-resiliencehub-app-resiliencypolicyarn

resource_mappings

An array of ResourceMapping objects.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-app.html#cfn-resiliencehub-app-resourcemappings

tags

The tags assigned to the resource.

A tag is a label that you assign to an AWS resource. Each tag consists of a key/value pair.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-app.html#cfn-resiliencehub-app-tags