c87b3ac471
Manage Gitea resources via Terraform/Terragrunt with YAML-driven config. Resources managed: - Organisation (unkin) - 28 repositories with settings - 6 teams with members - 13 branch protection rules - 9 Woodpecker CI repo activations - Deploy key module (ready, no keys yet) Config structure: config/<service>/<org>/<type>/<object>.yaml Consul backend for state, Vault for auth tokens.
40 lines
837 B
HCL
40 lines
837 B
HCL
generate "backend" {
|
|
path = "backend.tf"
|
|
if_exists = "overwrite"
|
|
contents = <<EOF
|
|
provider "gitea" {
|
|
base_url = "https://git.unkin.net"
|
|
cacert_file = "/etc/pki/tls/certs/ca-bundle.crt"
|
|
}
|
|
|
|
provider "woodpecker" {
|
|
server = "https://ci.k8s.syd1.au.unkin.net"
|
|
}
|
|
|
|
terraform {
|
|
backend "consul" {
|
|
address = "https://consul.service.consul"
|
|
path = "infra/terraform/git/${path_relative_to_include()}/state"
|
|
scheme = "https"
|
|
lock = true
|
|
ca_file = "/etc/pki/tls/certs/ca-bundle.crt"
|
|
}
|
|
required_version = ">= 1.10"
|
|
required_providers {
|
|
gitea = {
|
|
source = "go-gitea/gitea"
|
|
version = "0.7.0"
|
|
}
|
|
woodpecker = {
|
|
source = "Kichiyaki/woodpecker"
|
|
version = "0.5.0"
|
|
}
|
|
consul = {
|
|
source = "hashicorp/consul"
|
|
version = "2.23.0"
|
|
}
|
|
}
|
|
}
|
|
EOF
|
|
}
|