{ "AWSTemplateFormatVersion": "2010-09-09", "Description": "(SO0157) Performance Dashboard on AWS Solution Implementation v1.9.0", "Parameters": { "AdminEmail": { "Type": "String", "Description": "Email address for the admin user", "MinLength": 5 }, "ExampleLanguage": { "Type": "String", "AllowedValues": [ "english", "spanish", "portuguese" ], "Description": "Language to use for examples", "MinLength": 5 } }, "Resources": { "authStack": { "Type": "AWS::CloudFormation::Stack", "Properties": { "TemplateURL": { "Fn::Sub": "https://solutions-${AWS::Region}.s3.amazonaws.com/performance-dashboard-on-aws/v1.9.0/Auth.template" }, "TimeoutInMinutes": "60", "Parameters": { "adminEmail": { "Ref": "AdminEmail" } } } }, "backendStack": { "Type": "AWS::CloudFormation::Stack", "DependsOn": "authStack", "Properties": { "TemplateURL": { "Fn::Sub": "https://solutions-${AWS::Region}.s3.amazonaws.com/performance-dashboard-on-aws/v1.9.0/Backend.template" }, "TimeoutInMinutes": "60" } }, "lambdaEdgeStack": { "Type": "AWS::CloudFormation::Stack", "DependsOn": "backendStack", "Properties": { "TemplateURL": { "Fn::Sub": "https://solutions-${AWS::Region}.s3.amazonaws.com/performance-dashboard-on-aws/v1.9.0/LambdaEdge.template" }, "TimeoutInMinutes": "60" } }, "frontendStack": { "Type": "AWS::CloudFormation::Stack", "DependsOn": "lambdaEdgeStack", "Properties": { "TemplateURL": { "Fn::Sub": "https://solutions-${AWS::Region}.s3.amazonaws.com/performance-dashboard-on-aws/v1.9.0/Frontend.template" }, "TimeoutInMinutes": "60" } }, "opsStack": { "Type": "AWS::CloudFormation::Stack", "DependsOn": "frontendStack", "Properties": { "TemplateURL": { "Fn::Sub": "https://solutions-${AWS::Region}.s3.amazonaws.com/performance-dashboard-on-aws/v1.9.0/Ops.template" }, "TimeoutInMinutes": "60" } }, "examplesStack": { "Type": "AWS::CloudFormation::Stack", "DependsOn": "opsStack", "Properties": { "TemplateURL": { "Fn::Sub": "https://solutions-${AWS::Region}.s3.amazonaws.com/performance-dashboard-on-aws/v1.9.0/DashboardExamples.template" }, "TimeoutInMinutes": "60", "Parameters": { "exampleLanguage": { "Ref": "ExampleLanguage" } } } } }, "Outputs": { "StackRef": { "Value": { "Ref": "frontendStack" } }, "OutputFromNestedStack": { "Value": { "Fn::GetAtt": [ "frontendStack", "Outputs.CloudFrontURL" ] } } } }