# Main ECS cluster
resource "aws_ecs_cluster" "main" {
  name = "${local.name_prefix}-clu"

  setting {
    name  = "containerInsights"
    value = "enabled"
  }

  tags = merge(
    local.common_tags,
    {
      project                  = "Apps API",
      service                  = "ECS",
      plat_env_project_service = "${local.aggregated_tag}_APPA_ECS"
    }
  )
}

resource "aws_ecs_cluster_capacity_providers" "main" {
  cluster_name = aws_ecs_cluster.main.name

  capacity_providers = [
    "FARGATE",
    "FARGATE_SPOT",
  ]

  default_capacity_provider_strategy {
    capacity_provider = "FARGATE"
    weight            = 1
    base              = 1
  }
}

resource "aws_service_discovery_private_dns_namespace" "main" {
  name        = "${local.env_prefix}.${local.project_group}.local"
  description = "${local.name_prefix} internal DNS namespace."
  vpc         = module.main_vpc.vpc_id

  tags = merge(
    local.common_tags,
    {
      project                  = "Apps API",
      service                  = "Service Discovery",
      plat_env_project_service = "${local.aggregated_tag}_APPA_SD"
    }
  )
}
