GeekZoneHQ / web

Software to power the Geek.Zone website and apps
http://geek.zone/web
GNU General Public License v3.0
19 stars 29 forks source link

Terraform Repo Management #473

Open jamesgeddes opened 2 years ago

jamesgeddes commented 2 years ago

What's your idea?

Use the Terraform GitHub provider to manage Geek.Zone repos as code through the GeekZoneHQ/repos repo.

Flow

  1. Users submit a PR that includes name and description
  2. PR is approved by Q
  3. On PR merge, a) standard vars are added b) terraform creates/updates repos.

Standard vars

Set the following vars for all repos.

github_branch_protection should protect the main branch.

enforce_admins = true

In summary

Those requesting a new repo should just be able to add the following to repos.tf

resource "github_repository" "example" {
  name        = "example"
  description = "My awesome codebase"
}

Impact

High

Urgency

Now

Code of Conduct

VAO11 commented 2 years ago

/mine

geekzonebotold commented 2 years ago

The issue you are trying to assign to yourself is already assigned.

jamesgeddes commented 1 year ago

@VAO11 I have completed the Terraform & Vault setup and have pushed an initial skeleton to https://github.com/GeekZoneHQ/repos/tree/feat-web473-Terraform_Repo_Management

I'd suggest picking up on that branch and fleshing everything out once you are happy on your org.