module "tags" {
  source = "../../../modules/tags/defaults_plat_env"

  env_prefix    = var.env_prefix
  project_group = local.project_group
}
locals {
  // Constants
  project_group = "delphi"

  name_prefix         = "${var.env_prefix}-${local.project_group}"
  account_id          = data.aws_caller_identity.current.account_id
  secrets_name_prefix = "${local.project_group}/${var.env_prefix}"
  aggregated_tag      = module.tags.aggregated_tag

  common_tags = module.tags.default_tags

  docker_image_env_tag = {
    dev   = "develop",
    qa    = "qa",
    stage = "release",
    uat   = "uat",
    prod  = "master",
  }

  db_env_vars_test = { for k, v in module.main_clone : k => { "POSTGRES_ADDRESS" = v.reader_endpoint, "POSTGRES_CLUSTER_ID" = v.cluster_id } }
  db_env_vars      = lookup(local.db_env_vars_test, "Enabled", {})
}

data "aws_caller_identity" "current" {}

module "aws_accounts_list" {
  source = "../../../modules/iam/aws_accounts_list"
}


module "api" {
  source = "../../modules/api"

  env_prefix     = var.env_prefix
  api_role_arn   = module.api_role.role.arn
  api_repo_url   = data.aws_ecr_repository.api.repository_url
  nginx_repo_url = data.aws_ecr_repository.nginx.repository_url

  api_datadog_enabled = true

  enable_execute_command = true
  init_process_enabled   = true

  api_env = local.db_env_vars
  nginx_env = {
    "ACCESS_LOG_STATUS"    = "off"
    "PROXY_CACHE_INACTIVE" = "2h"
  }

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

}
