module "stepfunctions" { source = "../modules/stepfunctions" providers = { aws = aws.aws } name = "AWSStepFunctions-g3" role_arn = "arn:aws:iam::${data.aws_caller_identity.current.account_id}:role/LabRole" definition = <<EOF { "StartAt": "GetFromMLApi", "States": { "GetFromMLApi": { "Type": "Task", "Resource": "${module.lambda["lambdaGET"].function_arn}", "Next": "UpdateDynamoDB", "Catch": [ { "ErrorEquals": [ "States.ALL" ], "Next": "SendError" } ] }, "UpdateDynamoDB": { "Type": "Task", "Resource": "${module.lambda["lambdaUpdate"].function_arn}", "Next": "SendEmail", "Catch": [ { "ErrorEquals": [ "States.ALL" ], "Next": "SendError" } ] }, "SendEmail": { "Type": "Task", "Resource": "${module.lambda["lambdaSNS"].function_arn}", "End": true, "Catch": [ { "ErrorEquals": [ "States.ALL" ], "Next": "SendError" } ] }, "SendError": { "Type": "Task", "Resource": "${module.lambda["lambdaError"].function_arn}", "Next": "ErrorWorkflow" }, "ErrorWorkflow": { "Type": "Fail" } } } EOF type = "standard" }