variable "aws_region" {
  description = "AWS region"
  default     = "us-east-1"
}

variable "environment" {
  default = "qa"
}

variable "service_name" {
  default = "automated-emails-sender"
}

variable "application_family" {
  default = "fansifter"
}

variable "team_name" {
  default = "fansifter"
}

variable "lambda_name" {
  default = "lambda-audience-automated-emails-sender"
}

variable "lambda_timeout" {
  default = 5 * 60
}

variable "lambda_reserved_concurrency" {
  default = 40
}

variable "lambda_memory_size" {
  default = 1024
}

variable "snowflake_account" {
  default = "delphi.us-east-1"
}

variable "snowflake_database" {
  default = "FANSIFTER_APP_REPORTING"
}

variable "snowflake_schema" {
  default = "QA"
}

variable "snowflake_warehouse" {
  default = "QA_ETL_WH"
}

variable "snowflake_role" {
  default = "QA_LAMBDA_AUDIENCE"
}

variable "snowflake_user" {
  default = "QA_LAMBDA_AUDIENCE"
}

variable "secrets_manager_secret_names" {
  description = "List of secrets manager secrets to create."
  type        = list(string)
  default = [
    "SNOWFLAKE_PRIVATE_KEY",
    "SNOWFLAKE_KEY_PASSPHRASE",
  ]
}

variable "stripo_base_url" {
  default = "https://qa-stripo-api-gateway.qa-fansifter.theorchard.io"
}

variable "stripo_client_id" {
  default = "r7v2iwdo7rv4g7fxn7vggrkzppzts5682"
}

variable "preference_center_url" {
  default = "https://qa-preferences.theorchard.io"
}

variable "unsubscribe_host" {
  default = "unsub.email.qa-fansifter.theorchard.io"
}

variable "reply_to_domains" {
  type        = map(string)
  description = "Domains for the Reply-To header added to emails"
  default = {
    sme        = "reply.email.qa-fansifter.theorchard.io"
    theorchard = "reply.email.qa-fansifter.theorchard.io"
    awal       = "reply.email.qa-fansifter.theorchard.io"
  }
}

variable "automated_emails_bucket_name" {
  default = "automated-emails-fan-events"
}

locals {
  iam_role_name                        = "${var.environment}-${var.service_name}-snowflake-integration-role"
  snowflake_private_key_secret_name    = "${var.environment}/${var.lambda_name}/SNOWFLAKE_PRIVATE_KEY"
  snowflake_key_passphrase_secret_name = "${var.environment}/${var.lambda_name}/SNOWFLAKE_KEY_PASSPHRASE"
  sendgrid_sme_api_key_secret_name     = "${var.environment}/ows-email-campaigns/SENDGRID_API_KEY"
  sendgrid_orchard_api_key_secret_name = "${var.environment}/ows-email-campaigns/SENDGRID_API_KEY"
  sendgrid_awal_api_key_secret_name    = "${var.environment}/ows-email-campaigns/SENDGRID_API_KEY"
  stripo_client_secret_name            = "${var.environment}/ows-email-campaigns/STRIPO_CLIENT_SECRET"
  preference_center_secret_key_name    = "${var.environment}/ows-preference-center/SECRET_KEY"
  reply_to_secret_key_name             = "${var.environment}/ows-email-campaigns/REPLY_TO_SECRET_KEY"
}
