diff --git a/docs/resources/resiliencehub_app.md b/docs/resources/resiliencehub_app.md index a0f181e414..e384fd97fe 100644 --- a/docs/resources/resiliencehub_app.md +++ b/docs/resources/resiliencehub_app.md @@ -1,5 +1,4 @@ --- -# generated by https://github.com/hashicorp/terraform-plugin-docs page_title: "awscc_resiliencehub_app Resource - terraform-provider-awscc" subcategory: "" description: |- @@ -10,6 +9,67 @@ description: |- Resource Type Definition for AWS::ResilienceHub::App. +## Example Usage + +```terraform +resource "awscc_resiliencehub_app" "example" { + name = "example-app" + description = "This is a test application" + resiliency_policy_arn = awscc_resiliencehub_resiliency_policy.test.arn + app_template_body = jsondecode({ + resources = [{ + type = "AWS::EKS::Deployment", + logicalResourceId = { + eksSourceName = "EKS-Cluster/Deployment-Store", + identifier = "MyEKSCluster-store" + } + name = "eksdeployment", + parameters = { + tags = { + env = "dev" + } + } + }], + appComponent = [{ + id = "AppComponent-EKSDeployment-Store", + name = "AppComponent-EKSDeployment-Store", + resourceNames = [ + "eksdeployment" + ], + type = "AWS::ResilienceHub::ComputeAppComponent" + }], + excludedResources = { + logicalResourceIds = [] + }, + version = 2.0 +}) + event_subscriptions = [{ + eventType = "DriftDetected" + name = "test-app" + snsTopicArn = aws_sns_topic.test.arn + }] + app_assessment_schedule = "Daily" + permission_model = { + type = "RoleBased" + invoker_role_name = "resilience-hub-test-app-role" + } + resource_mappings = { + eks_source_name = "EKS-Cluster/Deployment-Store" + mapping_type = "EKS" + logical_resource_id = "MyEKSCluster-store" + physical_resource_id = { + aws_account_id = "11222333344" + aws_region = "us-west-2" + identifier = "arn:aws:eks:us-west-2:11222333344:cluster/EKS-Cluster/Deployment-Store" + type = "Arn" + } + } + tags = { + key = "Modified By" + value = "AWSCC" + } + } +``` diff --git a/examples/resources/awscc_resiliencehub_app/resiliencehub_app.tf b/examples/resources/awscc_resiliencehub_app/resiliencehub_app.tf new file mode 100644 index 0000000000..c9cf53ae03 --- /dev/null +++ b/examples/resources/awscc_resiliencehub_app/resiliencehub_app.tf @@ -0,0 +1,57 @@ +resource "awscc_resiliencehub_app" "example" { + name = "example-app" + description = "This is a test application" + resiliency_policy_arn = awscc_resiliencehub_resiliency_policy.test.arn + app_template_body = jsondecode({ + resources = [{ + type = "AWS::EKS::Deployment", + logicalResourceId = { + eksSourceName = "EKS-Cluster/Deployment-Store", + identifier = "MyEKSCluster-store" + } + name = "eksdeployment", + parameters = { + tags = { + env = "dev" + } + } + }], + appComponent = [{ + id = "AppComponent-EKSDeployment-Store", + name = "AppComponent-EKSDeployment-Store", + resourceNames = [ + "eksdeployment" + ], + type = "AWS::ResilienceHub::ComputeAppComponent" + }], + excludedResources = { + logicalResourceIds = [] + }, + version = 2.0 +}) + event_subscriptions = [{ + eventType = "DriftDetected" + name = "test-app" + snsTopicArn = aws_sns_topic.test.arn + }] + app_assessment_schedule = "Daily" + permission_model = { + type = "RoleBased" + invoker_role_name = "resilience-hub-test-app-role" + } + resource_mappings = { + eks_source_name = "EKS-Cluster/Deployment-Store" + mapping_type = "EKS" + logical_resource_id = "MyEKSCluster-store" + physical_resource_id = { + aws_account_id = "11222333344" + aws_region = "us-west-2" + identifier = "arn:aws:eks:us-west-2:11222333344:cluster/EKS-Cluster/Deployment-Store" + type = "Arn" + } + } + tags = { + key = "Modified By" + value = "AWSCC" + } + } diff --git a/templates/resources/resiliencehub_app.md.tmpl b/templates/resources/resiliencehub_app.md.tmpl new file mode 100644 index 0000000000..c3fb1cb67d --- /dev/null +++ b/templates/resources/resiliencehub_app.md.tmpl @@ -0,0 +1,26 @@ +--- +page_title: "{{.Name}} {{.Type}} - {{.ProviderName}}" +subcategory: "" +description: |- +{{ .Description | plainmarkdown | trimspace | prefixlines " " }} +--- + +# {{.Name}} ({{.Type}}) + +{{ .Description | trimspace }} + +## Example Usage + +{{ tffile (printf "examples/resources/%s/resiliencehub_app.tf" .Name)}} + + +{{ .SchemaMarkdown | trimspace }} +{{- if .HasImport }} + +## Import + +Import is supported using the following syntax: + +{{ codefile "shell" .ImportFile }} + +{{- end }}