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

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

variable "application_family" {
  default = "kafka-data-highway"
}

variable "team_name" {
  default = "kdh"
}

variable "dd_teams" {
  default     = ["kdh"]
  description = "List of Datadog Team handles"
}

variable "os_domain_name" {
  default = "content-search"
}

variable "cluster_type" {
  default = "kc"
}

variable "connector_type" {
  default = "os-sink"
}

variable "project_connector_name" {
  default = "project"
}
variable "product_connector_name" {
  default = "product"
}
variable "track_connector_name" {
  default = "track"
}

variable "dim_release_connector_name" {
  default = "dim-release"
}

variable "dim_artist_connector_name" {
  default = "dim-artist"
}

variable "dim_isrc_connector_name" {
  default = "dim-isrc"
}

variable "dim_catalog_connector_name" {
  default = "dim-catalog"
}

variable "notification_endpoints" {
  default = "@slack-data-alerts-qa"
}

variable "escalation_notification_endpoints" {
  default = "@slack-kafka-data-highway-alerts"
}

variable "connect_bootstrap_servers" {
  default = "b-3.qa-managed-kafka-cdc-d.2kgc64.c6.kafka.us-east-1.amazonaws.com:9094,b-4.qa-managed-kafka-cdc-d.2kgc64.c6.kafka.us-east-1.amazonaws.com:9094,b-2.qa-managed-kafka-cdc-d.2kgc64.c6.kafka.us-east-1.amazonaws.com:9094,b-1.qa-managed-kafka-cdc-d.2kgc64.c6.kafka.us-east-1.amazonaws.com:9094,b-6.qa-managed-kafka-cdc-d.2kgc64.c6.kafka.us-east-1.amazonaws.com:9094,b-5.qa-managed-kafka-cdc-d.2kgc64.c6.kafka.us-east-1.amazonaws.com:9094"
}

variable "additional_tags" {
  type = map(string)
  default = {
    project = "kafka-data-highway"
  }
}


locals {
  ecr_repo_name = "${var.cluster_type}-${var.connector_type}"
  # connectors
  project_service_name        = "${var.cluster_type}-${var.connector_type}-${var.project_connector_name}"
  project_consumer_group_name = "connect-${var.environment}-${local.project_service_name}"
  project_dlq_topic_name      = "dlq.contentSearch.ossink.project"

  product_service_name        = "${var.cluster_type}-${var.connector_type}-${var.product_connector_name}"
  product_consumer_group_name = "connect-${var.environment}-${local.product_service_name}"
  product_dlq_topic_name      = "dlq.contentSearch.ossink.label"

  track_service_name          = "${var.cluster_type}-${var.connector_type}-${var.track_connector_name}"
  track_consumer_group_name   = "connect-${var.environment}-${local.track_service_name}"
  track_dlq_topic_name        = "dlq.contentSearch.ossink.track"

  dim_release_service_name   = "${var.cluster_type}-${var.connector_type}-${var.dim_release_connector_name}"
  dim_release_dlq_topic_name = "dlq.cdc.snowflakeFacts.dim_release"

  dim_artist_service_name   = "${var.cluster_type}-${var.connector_type}-${var.dim_artist_connector_name}"
  dim_artist_dlq_topic_name = "dlq.cdc.snowflakeFacts.dim_artist"
  dim_artist_topic_name     = "cdc.snowflakeFacts.dim_artist"

  dim_catalog_service_name   = "${var.cluster_type}-${var.connector_type}-${var.dim_catalog_connector_name}"
  dim_catalog_dlq_topic_name = "dlq.cdc.snowflakeFacts.dim_catalog"
  dim_catalog_topic_name     = "cdc.snowflakeFacts.dim_catalog"

  dim_isrc_service_name   = "${var.cluster_type}-${var.connector_type}-${var.dim_isrc_connector_name}"
  dim_isrc_dlq_topic_name = "dlq.cdc.snowflakeFacts.dim_isrc"
  dim_isrc_topic_name     = "cdc.snowflakeFacts.dim_isrc"

}
