module "hot_hits_history_bucket" {
  source = "../../../modules/s3/private_bucket_with_logs_aes256"

  bucket_name        = "${local.name_prefix}-hot-hits-history"
  logs_bucket_id     = data.aws_s3_bucket.logs.id
  logs_object_prefix = "${local.name_prefix}/hot-hits-history/"
  default_policy     = true

  common_tags = merge(
    local.common_tags,
    {
      project                  = "Data",
      service                  = "S3",
      plat_env_project_service = "${local.aggregated_tag}_DATA_S3"
    }
  )
}

module "update_playlist_digest_bucket" {
  source = "../../../modules/s3/private_bucket_with_logs_aes256"

  bucket_name        = "${local.name_prefix}-update-playlist-digest"
  logs_bucket_id     = data.aws_s3_bucket.logs.id
  logs_object_prefix = "${local.name_prefix}/update-playlist-digest/"
  default_policy     = true

  common_tags = merge(
    local.common_tags,
    {
      project                  = "Data",
      service                  = "S3",
      plat_env_project_service = "${local.aggregated_tag}_DATA_S3"
    }
  )
}

module "load_playlists_tracks_history_bucket" {
  source = "../../../modules/s3/private_bucket_with_logs_aes256_v2"

  bucket_name        = "${local.name_prefix}-load-playlists-tracks-history"
  logs_bucket_id     = data.aws_s3_bucket.logs.id
  logs_object_prefix = "${local.name_prefix}/load-playlists-tracks-history/"
  default_policy     = false

  common_tags = merge(
    local.common_tags,
    {
      project                  = "Data",
      service                  = "S3",
      plat_env_project_service = "${local.aggregated_tag}_DATA_S3"
    }
  )
}

module "load_playlists_tracks_history_bucket_external_access" {
  source = "../../../modules/s3/bucket_policies/external_access_multibucket"

  full_access_arns = [
    "arn:aws:iam::${module.aws_account_list.accounts["gdb-apollo-prod"]}:role/lambda-prod-agg-n-copy-data-from-sf-to-mysql",
    "arn:aws:iam::${module.aws_account_list.accounts["gdb-delphi-prod"]}:role/prod-delphi-apollo_snowflake_role",
  ]

  bucket_list = [
    module.load_playlists_tracks_history_bucket.bucket.id
  ]
}

module "demographic_and_skip_and_save_bkp" {
  source = "../../../modules/s3/private_bucket_with_logs_aes256"

  bucket_name        = "${local.name_prefix}-demographic-and-skip-and-save-bkp"
  logs_bucket_id     = data.aws_s3_bucket.logs.id
  logs_object_prefix = "${local.name_prefix}/demographic-and-skip-and-save-bkp/"
  deep_archive_days  = 14
  default_policy     = true

  common_tags = merge(
    local.common_tags,
    {
      project                  = "Data",
      service                  = "S3",
      plat_env_project_service = "${local.aggregated_tag}_DATA_S3"
    }
  )
}
