Mirrors the addition in JMR-dev/gh-repo-bootstrap. Solo-maintainer configuration so PRs can be merged without a second approver. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
57 lines
1.4 KiB
Terraform
57 lines
1.4 KiB
Terraform
variable "repo_owner" {
|
|
description = "GitHub user or organization that owns the repository."
|
|
type = string
|
|
}
|
|
|
|
variable "repo_name" {
|
|
description = "Repository name (without owner prefix)."
|
|
type = string
|
|
}
|
|
|
|
variable "default_branch" {
|
|
description = "Branch protected by the ruleset."
|
|
type = string
|
|
default = "main"
|
|
}
|
|
|
|
variable "required_reviews" {
|
|
description = "Number of required approving reviews on PRs targeting the default branch."
|
|
type = number
|
|
default = 1
|
|
}
|
|
|
|
variable "require_signed_commits" {
|
|
description = "Require signed commits on the protected branch."
|
|
type = bool
|
|
default = false
|
|
}
|
|
|
|
variable "environments" {
|
|
description = "List of GitHub deployment environments to ensure exist."
|
|
type = list(string)
|
|
default = []
|
|
}
|
|
|
|
variable "ruleset_name" {
|
|
description = "Name to give the branch protection ruleset."
|
|
type = string
|
|
default = "default-branch-protection"
|
|
}
|
|
|
|
variable "bypass_actors" {
|
|
description = <<-EOT
|
|
Actors permitted to bypass the ruleset. Each entry needs:
|
|
- actor_id: numeric ID (for built-in repo roles: 1=read, 2=triage,
|
|
3=write, 4=maintain, 5=admin)
|
|
- actor_type: one of RepositoryRole, Team, Integration,
|
|
OrganizationAdmin, DeployKey
|
|
- bypass_mode: "always" or "pull_request"
|
|
EOT
|
|
type = list(object({
|
|
actor_id = number
|
|
actor_type = string
|
|
bypass_mode = string
|
|
}))
|
|
default = []
|
|
}
|