AWSTemplateFormatVersion: "2010-09-09" Description: Amazon Pinpoint Segment Email Campaign Creation (uksb-1s5jluehm). Metadata: Version: 0.0.3 AWS::CloudFormation::Interface: ParameterGroups: - Label: default: Pinpoint configuration Parameters: - PinpointProjectId - EmailFromAddress - Label: default: Other configuration Parameters: - ResourceTags - Environment ParameterLabels: PinpointProjectId: default: Pinpoint ProjectId EmailFromAddress: default: Verified email address ResourceTags: default: Resource Tags Environment: deafult: Infrastructure Environment Parameters: PinpointProjectId: Description: Amazon Pinpoint Project ID Type: String EmailFromAddress: Description: Type the email that you would like the campaign email to be sent from. This email address needs to be validated first. Type: String ResourceTags: Description: Tag resources, which can help you identify and categorize them. For example project or application name e.g. MyAwesomeApp. Type: String Default: MyApp Environment: Description: The type of environment to tag your infrastructure with. You can specify DEV (development), TEST (test), or PROD (production). Type: String AllowedValues: - DEV - TEST - PROD Default: DEV Resources: LayerVersionStack: Type: AWS::CloudFormation::Stack Properties: TemplateURL: layers.template Tags: - Key: Project Value: !Ref ResourceTags - Key: Environment Value: !Ref Environment LamdasStack: Type: AWS::CloudFormation::Stack Properties: TemplateURL: lambdas.template Parameters: Boto3Layer: !GetAtt LayerVersionStack.Outputs.Boto3Layer PinpointProjectId: !Ref PinpointProjectId EmailFromAddress: !Ref EmailFromAddress Tags: - Key: Project Value: !Ref ResourceTags - Key: Environment Value: !Ref Environment DynamoDbStack: Type: AWS::CloudFormation::Stack Properties: TemplateURL: dynamodb.template Parameters: Boto3Layer: !GetAtt LayerVersionStack.Outputs.Boto3Layer Tags: - Key: Project Value: !Ref ResourceTags - Key: Environment Value: !Ref Environment StepFunctionsStack: Type: AWS::CloudFormation::Stack Properties: TemplateURL: step-functions.template Parameters: PinpointSegmentCreate: !GetAtt LamdasStack.Outputs.PinpointSegmentCreate PinpointSegmentStatus: !GetAtt LamdasStack.Outputs.PinpointSegmentStatus PinpointSegmentDelete: !GetAtt LamdasStack.Outputs.PinpointSegmentDelete PinpointCampaignCreate: !GetAtt LamdasStack.Outputs.PinpointCampaignCreate PinpointCampaignStatus: !GetAtt LamdasStack.Outputs.PinpointCampaignStatus PinpointCampaigtDelete: !GetAtt LamdasStack.Outputs.PinpointCampaigtDelete DynamoDBLogging: !GetAtt DynamoDbStack.Outputs.DynamoDBLogging Tags: - Key: Project Value: !Ref ResourceTags - Key: Environment Value: !Ref Environment Outputs: SegmentCampaignStateMachineArn: Value: !GetAtt StepFunctionsStack.Outputs.SegmentCampaignStateMachineArn