# Terraform backends cannot contain interpolations
terraform {
  backend "s3" {
    bucket  = "orcd-terraform-state"
    key     = "prod/github/ama-backend/terraform.tfstate"
    region  = "us-east-1"
    encrypt = "true"
  }
}

module "github_repositories" {
  source                    = "git@github.com:theorchard/terraform-github.git//?ref=6.1.2"
  application_family        = "data-platform"
  repository_name           = "ama-backend"
  description               = "AMA App Backend (Managed by Terraform)"
  default_code_owner        = "data-platform"
  homepage_url              = ""
  delete_branch_on_merge    = false
  github_code_owner_reviews = true
  github_pull_teams         = []
  github_push_teams         = ["mergers"]
  archived_repository       = true
}

resource "github_branch_protection" "branch_develop_protection" {
  # checkov:skip=CKV_GIT_5:We required only one reviewer in the established workflow.
  # checkov:skip=CKV_GIT_6:We don't require Git commits to be GPG signed.

  repository_id  = module.github_repositories.github_repository_node_id
  pattern        = "develop"
  enforce_admins = true

  required_status_checks {
    strict = true
  }

  required_pull_request_reviews {
    dismiss_stale_reviews      = true
    require_code_owner_reviews = true
  }
}
