diff --git a/infra/trigger.tf b/infra/trigger.tf new file mode 100644 index 0000000..da9c9e6 --- /dev/null +++ b/infra/trigger.tf @@ -0,0 +1,17 @@ +resource "aws_cloudwatch_event_rule" "every_minute" { + name = "${var.lambda_function_name}-every-minute" + schedule_expression = "rate(1 minute)" +} + +resource "aws_cloudwatch_event_target" "invoke_lambda" { + rule = aws_cloudwatch_event_rule.every_minute.name + arn = aws_lambda_function.lambda.arn +} + +resource "aws_lambda_permission" "allow_cloudwatch" { + statement_id = "AllowExecutionFromCloudWatch" + action = "lambda:InvokeFunction" + function_name = var.lambda_function_name + principal = "events.amazonaws.com" + source_arn = aws_cloudwatch_event_rule.every_minute.arn +}