module "data_and_analytics_crm_team_role" {
  source               = "../../../modules/iam/roles/cross_account_role"
  name                 = "dev_data_and_analytics_crm_team_role"
  common_tags          = local.common_tags
  require_mfa          = true
  max_session_duration = 43200
  principal_list       = [format("arn:aws:iam::%s:root", module.aws_accounts_list.accounts["gdb-infra-dev"])]
  policies_list = [
    module.iam_map.s3_partnermails_ro.arn,
    module.iam_policy_s3_incoming_rw.policy.arn,
  ]
}

module "iam_policy_s3_incoming_rw" {
  source              = "../../../modules/iam/policies/s3/bucket_custom_paths"
  name                = "s3_incoming_rw"
  name_prefix         = local.name_prefix
  enable_list_buckets = true
  enable_write_mode   = true
  bucket_access_maps = [
    { bucketName = "dev-delphi-incoming", paths = ["appreciationengine/smf_mapping"] },
    { bucketName = "qa-delphi-incoming", paths = ["appreciationengine/smf_mapping"] },
    { bucketName = "stage-delphi-incoming", paths = ["appreciationengine/smf_mapping"] },
    { bucketName = "dev-delphi-incoming", paths = ["appreciationengine/smf_mcr"] },
    { bucketName = "qa-delphi-incoming", paths = ["appreciationengine/smf_mcr"] },
    { bucketName = "stage-delphi-incoming", paths = ["appreciationengine/smf_mcr"] },
    { bucketName = "dev-delphi-incoming", paths = ["appreciationengine/ae_processed_delete_requests"] },
    { bucketName = "qa-delphi-incoming", paths = ["appreciationengine/ae_processed_delete_requests"] },
    { bucketName = "stage-delphi-incoming", paths = ["appreciationengine/ae_processed_delete_requests"] },
  ]
}
