This repository automates the provisioning and management of GitHub repositories and teams. It provides Terraform modules for defining repositories, teams, and applications, enabling version-controlled, scalable management of collaborative projects or products.
- Create new folder in
terraform-scripts -> productsfor your product - Add module below to
terraform-scripts/main.tf
module "your_product_name" {
source = "./products/your_product_folder"
}
- Copy wished modules of
./example-product.mdto your new product folder - Create Merge request for your changes and check if
terraform planis successful - Merge your request
terraform applywill be executed and your changes will be provisioned
Initialize this repository check for changes and apply:
terraform init
terraform plan
terraform apply
In order to run the terraform scripts you need to set GITHUB_TOKEN as env vars locally
To obtain your GitHub token go to:
- Profile → Developer Settings → Personal access tokens (classic)
- Use
export GITHUB_TOKEN=your_token
Organization → Settings → Security → Secrets and variables