2023/03/22 - AWS Resilience Hub - 12 updated api methods
Changes This release provides customers with the ability to import resources from within an EKS cluster and assess the resiliency of EKS cluster workloads.
{'resourceMappings': {'eksSourceName': 'string', 'mappingType': {'EKS'}}}
Adds the resource mapping for the draft application version. You can also update an existing resource mapping to a new physical resource.
See also: AWS API Documentation
Request Syntax
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' }, ] )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
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 type RESOURCE . We recommend using the mapping type CFN_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) --
The 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 an Resource Groups. The name of the resource group is contained in the resourceGroupName property.
physicalResourceId (dict) -- [REQUIRED]
The identifier of this 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]
The 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) .
Native
The resource identifier is an Resilience Hub-native identifier.
resourceGroupName (string) --
The name of the resource group this resource is mapped to.
resourceName (string) --
The name of the resource this resource is mapped to.
terraformSourceName (string) --
The short name of the Terraform source.
dict
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) --
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
appVersion (string) --
The version of the application.
resourceMappings (list) --
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 type RESOURCE . We recommend using the mapping type CFN_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) --
The 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 an Resource Groups. The name of the resource group is contained in the resourceGroupName property.
physicalResourceId (dict) --
The identifier of this 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) --
The identifier of the physical resource.
type (string) --
Specifies the type of physical resource identifier.
Arn
The resource identifier is an Amazon Resource Name (ARN) .
Native
The resource identifier is an Resilience Hub-native identifier.
resourceGroupName (string) --
The name of the resource group this resource is mapped to.
resourceName (string) --
The name of the resource this resource is mapped to.
terraformSourceName (string) --
The short name of the Terraform source.
{'logicalResourceId': {'eksSourceName': 'string'}}Response
{'physicalResource': {'logicalResourceId': {'eksSourceName': 'string'}}}
Adds a resource to the Resilience Hub application and assigns it to the specified Application Components. If you specify a new Application Component, Resilience Hub will automatically create the Application Component.
Note
This action has no effect outside Resilience Hub.
This API updates the Resilience Hub application draft version. To use this resource for running resiliency assessments, you must publish the Resilience Hub application using the PublishAppVersion API.
To update application version with new physicalResourceID , you must call ResolveAppVersionResources API.
See also: AWS API Documentation
Request Syntax
client.create_app_version_resource( additionalInfo={ 'string': [ 'string', ] }, appArn='string', appComponents=[ 'string', ], awsAccountId='string', awsRegion='string', clientToken='string', logicalResourceId={ 'eksSourceName': 'string', 'identifier': 'string', 'logicalStackName': 'string', 'resourceGroupName': 'string', 'terraformSourceName': 'string' }, physicalResourceId='string', resourceName='string', resourceType='string' )
dict
Currently, there is no supported additional information for resources.
(string) --
(list) --
(string) --
string
[REQUIRED]
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
list
[REQUIRED]
The list of Application Components that this resource belongs to. If an Application Component is not part of the AWS Resilience Hub application, it will be added.
(string) --
string
The Amazon Web Services account that owns the physical resource.
string
The Amazon Web Services region that owns the physical resource.
string
Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.
This field is autopopulated if not provided.
dict
[REQUIRED]
The logical identifier of the resource.
eksSourceName (string) --
The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
Note
This parameter accepts values in "eks-cluster/namespace" format.
identifier (string) -- [REQUIRED]
The identifier of the resource.
logicalStackName (string) --
The name of the CloudFormation stack this resource belongs to.
resourceGroupName (string) --
The name of the resource group that this resource belongs to.
terraformSourceName (string) --
The name of the Terraform S3 state file this resource belongs to.
string
[REQUIRED]
The physical identifier of the resource.
string
[REQUIRED]
The name of the resource.
string
[REQUIRED]
The type of resource.
dict
Response Syntax
{ 'appArn': 'string', 'appVersion': 'string', 'physicalResource': { 'additionalInfo': { 'string': [ 'string', ] }, 'appComponents': [ { 'additionalInfo': { 'string': [ 'string', ] }, 'id': 'string', 'name': 'string', 'type': 'string' }, ], 'excluded': True|False, 'logicalResourceId': { 'eksSourceName': 'string', 'identifier': 'string', 'logicalStackName': 'string', 'resourceGroupName': 'string', 'terraformSourceName': 'string' }, 'physicalResourceId': { 'awsAccountId': 'string', 'awsRegion': 'string', 'identifier': 'string', 'type': 'Arn'|'Native' }, 'resourceName': 'string', 'resourceType': 'string' } }
Response Structure
(dict) --
appArn (string) --
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
appVersion (string) --
The AWS Resilience Hub application version.
physicalResource (dict) --
Defines a physical resource. A physical resource is a resource that exists in your account. It can be identified using an Amazon Resource Name (ARN) or a Resilience Hub-native identifier.
additionalInfo (dict) --
Additional configuration parameters for an AWS Resilience Hub application.
Note
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>"}]}]"
(string) --
(list) --
(string) --
appComponents (list) --
The application components that belong to this resource.
(dict) --
Defines an Application Component.
additionalInfo (dict) --
Additional configuration parameters for an AWS Resilience Hub application.
Note
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>"}]}]"
(string) --
(list) --
(string) --
id (string) --
Unique identifier of the Application Component.
name (string) --
The name of the Application Component.
type (string) --
The type of Application Component.
excluded (boolean) --
Indicates if a resource is included or excluded from the assessment.
logicalResourceId (dict) --
The logical identifier of the resource.
eksSourceName (string) --
The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
Note
This parameter accepts values in "eks-cluster/namespace" format.
identifier (string) --
The identifier of the resource.
logicalStackName (string) --
The name of the CloudFormation stack this resource belongs to.
resourceGroupName (string) --
The name of the resource group that this resource belongs to.
terraformSourceName (string) --
The name of the Terraform S3 state file this resource belongs to.
physicalResourceId (dict) --
The physical identifier of the 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) --
The identifier of the physical resource.
type (string) --
Specifies the type of physical resource identifier.
Arn
The resource identifier is an Amazon Resource Name (ARN) .
Native
The resource identifier is an Resilience Hub-native identifier.
resourceName (string) --
The name of the resource.
resourceType (string) --
The type of resource.
{'eksSourceClusterNamespace': {'eksClusterArn': 'string', 'namespace': 'string'}}Response
{'appInputSource': {'eksSourceClusterNamespace': {'eksClusterArn': 'string', 'namespace': 'string'}, 'importType': {'EKS'}}}
Deletes the input source and all of its imported resources from the Resilience Hub application.
See also: AWS API Documentation
Request Syntax
client.delete_app_input_source( appArn='string', clientToken='string', eksSourceClusterNamespace={ 'eksClusterArn': 'string', 'namespace': 'string' }, sourceArn='string', terraformSource={ 's3StateFileUrl': 'string' } )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
string
Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.
This field is autopopulated if not provided.
dict
The namespace on your Amazon Elastic Kubernetes Service cluster that you want to delete from the Resilience Hub application.
eksClusterArn (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. The format for this ARN is: arn:aws :eks:region :account-id :cluster/cluster-name . For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.
namespace (string) -- [REQUIRED]
Name of the namespace that is located on your Amazon Elastic Kubernetes Service cluster.
string
The Amazon Resource Name (ARN) of the imported resource you want to remove from the Resilience Hub application. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.
dict
The imported Terraform s3 state file you want to remove from the Resilience Hub application.
s3StateFileUrl (string) -- [REQUIRED]
The URL of the Terraform s3 state file you need to import.
dict
Response Syntax
{ 'appArn': 'string', 'appInputSource': { 'eksSourceClusterNamespace': { 'eksClusterArn': 'string', 'namespace': 'string' }, 'importType': 'CfnStack'|'Resource'|'AppRegistryApp'|'ResourceGroup'|'Terraform'|'EKS', 'resourceCount': 123, 'sourceArn': 'string', 'sourceName': 'string', 'terraformSource': { 's3StateFileUrl': 'string' } } }
Response Structure
(dict) --
appArn (string) --
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
appInputSource (dict) --
The name of the input source from where the application resource is imported from.
eksSourceClusterNamespace (dict) --
The namespace on your Amazon Elastic Kubernetes Service cluster.
eksClusterArn (string) --
The Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. The format for this ARN is: arn:aws :eks:region :account-id :cluster/cluster-name . For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.
namespace (string) --
Name of the namespace that is located on your Amazon Elastic Kubernetes Service cluster.
importType (string) --
The resource type of the input source.
resourceCount (integer) --
The number of resources.
sourceArn (string) --
The Amazon Resource Name (ARN) of the input source. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.
sourceName (string) --
The name of the input source.
terraformSource (dict) --
The name of the Terraform s3 state file.
s3StateFileUrl (string) --
The URL of the Terraform s3 state file you need to import.
{'logicalResourceId': {'eksSourceName': 'string'}}Response
{'physicalResource': {'logicalResourceId': {'eksSourceName': 'string'}}}
Deletes a resource from the Resilience Hub application.
Note
You can only delete a manually added resource. To exclude non-manually added resources, use the UpdateAppVersionResource API.
This action has no effect outside Resilience Hub.
This API updates the Resilience Hub application draft version. To use this resource for running resiliency assessments, you must publish the Resilience Hub application using the PublishAppVersion API.
See also: AWS API Documentation
Request Syntax
client.delete_app_version_resource( appArn='string', awsAccountId='string', awsRegion='string', clientToken='string', logicalResourceId={ 'eksSourceName': 'string', 'identifier': 'string', 'logicalStackName': 'string', 'resourceGroupName': 'string', 'terraformSourceName': 'string' }, physicalResourceId='string', resourceName='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
string
The Amazon Web Services account that owns the physical resource.
string
The Amazon Web Services region that owns the physical resource.
string
Used for an idempotency token. A client token is a unique, case-sensitive string of up to 64 ASCII characters. You should not reuse the same client token for other API requests.
This field is autopopulated if not provided.
dict
The logical identifier of the resource.
eksSourceName (string) --
The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
Note
This parameter accepts values in "eks-cluster/namespace" format.
identifier (string) -- [REQUIRED]
The identifier of the resource.
logicalStackName (string) --
The name of the CloudFormation stack this resource belongs to.
resourceGroupName (string) --
The name of the resource group that this resource belongs to.
terraformSourceName (string) --
The name of the Terraform S3 state file this resource belongs to.
string
The physical identifier of the resource.
string
The name of the resource.
dict
Response Syntax
{ 'appArn': 'string', 'appVersion': 'string', 'physicalResource': { 'additionalInfo': { 'string': [ 'string', ] }, 'appComponents': [ { 'additionalInfo': { 'string': [ 'string', ] }, 'id': 'string', 'name': 'string', 'type': 'string' }, ], 'excluded': True|False, 'logicalResourceId': { 'eksSourceName': 'string', 'identifier': 'string', 'logicalStackName': 'string', 'resourceGroupName': 'string', 'terraformSourceName': 'string' }, 'physicalResourceId': { 'awsAccountId': 'string', 'awsRegion': 'string', 'identifier': 'string', 'type': 'Arn'|'Native' }, 'resourceName': 'string', 'resourceType': 'string' } }
Response Structure
(dict) --
appArn (string) --
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
appVersion (string) --
The AWS Resilience Hub application version.
physicalResource (dict) --
Defines a physical resource. A physical resource is a resource that exists in your account. It can be identified using an Amazon Resource Name (ARN) or a Resilience Hub-native identifier.
additionalInfo (dict) --
Additional configuration parameters for an AWS Resilience Hub application.
Note
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>"}]}]"
(string) --
(list) --
(string) --
appComponents (list) --
The application components that belong to this resource.
(dict) --
Defines an Application Component.
additionalInfo (dict) --
Additional configuration parameters for an AWS Resilience Hub application.
Note
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>"}]}]"
(string) --
(list) --
(string) --
id (string) --
Unique identifier of the Application Component.
name (string) --
The name of the Application Component.
type (string) --
The type of Application Component.
excluded (boolean) --
Indicates if a resource is included or excluded from the assessment.
logicalResourceId (dict) --
The logical identifier of the resource.
eksSourceName (string) --
The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
Note
This parameter accepts values in "eks-cluster/namespace" format.
identifier (string) --
The identifier of the resource.
logicalStackName (string) --
The name of the CloudFormation stack this resource belongs to.
resourceGroupName (string) --
The name of the resource group that this resource belongs to.
terraformSourceName (string) --
The name of the Terraform S3 state file this resource belongs to.
physicalResourceId (dict) --
The physical identifier of the 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) --
The identifier of the physical resource.
type (string) --
Specifies the type of physical resource identifier.
Arn
The resource identifier is an Amazon Resource Name (ARN) .
Native
The resource identifier is an Resilience Hub-native identifier.
resourceName (string) --
The name of the resource.
resourceType (string) --
The type of resource.
{'logicalResourceId': {'eksSourceName': 'string'}}Response
{'physicalResource': {'logicalResourceId': {'eksSourceName': 'string'}}}
Describes a resource of the Resilience Hub application.
Note
This API accepts only one of the following parameters to descibe the resource:
resourceName
logicalResourceId
physicalResourceId (Along with physicalResourceId , you can also provide awsAccountId , and awsRegion )
See also: AWS API Documentation
Request Syntax
client.describe_app_version_resource( appArn='string', appVersion='string', awsAccountId='string', awsRegion='string', logicalResourceId={ 'eksSourceName': 'string', 'identifier': 'string', 'logicalStackName': 'string', 'resourceGroupName': 'string', 'terraformSourceName': 'string' }, physicalResourceId='string', resourceName='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
string
[REQUIRED]
The AWS Resilience Hub application version.
string
The Amazon Web Services account that owns the physical resource.
string
The Amazon Web Services region that owns the physical resource.
dict
The logical identifier of the resource.
eksSourceName (string) --
The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
Note
This parameter accepts values in "eks-cluster/namespace" format.
identifier (string) -- [REQUIRED]
The identifier of the resource.
logicalStackName (string) --
The name of the CloudFormation stack this resource belongs to.
resourceGroupName (string) --
The name of the resource group that this resource belongs to.
terraformSourceName (string) --
The name of the Terraform S3 state file this resource belongs to.
string
The physical identifier of the resource.
string
The name of the resource.
dict
Response Syntax
{ 'appArn': 'string', 'appVersion': 'string', 'physicalResource': { 'additionalInfo': { 'string': [ 'string', ] }, 'appComponents': [ { 'additionalInfo': { 'string': [ 'string', ] }, 'id': 'string', 'name': 'string', 'type': 'string' }, ], 'excluded': True|False, 'logicalResourceId': { 'eksSourceName': 'string', 'identifier': 'string', 'logicalStackName': 'string', 'resourceGroupName': 'string', 'terraformSourceName': 'string' }, 'physicalResourceId': { 'awsAccountId': 'string', 'awsRegion': 'string', 'identifier': 'string', 'type': 'Arn'|'Native' }, 'resourceName': 'string', 'resourceType': 'string' } }
Response Structure
(dict) --
appArn (string) --
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
appVersion (string) --
The AWS Resilience Hub application version.
physicalResource (dict) --
Defines a physical resource. A physical resource is a resource that exists in your account. It can be identified using an Amazon Resource Name (ARN) or a Resilience Hub-native identifier.
additionalInfo (dict) --
Additional configuration parameters for an AWS Resilience Hub application.
Note
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>"}]}]"
(string) --
(list) --
(string) --
appComponents (list) --
The application components that belong to this resource.
(dict) --
Defines an Application Component.
additionalInfo (dict) --
Additional configuration parameters for an AWS Resilience Hub application.
Note
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>"}]}]"
(string) --
(list) --
(string) --
id (string) --
Unique identifier of the Application Component.
name (string) --
The name of the Application Component.
type (string) --
The type of Application Component.
excluded (boolean) --
Indicates if a resource is included or excluded from the assessment.
logicalResourceId (dict) --
The logical identifier of the resource.
eksSourceName (string) --
The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
Note
This parameter accepts values in "eks-cluster/namespace" format.
identifier (string) --
The identifier of the resource.
logicalStackName (string) --
The name of the CloudFormation stack this resource belongs to.
resourceGroupName (string) --
The name of the resource group that this resource belongs to.
terraformSourceName (string) --
The name of the Terraform S3 state file this resource belongs to.
physicalResourceId (dict) --
The physical identifier of the 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) --
The identifier of the physical resource.
type (string) --
Specifies the type of physical resource identifier.
Arn
The resource identifier is an Amazon Resource Name (ARN) .
Native
The resource identifier is an Resilience Hub-native identifier.
resourceName (string) --
The name of the resource.
resourceType (string) --
The type of resource.
{'eksSources': [{'eksClusterArn': 'string', 'namespaces': ['string']}]}
Imports resources to Resilience Hub application draft version from different input sources. For more information about the input sources supported by Resilience Hub, see Discover the structure and describe your Resilience Hub application .
See also: AWS API Documentation
Request Syntax
client.import_resources_to_draft_app_version( appArn='string', eksSources=[ { 'eksClusterArn': 'string', 'namespaces': [ 'string', ] }, ], importStrategy='AddOnly'|'ReplaceAll', sourceArns=[ 'string', ], terraformSources=[ { 's3StateFileUrl': 'string' }, ] )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
list
The input sources of the Amazon Elastic Kubernetes Service resources you need to import.
(dict) --
The input source of the Amazon Elastic Kubernetes Service cluster.
eksClusterArn (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. The format for this ARN is: arn:aws :eks:region :account-id :cluster/cluster-name . For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.
namespaces (list) -- [REQUIRED]
The list of namespaces located on your Amazon Elastic Kubernetes Service cluster.
(string) --
string
The import strategy you would like to set to import resources into Resilience Hub application.
list
The Amazon Resource Names (ARNs) for the resources.
(string) --
list
A list of terraform file s3 URLs you need to import.
(dict) --
The Terraform s3 state file you need to import.
s3StateFileUrl (string) -- [REQUIRED]
The URL of the Terraform s3 state file you need to import.
dict
Response Syntax
{ 'appArn': 'string', 'appVersion': 'string', 'eksSources': [ { 'eksClusterArn': 'string', 'namespaces': [ 'string', ] }, ], 'sourceArns': [ 'string', ], 'status': 'Pending'|'InProgress'|'Failed'|'Success', 'terraformSources': [ { 's3StateFileUrl': 'string' }, ] }
Response Structure
(dict) --
appArn (string) --
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
appVersion (string) --
The version of the application.
eksSources (list) --
The input sources of the Amazon Elastic Kubernetes Service resources you have imported.
(dict) --
The input source of the Amazon Elastic Kubernetes Service cluster.
eksClusterArn (string) --
The Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. The format for this ARN is: arn:aws :eks:region :account-id :cluster/cluster-name . For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.
namespaces (list) --
The list of namespaces located on your Amazon Elastic Kubernetes Service cluster.
(string) --
sourceArns (list) --
The Amazon Resource Names (ARNs) for the resources you have imported.
(string) --
status (string) --
The status of the action.
terraformSources (list) --
A list of terraform file s3 URLs you have imported.
(dict) --
The Terraform s3 state file you need to import.
s3StateFileUrl (string) --
The URL of the Terraform s3 state file you need to import.
{'appInputSources': {'eksSourceClusterNamespace': {'eksClusterArn': 'string', 'namespace': 'string'}, 'importType': {'EKS'}}}
Lists all the input sources of the Resilience Hub application. For more information about the input sources supported by Resilience Hub, see Discover the structure and describe your Resilience Hub application .
See also: AWS API Documentation
Request Syntax
client.list_app_input_sources( appArn='string', appVersion='string', maxResults=123, nextToken='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
string
[REQUIRED]
The AWS Resilience Hub application version.
integer
Maximum number of input sources to be displayed per Resilience Hub application.
string
Null, or the token from a previous call to get the next set of results.
dict
Response Syntax
{ 'appInputSources': [ { 'eksSourceClusterNamespace': { 'eksClusterArn': 'string', 'namespace': 'string' }, 'importType': 'CfnStack'|'Resource'|'AppRegistryApp'|'ResourceGroup'|'Terraform'|'EKS', 'resourceCount': 123, 'sourceArn': 'string', 'sourceName': 'string', 'terraformSource': { 's3StateFileUrl': 'string' } }, ], 'nextToken': 'string' }
Response Structure
(dict) --
appInputSources (list) --
The list of Resilience Hub application input sources.
(dict) --
The list of Resilience Hub application input sources.
eksSourceClusterNamespace (dict) --
The namespace on your Amazon Elastic Kubernetes Service cluster.
eksClusterArn (string) --
The Amazon Resource Name (ARN) of the Amazon Elastic Kubernetes Service cluster. The format for this ARN is: arn:aws :eks:region :account-id :cluster/cluster-name . For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.
namespace (string) --
Name of the namespace that is located on your Amazon Elastic Kubernetes Service cluster.
importType (string) --
The resource type of the input source.
resourceCount (integer) --
The number of resources.
sourceArn (string) --
The Amazon Resource Name (ARN) of the input source. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference guide.
sourceName (string) --
The name of the input source.
terraformSource (dict) --
The name of the Terraform s3 state file.
s3StateFileUrl (string) --
The URL of the Terraform s3 state file you need to import.
nextToken (string) --
The token for the next set of results, or null if there are no more results.
{'resourceMappings': {'eksSourceName': 'string', 'mappingType': {'EKS'}}}
Lists how the resources in an application version are mapped/sourced from. Mappings can be physical resource identifiers, CloudFormation stacks, resource-groups, or an application registry app.
See also: AWS API Documentation
Request Syntax
client.list_app_version_resource_mappings( appArn='string', appVersion='string', maxResults=123, nextToken='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
string
[REQUIRED]
The version of the application.
integer
The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.
string
Null, or the token from a previous call to get the next set of results.
dict
Response Syntax
{ 'nextToken': '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) --
nextToken (string) --
The token for the next set of results, or null if there are no more results.
resourceMappings (list) --
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 type RESOURCE . We recommend using the mapping type CFN_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) --
The 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 an Resource Groups. The name of the resource group is contained in the resourceGroupName property.
physicalResourceId (dict) --
The identifier of this 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) --
The identifier of the physical resource.
type (string) --
Specifies the type of physical resource identifier.
Arn
The resource identifier is an Amazon Resource Name (ARN) .
Native
The resource identifier is an Resilience Hub-native identifier.
resourceGroupName (string) --
The name of the resource group this resource is mapped to.
resourceName (string) --
The name of the resource this resource is mapped to.
terraformSourceName (string) --
The short name of the Terraform source.
{'physicalResources': {'logicalResourceId': {'eksSourceName': 'string'}}}
Lists all the resources in an Resilience Hub application.
See also: AWS API Documentation
Request Syntax
client.list_app_version_resources( appArn='string', appVersion='string', maxResults=123, nextToken='string', resolutionId='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
string
[REQUIRED]
The version of the application.
integer
The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.
string
Null, or the token from a previous call to get the next set of results.
string
The identifier for a specific resolution.
dict
Response Syntax
{ 'nextToken': 'string', 'physicalResources': [ { 'additionalInfo': { 'string': [ 'string', ] }, 'appComponents': [ { 'additionalInfo': { 'string': [ 'string', ] }, 'id': 'string', 'name': 'string', 'type': 'string' }, ], 'excluded': True|False, 'logicalResourceId': { 'eksSourceName': 'string', 'identifier': 'string', 'logicalStackName': 'string', 'resourceGroupName': 'string', 'terraformSourceName': 'string' }, 'physicalResourceId': { 'awsAccountId': 'string', 'awsRegion': 'string', 'identifier': 'string', 'type': 'Arn'|'Native' }, 'resourceName': 'string', 'resourceType': 'string' }, ], 'resolutionId': 'string' }
Response Structure
(dict) --
nextToken (string) --
The token for the next set of results, or null if there are no more results.
physicalResources (list) --
The physical resources in the application version.
(dict) --
Defines a physical resource. A physical resource is a resource that exists in your account. It can be identified using an Amazon Resource Name (ARN) or an Resilience Hub-native identifier.
additionalInfo (dict) --
Additional configuration parameters for an AWS Resilience Hub application.
Note
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>"}]}]"
(string) --
(list) --
(string) --
appComponents (list) --
The application components that belong to this resource.
(dict) --
Defines an Application Component.
additionalInfo (dict) --
Additional configuration parameters for an AWS Resilience Hub application.
Note
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>"}]}]"
(string) --
(list) --
(string) --
id (string) --
Unique identifier of the Application Component.
name (string) --
The name of the Application Component.
type (string) --
The type of Application Component.
excluded (boolean) --
Indicates if a resource is included or excluded from the assessment.
logicalResourceId (dict) --
The logical identifier of the resource.
eksSourceName (string) --
The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
Note
This parameter accepts values in "eks-cluster/namespace" format.
identifier (string) --
The identifier of the resource.
logicalStackName (string) --
The name of the CloudFormation stack this resource belongs to.
resourceGroupName (string) --
The name of the resource group that this resource belongs to.
terraformSourceName (string) --
The name of the Terraform S3 state file this resource belongs to.
physicalResourceId (dict) --
The physical identifier of the 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) --
The identifier of the physical resource.
type (string) --
Specifies the type of physical resource identifier.
Arn
The resource identifier is an Amazon Resource Name (ARN) .
Native
The resource identifier is an Resilience Hub-native identifier.
resourceName (string) --
The name of the resource.
resourceType (string) --
The type of resource.
resolutionId (string) --
The ID for a specific resolution.
{'unsupportedResources': {'logicalResourceId': {'eksSourceName': 'string'}, 'unsupportedResourceStatus': 'string'}}
Lists the resources that are not currently supported in Resilience Hub. An unsupported resource is a resource that exists in the object that was used to create an app, but is not supported by Resilience Hub.
See also: AWS API Documentation
Request Syntax
client.list_unsupported_app_version_resources( appArn='string', appVersion='string', maxResults=123, nextToken='string', resolutionId='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
string
[REQUIRED]
The version of the application.
integer
The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.
string
Null, or the token from a previous call to get the next set of results.
string
The identifier for a specific resolution.
dict
Response Syntax
{ 'nextToken': 'string', 'resolutionId': 'string', 'unsupportedResources': [ { 'logicalResourceId': { 'eksSourceName': 'string', 'identifier': 'string', 'logicalStackName': 'string', 'resourceGroupName': 'string', 'terraformSourceName': 'string' }, 'physicalResourceId': { 'awsAccountId': 'string', 'awsRegion': 'string', 'identifier': 'string', 'type': 'Arn'|'Native' }, 'resourceType': 'string', 'unsupportedResourceStatus': 'string' }, ] }
Response Structure
(dict) --
nextToken (string) --
The token for the next set of results, or null if there are no more results.
resolutionId (string) --
The identifier for a specific resolution.
unsupportedResources (list) --
The unsupported resources for the application.
(dict) --
Defines a resource that is not supported by Resilience Hub.
logicalResourceId (dict) --
The logical resource identifier for the unsupported resource.
eksSourceName (string) --
The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
Note
This parameter accepts values in "eks-cluster/namespace" format.
identifier (string) --
The identifier of the resource.
logicalStackName (string) --
The name of the CloudFormation stack this resource belongs to.
resourceGroupName (string) --
The name of the resource group that this resource belongs to.
terraformSourceName (string) --
The name of the Terraform S3 state file this resource belongs to.
physicalResourceId (dict) --
The physical resource identifier for the unsupported 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) --
The identifier of the physical resource.
type (string) --
Specifies the type of physical resource identifier.
Arn
The resource identifier is an Amazon Resource Name (ARN) .
Native
The resource identifier is an Resilience Hub-native identifier.
resourceType (string) --
The type of resource.
unsupportedResourceStatus (string) --
The status of unsupported resource.
{'eksSourceNames': ['string']}
Removes resource mappings from a draft application version.
See also: AWS API Documentation
Request Syntax
client.remove_draft_app_version_resource_mappings( appArn='string', appRegistryAppNames=[ 'string', ], eksSourceNames=[ 'string', ], logicalStackNames=[ 'string', ], resourceGroupNames=[ 'string', ], resourceNames=[ 'string', ], terraformSourceNames=[ 'string', ] )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
list
The names of the registered applications you want to remove from the resource mappings.
(string) --
list
The names of the Amazon Elastic Kubernetes Service clusters and namespaces you want to remove from the resource mappings.
Note
This parameter accepts values in "eks-cluster/namespace" format.
(string) --
list
The names of the CloudFormation stacks you want to remove from the resource mappings.
(string) --
list
The names of the resource groups you want to remove from the resource mappings.
(string) --
list
The names of the resources you want to remove from the resource mappings.
(string) --
list
The names of the Terraform sources you want to remove from the resource mappings.
(string) --
dict
Response Syntax
{ 'appArn': 'string', 'appVersion': 'string' }
Response Structure
(dict) --
appArn (string) --
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
appVersion (string) --
The version of the application.
{'logicalResourceId': {'eksSourceName': 'string'}}Response
{'physicalResource': {'logicalResourceId': {'eksSourceName': 'string'}}}
Updates the resource details in the Resilience Hub application.
Note
This action has no effect outside Resilience Hub.
This API updates the Resilience Hub application draft version. To use this resource for running resiliency assessments, you must publish the Resilience Hub application using the PublishAppVersion API.
To update application version with new physicalResourceID , you must call ResolveAppVersionResources API.
See also: AWS API Documentation
Request Syntax
client.update_app_version_resource( additionalInfo={ 'string': [ 'string', ] }, appArn='string', appComponents=[ 'string', ], awsAccountId='string', awsRegion='string', excluded=True|False, logicalResourceId={ 'eksSourceName': 'string', 'identifier': 'string', 'logicalStackName': 'string', 'resourceGroupName': 'string', 'terraformSourceName': 'string' }, physicalResourceId='string', resourceName='string', resourceType='string' )
dict
Currently, there is no supported additional information for resources.
(string) --
(list) --
(string) --
string
[REQUIRED]
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
list
The list of Application Components that this resource belongs to. If an Application Component is not part of the AWS Resilience Hub application, it will be added.
(string) --
string
The Amazon Web Services account that owns the physical resource.
string
The Amazon Web Services region that owns the physical resource.
boolean
Indicates if a resource is excluded from an Resilience Hub application.
Note
You can exclude only imported resources from an Resilience Hub application.
dict
The logical identifier of the resource.
eksSourceName (string) --
The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
Note
This parameter accepts values in "eks-cluster/namespace" format.
identifier (string) -- [REQUIRED]
The identifier of the resource.
logicalStackName (string) --
The name of the CloudFormation stack this resource belongs to.
resourceGroupName (string) --
The name of the resource group that this resource belongs to.
terraformSourceName (string) --
The name of the Terraform S3 state file this resource belongs to.
string
The physical identifier of the resource.
string
The name of the resource.
string
The type of resource.
dict
Response Syntax
{ 'appArn': 'string', 'appVersion': 'string', 'physicalResource': { 'additionalInfo': { 'string': [ 'string', ] }, 'appComponents': [ { 'additionalInfo': { 'string': [ 'string', ] }, 'id': 'string', 'name': 'string', 'type': 'string' }, ], 'excluded': True|False, 'logicalResourceId': { 'eksSourceName': 'string', 'identifier': 'string', 'logicalStackName': 'string', 'resourceGroupName': 'string', 'terraformSourceName': 'string' }, 'physicalResourceId': { 'awsAccountId': 'string', 'awsRegion': 'string', 'identifier': 'string', 'type': 'Arn'|'Native' }, 'resourceName': 'string', 'resourceType': 'string' } }
Response Structure
(dict) --
appArn (string) --
The Amazon Resource Name (ARN) of the AWS 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 AWS General Reference guide.
appVersion (string) --
The AWS Resilience Hub application version.
physicalResource (dict) --
Defines a physical resource. A physical resource is a resource that exists in your account. It can be identified using an Amazon Resource Name (ARN) or a Resilience Hub-native identifier.
additionalInfo (dict) --
Additional configuration parameters for an AWS Resilience Hub application.
Note
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>"}]}]"
(string) --
(list) --
(string) --
appComponents (list) --
The application components that belong to this resource.
(dict) --
Defines an Application Component.
additionalInfo (dict) --
Additional configuration parameters for an AWS Resilience Hub application.
Note
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>"}]}]"
(string) --
(list) --
(string) --
id (string) --
Unique identifier of the Application Component.
name (string) --
The name of the Application Component.
type (string) --
The type of Application Component.
excluded (boolean) --
Indicates if a resource is included or excluded from the assessment.
logicalResourceId (dict) --
The logical identifier of the resource.
eksSourceName (string) --
The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
Note
This parameter accepts values in "eks-cluster/namespace" format.
identifier (string) --
The identifier of the resource.
logicalStackName (string) --
The name of the CloudFormation stack this resource belongs to.
resourceGroupName (string) --
The name of the resource group that this resource belongs to.
terraformSourceName (string) --
The name of the Terraform S3 state file this resource belongs to.
physicalResourceId (dict) --
The physical identifier of the 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) --
The identifier of the physical resource.
type (string) --
Specifies the type of physical resource identifier.
Arn
The resource identifier is an Amazon Resource Name (ARN) .
Native
The resource identifier is an Resilience Hub-native identifier.
resourceName (string) --
The name of the resource.
resourceType (string) --
The type of resource.