Class CfnApp
A CloudFormation AWS::ResilienceHub::App
.
Inherited Members
Namespace: Amazon.CDK.AWS.ResilienceHub
Assembly: Amazon.CDK.AWS.ResilienceHub.dll
Syntax (csharp)
public class CfnApp : CfnResource, IConstruct, IDependable, IInspectable
Syntax (vb)
Public Class CfnApp
Inherits CfnResource
Implements IConstruct, IDependable, IInspectable
Remarks
Creates an AWS Resilience Hub application. An AWS Resilience Hub application is a collection of AWS resources structured to prevent and recover AWS application disruptions. To describe a AWS Resilience Hub application, you provide an application name, resources from one or more AWS CloudFormation stacks, AWS Resource Groups , Terraform state files, AppRegistry applications, and an appropriate resiliency policy. In addition, you can also add resources that are located on Amazon Elastic Kubernetes Service ( Amazon EKS ) clusters as optional resources. For more information about the number of resources supported per application, see Service quotas .
After you create an AWS Resilience Hub application, you publish it so that you can run a resiliency assessment on it. You can then use recommendations from the assessment to improve resiliency by running another assessment, comparing results, and then iterating the process until you achieve your goals for recovery time objective (RTO) and recovery point objective (RPO).
CloudformationResource: AWS::ResilienceHub::App
Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-app.html
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.ResilienceHub;
var cfnApp = new CfnApp(this, "MyCfnApp", new CfnAppProps {
AppTemplateBody = "appTemplateBody",
Name = "name",
ResourceMappings = new [] { new ResourceMappingProperty {
MappingType = "mappingType",
PhysicalResourceId = new PhysicalResourceIdProperty {
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 = new Dictionary<string, string> {
{ "tagsKey", "tags" }
}
});
Synopsis
Constructors
CfnApp(Construct, String, ICfnAppProps) | Create a new |
CfnApp(ByRefValue) | Used by jsii to construct an instance of this class from a Javascript-owned object reference |
CfnApp(DeputyBase.DeputyProps) | Used by jsii to construct an instance of this class from DeputyProps |
Properties
AppAssessmentSchedule | Assessment execution schedule with 'Daily' or 'Disabled' values. |
AppTemplateBody | A JSON string that provides information about your application structure. |
AttrAppArn | The Amazon Resource Name (ARN) of the app. |
CFN_RESOURCE_TYPE_NAME | The CloudFormation resource type name for this resource class. |
CfnProperties | |
Description | The optional description for an app. |
Name | The name for the application. |
ResiliencyPolicyArn | The Amazon Resource Name (ARN) of the resiliency policy. |
ResourceMappings | An array of ResourceMapping objects. |
Tags | The tags assigned to the resource. |
Methods
Inspect(TreeInspector) | Examines the CloudFormation resource and discloses attributes. |
RenderProperties(IDictionary<String, Object>) |
Constructors
CfnApp(Construct, String, ICfnAppProps)
Create a new AWS::ResilienceHub::App
.
public CfnApp(Construct scope, string id, ICfnAppProps props)
Parameters
- scope Construct
- scope in which this resource is defined.
- id System.String
- scoped id of the resource.
- props ICfnAppProps
- resource properties.
CfnApp(ByRefValue)
Used by jsii to construct an instance of this class from a Javascript-owned object reference
protected CfnApp(ByRefValue reference)
Parameters
- reference Amazon.JSII.Runtime.Deputy.ByRefValue
The Javascript-owned object reference
CfnApp(DeputyBase.DeputyProps)
Used by jsii to construct an instance of this class from DeputyProps
protected CfnApp(DeputyBase.DeputyProps props)
Parameters
- props Amazon.JSII.Runtime.Deputy.DeputyBase.DeputyProps
The deputy props
Properties
AppAssessmentSchedule
Assessment execution schedule with 'Daily' or 'Disabled' values.
public virtual string AppAssessmentSchedule { get; set; }
Property Value
System.String
Remarks
AppTemplateBody
A JSON string that provides information about your application structure.
public virtual string AppTemplateBody { get; set; }
Property Value
System.String
Remarks
To learn more about the appTemplateBody
template, see the sample template provided in the Examples section.
The appTemplateBody
JSON string has the following structure:
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:
The logical identifier of the resource.
Type: Object
Each logicalResourceId
object includes the following fields:
The identifier of the resource.
Type: String
The name of the AWS CloudFormation stack this resource belongs to.
Type: String
The name of the resource group this resource belongs to.
Type: String
The name of the Terraform S3 state file this resource belongs to.
Type: String
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
The type of resource.
Type: string
The name of the resource.
Type: String
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>"}]}]"
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:
The name of the AppComponent.
Type: String
The type of AppComponent. For more information about the types of AppComponent, see Grouping resources in an AppComponent .
Type: String
The list of included resources that are assigned to the AppComponent.
Type: Array of strings
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>"}]}]"
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:
The logical identifier of the resource.
Type: Object
You can configure only one of the following fields:
Each logicalResourceIds
object includes the following fields:
The identifier of the resource.
Type: String
The name of the AWS CloudFormation stack this resource belongs to.
Type: String
The name of the resource group this resource belongs to.
Type: String
The name of the Terraform S3 state file this resource belongs to.
Type: String
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
The AWS Resilience Hub application version.
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>"}]}]"
AttrAppArn
The Amazon Resource Name (ARN) of the app.
public virtual string AttrAppArn { get; }
Property Value
System.String
Remarks
CloudformationAttribute: AppArn
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
public static string CFN_RESOURCE_TYPE_NAME { get; }
Property Value
System.String
CfnProperties
protected override IDictionary<string, object> CfnProperties { get; }
Property Value
System.Collections.Generic.IDictionary<System.String, System.Object>
Overrides
Description
The optional description for an app.
public virtual string Description { get; set; }
Property Value
System.String
Remarks
Name
The name for the application.
public virtual string Name { get; set; }
Property Value
System.String
Remarks
ResiliencyPolicyArn
The Amazon Resource Name (ARN) of the resiliency policy.
public virtual string ResiliencyPolicyArn { get; set; }
Property Value
System.String
Remarks
ResourceMappings
An array of ResourceMapping objects.
public virtual object ResourceMappings { get; set; }
Property Value
System.Object
Remarks
Tags
The tags assigned to the resource.
public virtual TagManager Tags { get; }
Property Value
Remarks
A tag is a label that you assign to an AWS resource. Each tag consists of a key/value pair.
Methods
Inspect(TreeInspector)
Examines the CloudFormation resource and discloses attributes.
public virtual void Inspect(TreeInspector inspector)
Parameters
- inspector TreeInspector
- tree inspector to collect and process attributes.
RenderProperties(IDictionary<String, Object>)
protected override IDictionary<string, object> RenderProperties(IDictionary<string, object> props)
Parameters
- props System.Collections.Generic.IDictionary<System.String, System.Object>
Returns
System.Collections.Generic.IDictionary<System.String, System.Object>