github.com/mweagle/Sparta@v1.15.0/aws/step/services_test.go (about) 1 package step 2 3 import ( 4 "testing" 5 6 spartaCF "github.com/mweagle/Sparta/aws/cloudformation" 7 gocf "github.com/mweagle/go-cloudformation" 8 ) 9 10 func TestFargateSNSServices(t *testing.T) { 11 // Make the states 12 fargateParams := FargateTaskParameters{ 13 Cluster: gocf.String("arn:aws:ecs:us-west-2:123123123123:cluster/StepFunctionsSample-ContainerTaskManagement08e32647-5862-4f61-a2a7-3443a2ef857d-ECSCluster-ZWJK3EFZ9T1H"), 14 TaskDefinition: gocf.String("arn:aws:ecs:us-west-2:123123123123:task-definition/StepFunctionsSample-ContainerTaskManagement08e32647-5862-4f61-a2a7-3443a2ef857d-ECSTaskDefinition-UFPUM96E8JOQ:1"), 15 NetworkConfiguration: &FargateNetworkConfiguration{ 16 AWSVPCConfiguration: &gocf.ECSServiceAwsVPCConfiguration{ 17 Subnets: gocf.StringList( 18 gocf.String("subnet-057bfcb4a52343473"), 19 gocf.String("subnet-0f25a21f1251ecce5"), 20 ), 21 AssignPublicIP: gocf.String("ENABLED"), 22 }, 23 }, 24 } 25 fargateState := NewFargateTaskState("Run Fargate Task", fargateParams) 26 27 snsSuccessParams := SNSTaskParameters{ 28 Message: "AWS Fargate Task started by Step Functions succeeded 42", 29 TopicArn: gocf.String("arn:aws:sns:us-west-2:123123123123:StepFunctionsSample-ContainerTaskManagement08e32647-5862-4f61-a2a7-3443a2ef857d-SNSTopic-E8U58ADXVXRL"), 30 } 31 snsSuccessState := NewSNSTaskState("Notify Success", snsSuccessParams) 32 fargateState.Next(snsSuccessState) 33 34 snsFailParams := SNSTaskParameters{ 35 Message: "AWS Fargate Task started by Step Functions failed", 36 TopicArn: gocf.String("arn:aws:sns:us-west-2:123123123123:StepFunctionsSample-ContainerTaskManagement08e32647-5862-4f61-a2a7-3443a2ef857d-SNSTopic-E8U58ADXVXRL"), 37 } 38 snsFailState := NewSNSTaskState("Notify Failure", snsFailParams) 39 fargateState.WithCatchers(NewTaskCatch( 40 snsFailState, 41 StatesAll, 42 )) 43 44 // Startup the machine. 45 stateMachineName := spartaCF.UserScopedStackName("TestStepServicesMachine") 46 startMachine := NewStateMachine(stateMachineName, fargateState) 47 testStepProvision(t, 48 nil, 49 startMachine) 50 }