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 supported 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) –
Name of the application this resource is mapped to when the
mappingType
isAppRegistryApp
.eksSourceName (string) –
Name of the Amazon Elastic Kubernetes Service cluster and namespace that this resource is mapped to when the
mappingType
isEKS
.Note
This parameter accepts values in “eks-cluster/namespace” format.
logicalStackName (string) –
Name of the CloudFormation stack this resource is mapped to when the
mappingType
isCfnStack
.mappingType (string) – [REQUIRED]
Specifies the type of resource mapping.
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 Groups that this resource is mapped to when the
mappingType
isResourceGroup
.resourceName (string) –
Name of the resource that this resource is mapped to when the
mappingType
isResource
.terraformSourceName (string) –
Name of the Terraform source that this resource is mapped to when the
mappingType
isTerraform
.
- 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) –
Name of the application this resource is mapped to when the
mappingType
isAppRegistryApp
.eksSourceName (string) –
Name of the Amazon Elastic Kubernetes Service cluster and namespace that this resource is mapped to when the
mappingType
isEKS
.Note
This parameter accepts values in “eks-cluster/namespace” format.
logicalStackName (string) –
Name of the CloudFormation stack this resource is mapped to when the
mappingType
isCfnStack
.mappingType (string) –
Specifies the type of resource mapping.
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 Groups that this resource is mapped to when the
mappingType
isResourceGroup
.resourceName (string) –
Name of the resource that this resource is mapped to when the
mappingType
isResource
.terraformSourceName (string) –
Name of the Terraform source that this resource is mapped to when the
mappingType
isTerraform
.
Exceptions
ResilienceHub.Client.exceptions.InternalServerException
ResilienceHub.Client.exceptions.ResourceNotFoundException
ResilienceHub.Client.exceptions.ConflictException
ResilienceHub.Client.exceptions.ServiceQuotaExceededException
ResilienceHub.Client.exceptions.ThrottlingException
ResilienceHub.Client.exceptions.ValidationException
ResilienceHub.Client.exceptions.AccessDeniedException