module "default_tags" {
  source             = "git@github.com:theorchard/terraform-default-tags.git//?ref=2.0.0"
  environment        = var.environment
  application_family = "devops"
  team_name          = "devops"
}

provider "aws" {
  region = var.aws_region

  default_tags {
    tags = module.default_tags.tags
  }
}

# Terraform backends cannot contain interpolations
terraform {
  backend "s3" {
    bucket  = "orcd-terraform-state"
    key     = "prod/iam/groups/encore-atmos-catalog-integration/terraform.tfstate"
    region  = "us-east-1"
    encrypt = "true"
  }
}

data "aws_iam_policy" "encore_atmos_catalog_integration_group_policy" {
  for_each = toset(local.encore_atmos_catalog_integration_policy_names)
  name     = each.value
}

resource "aws_iam_group_policy_attachment" "encore_atmos_catalog_integration_group_policy_attachment" {
  for_each   = data.aws_iam_policy.encore_atmos_catalog_integration_group_policy
  group      = module.group.iam_group_name
  policy_arn = each.value.arn
}

module "group" {
  source = "git@github.com:theorchard/terraform-iam-policies.git//modules/groups?ref=1.18.0"

  group_name = "encore-atmos-catalog-integration"
  users = [
    "mnigro",
    "mrawat",
    "rthirunavukkarasu",
    "sbanu",
    "jjeyakumar",
    "bprithiviraj",
    "kravi",
    "hsanthalingam",
    "sbalasubramaniyan",
    "ssrinivasan",
  ]
  application_families_to_access = []
}
