aws-cdk-lib.aws_resiliencehub.CfnAppProps

interface CfnAppProps

LanguageType name
.NETAmazon.CDK.AWS.ResilienceHub.CfnAppProps
Gogithub.com/aws/aws-cdk-go/awscdk/v2/awsresiliencehub#CfnAppProps
Javasoftware.amazon.awscdk.services.resiliencehub.CfnAppProps
Pythonaws_cdk.aws_resiliencehub.CfnAppProps
TypeScript aws-cdk-lib » aws_resiliencehub » CfnAppProps

Properties for defining a CfnApp.

Example

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_resiliencehub as resiliencehub } from 'aws-cdk-lib';
const cfnAppProps: resiliencehub.CfnAppProps = {
  appTemplateBody: 'appTemplateBody',
  name: 'name',
  resourceMappings: [{
    mappingType: 'mappingType',
    physicalResourceId: {
      identifier: 'identifier',
      type: 'type',

      // the properties below are optional
      awsAccountId: 'awsAccountId',
      awsRegion: 'awsRegion',
    },

    // the properties below are optional
    eksSourceName: 'eksSourceName',
    logicalStackName: 'logicalStackName',
    resourceName: 'resourceName',
    terraformSourceName: 'terraformSourceName',
  }],

  // the properties below are optional
  appAssessmentSchedule: 'appAssessmentSchedule',
  description: 'description',
  resiliencyPolicyArn: 'resiliencyPolicyArn',
  tags: {
    tagsKey: 'tags',
  },
};

Properties

NameTypeDescription
appTemplateBodystringA JSON string that provides information about your application structure.
namestringThe name for the application.
resourceMappingsIResolvable | IResolvable | ResourceMappingProperty[]An array of ResourceMapping objects.
appAssessmentSchedule?stringAssessment execution schedule with 'Daily' or 'Disabled' values.
description?stringThe optional description for an app.
resiliencyPolicyArn?stringThe Amazon Resource Name (ARN) of the resiliency policy.
tags?{ [string]: string }The tags assigned to the resource.

appTemplateBody

Type: string

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

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.

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 .

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 .

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

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

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.

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 .

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

Type: string

The name for the application.


resourceMappings

Type: IResolvable | IResolvable | ResourceMappingProperty[]

An array of ResourceMapping objects.


appAssessmentSchedule?

Type: string (optional)

Assessment execution schedule with 'Daily' or 'Disabled' values.


description?

Type: string (optional)

The optional description for an app.


resiliencyPolicyArn?

Type: string (optional)

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


tags?

Type: { [string]: string } (optional)

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.