ResilienceHub / Client / add_draft_app_version_resource_mappings
add_draft_app_version_resource_mappings#
- ResilienceHub.Client.add_draft_app_version_resource_mappings(**kwargs)#
Adds the source of resource-maps to the draft version of an application. During assessment, Resilience Hub will use these resource-maps to resolve the latest physical ID for each resource in the application template. For more information about different types of resources suported by Resilience Hub and how to add them in your application, see Step 2: How is your application managed? in the Resilience Hub User Guide.
See also: AWS API Documentation
Request Syntax
response = client.add_draft_app_version_resource_mappings( appArn='string', resourceMappings=[ { 'appRegistryAppName': 'string', 'eksSourceName': 'string', 'logicalStackName': 'string', 'mappingType': 'CfnStack'|'Resource'|'AppRegistryApp'|'ResourceGroup'|'Terraform'|'EKS', 'physicalResourceId': { 'awsAccountId': 'string', 'awsRegion': 'string', 'identifier': 'string', 'type': 'Arn'|'Native' }, 'resourceGroupName': 'string', 'resourceName': 'string', 'terraformSourceName': 'string' }, ] )
- Parameters:
appArn (string) –
[REQUIRED]
Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:
partition
:resiliencehub:region
:account
:app/app-id
. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.resourceMappings (list) –
[REQUIRED]
Mappings used to map logical resources from the template to physical resources. You can use the mapping type
CFN_STACK
if the application template uses a logical stack name. Or you can map individual resources by using the mapping typeRESOURCE
. We recommend using the mapping typeCFN_STACK
if the application is backed by a CloudFormation stack.(dict) –
Defines a resource mapping.
appRegistryAppName (string) –
The name of the application this resource is mapped to.
eksSourceName (string) –
Name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
Note
This parameter accepts values in “eks-cluster/namespace” format.
logicalStackName (string) –
The name of the CloudFormation stack this resource is mapped to.
mappingType (string) – [REQUIRED]
Specifies the type of resource mapping.
AppRegistryApp
The resource is mapped to another application. The name of the application is contained in the
appRegistryAppName
property.CfnStack
The resource is mapped to a CloudFormation stack. The name of the CloudFormation stack is contained in the
logicalStackName
property.Resource
The resource is mapped to another resource. The name of the resource is contained in the
resourceName
property.ResourceGroup
The resource is mapped to Resource Groups. The name of the resource group is contained in the
resourceGroupName
property.physicalResourceId (dict) – [REQUIRED]
Identifier of the physical resource.
awsAccountId (string) –
The Amazon Web Services account that owns the physical resource.
awsRegion (string) –
The Amazon Web Services Region that the physical resource is located in.
identifier (string) – [REQUIRED]
Identifier of the physical resource.
type (string) – [REQUIRED]
Specifies the type of physical resource identifier.
Arn
The resource identifier is an Amazon Resource Name (ARN) and it can identify the following list of resources:
AWS::ECS::Service
AWS::EFS::FileSystem
AWS::ElasticLoadBalancingV2::LoadBalancer
AWS::Lambda::Function
AWS::SNS::Topic
Native
The resource identifier is an Resilience Hub-native identifier and it can identify the following list of resources:
AWS::ApiGateway::RestApi
AWS::ApiGatewayV2::Api
AWS::AutoScaling::AutoScalingGroup
AWS::DocDB::DBCluster
AWS::DocDB::DBGlobalCluster
AWS::DocDB::DBInstance
AWS::DynamoDB::GlobalTable
AWS::DynamoDB::Table
AWS::EC2::EC2Fleet
AWS::EC2::Instance
AWS::EC2::NatGateway
AWS::EC2::Volume
AWS::ElasticLoadBalancing::LoadBalancer
AWS::RDS::DBCluster
AWS::RDS::DBInstance
AWS::RDS::GlobalCluster
AWS::Route53::RecordSet
AWS::S3::Bucket
AWS::SQS::Queue
resourceGroupName (string) –
Name of the resource group that the resource is mapped to.
resourceName (string) –
Name of the resource that the resource is mapped to.
terraformSourceName (string) –
The short name of the Terraform source.
- Return type:
dict
- Returns:
Response Syntax
{ 'appArn': 'string', 'appVersion': 'string', 'resourceMappings': [ { 'appRegistryAppName': 'string', 'eksSourceName': 'string', 'logicalStackName': 'string', 'mappingType': 'CfnStack'|'Resource'|'AppRegistryApp'|'ResourceGroup'|'Terraform'|'EKS', 'physicalResourceId': { 'awsAccountId': 'string', 'awsRegion': 'string', 'identifier': 'string', 'type': 'Arn'|'Native' }, 'resourceGroupName': 'string', 'resourceName': 'string', 'terraformSourceName': 'string' }, ] }
Response Structure
(dict) –
appArn (string) –
Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:
partition
:resiliencehub:region
:account
:app/app-id
. For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference guide.appVersion (string) –
The version of the application.
resourceMappings (list) –
List of sources that are used to map a logical resource from the template to a physical resource. You can use sources such as CloudFormation, Terraform state files, AppRegistry applications, or Amazon EKS.
(dict) –
Defines a resource mapping.
appRegistryAppName (string) –
The name of the application this resource is mapped to.
eksSourceName (string) –
Name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
Note
This parameter accepts values in “eks-cluster/namespace” format.
logicalStackName (string) –
The name of the CloudFormation stack this resource is mapped to.
mappingType (string) –
Specifies the type of resource mapping.
AppRegistryApp
The resource is mapped to another application. The name of the application is contained in the
appRegistryAppName
property.CfnStack
The resource is mapped to a CloudFormation stack. The name of the CloudFormation stack is contained in the
logicalStackName
property.Resource
The resource is mapped to another resource. The name of the resource is contained in the
resourceName
property.ResourceGroup
The resource is mapped to Resource Groups. The name of the resource group is contained in the
resourceGroupName
property.physicalResourceId (dict) –
Identifier of the physical resource.
awsAccountId (string) –
The Amazon Web Services account that owns the physical resource.
awsRegion (string) –
The Amazon Web Services Region that the physical resource is located in.
identifier (string) –
Identifier of the physical resource.
type (string) –
Specifies the type of physical resource identifier.
Arn
The resource identifier is an Amazon Resource Name (ARN) and it can identify the following list of resources:
AWS::ECS::Service
AWS::EFS::FileSystem
AWS::ElasticLoadBalancingV2::LoadBalancer
AWS::Lambda::Function
AWS::SNS::Topic
Native
The resource identifier is an Resilience Hub-native identifier and it can identify the following list of resources:
AWS::ApiGateway::RestApi
AWS::ApiGatewayV2::Api
AWS::AutoScaling::AutoScalingGroup
AWS::DocDB::DBCluster
AWS::DocDB::DBGlobalCluster
AWS::DocDB::DBInstance
AWS::DynamoDB::GlobalTable
AWS::DynamoDB::Table
AWS::EC2::EC2Fleet
AWS::EC2::Instance
AWS::EC2::NatGateway
AWS::EC2::Volume
AWS::ElasticLoadBalancing::LoadBalancer
AWS::RDS::DBCluster
AWS::RDS::DBInstance
AWS::RDS::GlobalCluster
AWS::Route53::RecordSet
AWS::S3::Bucket
AWS::SQS::Queue
resourceGroupName (string) –
Name of the resource group that the resource is mapped to.
resourceName (string) –
Name of the resource that the resource is mapped to.
terraformSourceName (string) –
The short name of the Terraform source.
Exceptions
ResilienceHub.Client.exceptions.InternalServerException
ResilienceHub.Client.exceptions.ResourceNotFoundException
ResilienceHub.Client.exceptions.ConflictException
ResilienceHub.Client.exceptions.ThrottlingException
ResilienceHub.Client.exceptions.ValidationException
ResilienceHub.Client.exceptions.AccessDeniedException