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

variable "environment" {
  description = "Available values:  dev, qa, prod."
  default     = "qa"
}

variable "service_name" {
  default = "ows-text-campaigns"
}

variable "application_family" {
  default = "fansifter"
}

variable "team_name" {
  type    = string
  default = "fansifter"
}

variable "postgres_host" {
  default = "qa-ows-dmp.cluster-cb22xqmk0y0q.us-east-1.rds.amazonaws.com"
}

variable "postgres_port" {
  default = "5432"
}

variable "postgres_name" {
  default = "ows_dmp"
}

variable "postgres_username" {
  default = "ows_dmp_user"
}

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_OWS_WH"
}

variable "snowflake_role" {
  default = "QA_OWS_TEXT_CAMPAIGNS"
}

variable "snowflake_user" {
  default = "QA_OWS_TEXT_CAMPAIGNS"
}

variable "twilio_account_sid" {
  description = "Twilio main Account SID"
  default     = "AC5dca1ac47da84d37563427bbd6e22d86"
}

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

variable "assets_s3_bucket_name" {
  default = "fansifter-text-campaigns-assets"
}

variable "assets_cloudfront_subdomain" {
  default = "text-campaigns-assets"
}

variable "bucket_cors_allowed_write_origins" {
  default = [
    "http://localhost:8080",
    "https://frontend-audience-development-*.pullrequests.qaorch.com",
    "https://audience.qaorch.com",
    "https://fansifter.qaorch.com",
    "https://fansifter.qapdesuite.com",
    "https://fansifter.qaawal.com",
  ]
}

variable "msk_cluster_name" {
  description = "MSK Cluster name, without environment prefix"
  default     = "managed-kafka-fansifter"
}

variable "dynamodb_fan_states_tablename" {
  default = "text_campaigns_fan_states"
}

variable "notification_endpoints" {
  description = "Endpoints for alerts. Can be email, slack, pagerduty, etc"
  type        = string
  default     = "@slack-fansifter-alerts"
}

variable "escalation_notification_endpoints" {
  description = "Endpoints for escalation alerts. Can be email, slack, pagerduty, etc"
  type        = string
  default     = "@slack-fansifter-alerts"
}

locals {
  cloudfront_logs_bucket            = "${var.environment}-fansifter-cloudfront-logs.s3.amazonaws.com"
  assets_cloudfront_domain          = "${var.assets_cloudfront_subdomain}.${var.environment}-fansifter.theorchard.io"
  preference_center_secret_key_name = "${var.environment}/ows-preference-center/SECRET_KEY"
}
