locals {
  infra_admin_secrets_name_prefix = "infra/administration"
  infra_admin_secrets = [
    "ANSIBLE_VAULT_PASSWORD",
    "APPLEID_CREDENTIALS",
    "DOCDB_DEV_MASTER_CREDENTIALS",
    "NAMECHEAP_ACCOUNT_CREDENTIALS",
    "SONARQUBE_ADMINISTRATOR_PASSWORD",
    "SPOTIFY_DEVELOPER_ACCOUNT_CREDENTIALS",
    "TERRAFORM_DATADOG_API_KEY",
    "TERRAFORM_DATADOG_APP_KEY",
  ]
}

resource "aws_secretsmanager_secret" "infra_admin_secrets" {
  for_each = toset(local.infra_admin_secrets)

  name       = "${local.infra_admin_secrets_name_prefix}/${each.value}"
  kms_key_id = aws_kms_key.admin_only_kms_key.id

  tags = merge(
    local.common_tags,
    {
      project                  = "Infrastructure",
      service                  = "Secrets Manager",
      plat_env_project_service = "${local.aggregated_tag}_SCRT"
    }
  )
}


locals {
  infra_secrets_name_prefix = "infra/prod"
  infra_secrets = [
    "DD_API_KEY",
    "snowflake_prod",
    "snowflake_dev",
  ]
}

resource "aws_secretsmanager_secret" "infra_secrets" {
  for_each = toset(local.infra_secrets)

  name       = "${local.infra_secrets_name_prefix}/${each.value}"
  kms_key_id = module.kms_secrets_manager.general_key.id

  tags = merge(
    local.common_tags,
    {
      project                  = "Infrastructure",
      service                  = "Secrets Manager",
      plat_env_project_service = "${local.aggregated_tag}_SCRT"
    }
  )
}
