
// Import existing policy
import {
  to = aws_iam_policy.s3_kafka_connect_policy
  id = "arn:aws:iam::437795906767:policy/S3-${var.bucket_name}-${var.environment}-dbt-analytics-RW"
}

data "aws_iam_policy_document" "s3_kafka_connect_policy_doc" {
  statement {
    actions = [
      "s3:PutObject*",
      "s3:List*",
      "s3:GetObject*"
    ]

    resources = [
      "arn:aws:s3:::${var.environment}-${var.bucket_name}/export_participants/*",
      "arn:aws:s3:::${var.environment}-${var.bucket_name}/export_participants",
      "arn:aws:s3:::${var.environment}-${var.bucket_name}/export_sound_recordings/*",
      "arn:aws:s3:::${var.environment}-${var.bucket_name}/export_sound_recordings",
      "arn:aws:s3:::${var.environment}-${var.bucket_name}/export_v2_participants/*",
      "arn:aws:s3:::${var.environment}-${var.bucket_name}/export_v2_participants",
      "arn:aws:s3:::${var.environment}-${var.bucket_name}/export_v2_sound_recordings/*",
      "arn:aws:s3:::${var.environment}-${var.bucket_name}/export_v2_sound_recordings",
      // Add additional prefixes as needed
      "arn:aws:s3:::${var.environment}-${var.bucket_name}/v2_participants_copy/*",
      "arn:aws:s3:::${var.environment}-${var.bucket_name}/v2_participants_copy",

    ]
  }
  statement {
    actions = [
      "s3:ListBucket"
    ]

    resources = [
      "arn:aws:s3:::${var.environment}-${var.bucket_name}"
    ]
  }
  statement {
    actions = [
      "s3:ListAllMyBuckets",
      "s3:GetBucketLocation"
    ]

    resources = [
      "*"
    ]
  }


}

resource "aws_iam_policy" "s3_kafka_connect_policy" {
  name   = "S3-${var.bucket_name}-${var.environment}-dbt-analytics-RW"
  policy = data.aws_iam_policy_document.s3_kafka_connect_policy_doc.json
}
