provider "aws" {
  region = var.aws_region
}

terraform {
  backend "s3" {
    bucket  = "dev-orcd-terraform-state"
    key     = "dev/audience/lambda-fansifter-team-internal/terraform.tfstate"
    region  = "us-east-1"
    encrypt = "true"
  }
}

module "lambda_fansifter_team_internal" {
  source             = "git@github.com:theorchard/terraform-lambda.git//?ref=3.1.6"
  lambda_name        = var.lambda_name
  lambda_description = "Lambda for fansifter-team-internal Slack workflows."
  environment        = var.environment
  application_family = var.application_family

  vpc_enabled = false
  dlq_enabled = false

  cloudwatch_event_enabled  = true
  cloudwatch_event_schedule = var.lambda_invocation_schedule

  lambda_function_environment_variables = {
    ENVIRONMENT                 = var.environment
    SLACK_API_TOKEN_SECRET_NAME = "SLACK_API_TOKEN"
  }
}

module "lambda_secrets" {
  source   = "git@github.com:theorchard/terraform-secrets-manager.git//?ref=1.3.1"
  for_each = toset(var.secrets_manager_secret_names)

  application_family = var.application_family
  environment        = var.environment
  service_name       = var.lambda_name
  secret_name        = each.value
}
