data "aws_secretsmanager_secret" "sentry_dsn" {
  name = "${var.environment}/${var.service_name}/SENTRY_DSN"
}

data "aws_secretsmanager_secret_version" "sentry_dsn" {
  secret_id = data.aws_secretsmanager_secret.sentry_dsn.id
}

module "daemon_switchboard_consumer_environment" {
  source = "git@github.com:theorchard/terraform-fargate.git//?ref=1.7.5"

  environment                      = var.environment
  service_name                     = var.service_name
  aws_region                       = var.aws_region
  commit_sha                       = "latest"
  container_port                   = "9000"
  task_type                        = "worker"
  desired_task_count               = 0
  task_cpu                         = 512
  task_memory                      = 1024
  maximum_capacity                 = 1
  minimum_capacity                 = 0
  vpc_id                           = data.aws_vpc.graphql.id
  iam_managed_policy_attachments = [
    aws_iam_policy.consumer_secrets_manager_policy.arn,
    aws_iam_policy.consumer_assume_role_policy.arn,
    "arn:aws:iam::437795906767:policy/SES-SendOnly",
  ]
  fargate_service_subnets = data.aws_subnet_ids.graphql.ids

  environment_variables = [
    {
      Environment = var.environment
    },
    {
      DATADOG_ENV = "${var.environment}-${var.service_name}"
    },
    {
      DD_LOGS_INJECTION = "true"
    },
    {
      LOGGER_DSN = "https://${var.environment}-fluentd-applications.theorchard.io:8888/application"
    },
    {
      SENTRY_DSN = data.aws_secretsmanager_secret_version.sentry_dsn.secret_string
    },
    {
      KAFKA_ARN = "arn:aws:kafka:us-east-1:019963779799:cluster/sme-switchboard-msk-prod/277f8d91-ecd8-4662-b638-d9d2e3819279-6"
    },
    {
      GRAPHQL_URL = "https://graphql-switchboard.theorchard.io/graphql-product"
    },
    {
      SWITCHBOARD_GRAPHQL_URL = "https://internal-api.switchboard.fm/"
    },
    {
      SWITCHBOARD_ROLE_ARN = "arn:aws:iam::019963779799:role/ProdOrchardAccess"
    },
    {
      SWITCHBOARD_SECRET_ARN = "arn:aws:secretsmanager:us-east-1:019963779799:secret:prod-system-jwt-secret-dIJkPs"
    },
    {
      RECIPIENT_EMAIL_ADDRESSES = var.recipient_email_addresses
    },
    {
      FROM_EMAIL_ADDRESS = var.from_email_address
    },
    {
      DDEX_INGEST_EVENTS_EMAIL_GROUP = var.ddex_ingest_events_email_group
    }
  ]
}
