interface CfnAppProps
Language | Type name |
---|---|
.NET | Amazon.CDK.AWS.ResilienceHub.CfnAppProps |
Go | github.com/aws/aws-cdk-go/awscdk/v2/awsresiliencehub#CfnAppProps |
Java | software.amazon.awscdk.services.resiliencehub.CfnAppProps |
Python | aws_cdk.aws_resiliencehub.CfnAppProps |
TypeScript | aws-cdk-lib » aws_resiliencehub » CfnAppProps |
Properties for defining a CfnApp
.
See also: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-app.html
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',
eventSubscriptions: [{
eventType: 'eventType',
name: 'name',
// the properties below are optional
snsTopicArn: 'snsTopicArn',
}],
permissionModel: {
type: 'type',
// the properties below are optional
crossAccountRoleArns: ['crossAccountRoleArns'],
invokerRoleName: 'invokerRoleName',
},
resiliencyPolicyArn: 'resiliencyPolicyArn',
tags: {
tagsKey: 'tags',
},
};
Properties
Name | Type | Description |
---|---|---|
app | string | A JSON string that provides information about your application structure. |
name | string | Name for the application. |
resource | IResolvable | IResolvable | Resource [] | An array of ResourceMapping objects. |
app | string | Assessment execution schedule with 'Daily' or 'Disabled' values. |
description? | string | Optional description for an application. |
event | IResolvable | IResolvable | Event [] | The list of events you would like to subscribe and get notification for. |
permission | IResolvable | Permission | Defines the roles and credentials that AWS Resilience Hub would use while creating the application, importing its resources, and running an assessment. |
resiliency | string | The Amazon Resource Name (ARN) of the resiliency policy. |
tags? | { [string]: string } | 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 in Sample appTemplateBody template .
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
Identifier of the resource.
Type: String
logicalStackName
Name of the AWS CloudFormation stack this resource belongs to.
Type: String
resourceGroupName
Name of the resource group this resource belongs to.
Type: String
terraformSourceName
Name of the Terraform S3 state file this resource belongs to.
Type: String
eksSourceName
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
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
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
Name of the AWS CloudFormation stack this resource belongs to.
Type: String
resourceGroupName
Name of the resource group this resource belongs to.
Type: String
terraformSourceName
Name of the Terraform S3 state file this resource belongs to.
Type: String
eksSourceName
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
Name for the application.
resourceMappings
Type:
IResolvable
|
IResolvable
|
Resource
[]
An array of ResourceMapping
objects.
appAssessmentSchedule?
Type:
string
(optional)
Assessment execution schedule with 'Daily' or 'Disabled' values.
description?
Type:
string
(optional)
Optional description for an application.
eventSubscriptions?
Type:
IResolvable
|
IResolvable
|
Event
[]
(optional)
The list of events you would like to subscribe and get notification for.
Currently, AWS Resilience Hub supports notifications only for Drift detected and Scheduled assessment failure events.
permissionModel?
Type:
IResolvable
|
Permission
(optional)
Defines the roles and credentials that AWS Resilience Hub would use while creating the application, importing its resources, and running an assessment.
resiliencyPolicyArn?
Type:
string
(optional)
The Amazon Resource Name (ARN) of the resiliency policy.
tags?
Type:
{ [string]: string }
(optional)
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.