@@ -25,32 +25,26 @@ data "local_file" "users" {
2525 filename = " ${ path . module } /users.json"
2626}
2727
28- locals {
29- users = jsondecode (data. local_file . users . content )
30- }
31-
3228data "local_file" "teams" {
3329 filename = " ${ path . module } /teams.json"
3430}
3531
36- locals {
37- teams = jsondecode (data. local_file . teams . content )
38- }
3932data "local_file" "repos" {
4033 filename = " ${ path . module } /repos.json"
4134}
4235
43- locals {
44- repos = jsondecode (data. local_file . repos . content )
45- }
4636data "local_file" "repo_permissions" {
4737 filename = " ${ path . module } /repo_permissions.json"
4838}
4939
5040locals {
41+ users = jsondecode (data. local_file . users . content )
42+ teams = jsondecode (data. local_file . teams . content )
43+ repos = jsondecode (data. local_file . repos . content )
5144 repo_permissions = jsondecode (data. local_file . repo_permissions . content )
5245}
5346
47+
5448
5549resource "github_organization_settings" "org_settings" {
5650 billing_email = " devkor.apply@gmail.com"
@@ -130,20 +124,32 @@ resource "github_team_repository" "team_repos" {
130124}
131125
132126
127+ resource "github_branch" "main" {
128+ for_each = { for repo in local . repos : repo . name => repo }
129+
130+ repository = each. value . name
131+ branch = " main"
132+ }
133+
134+ resource "github_branch_default" "default" {
135+ for_each = { for repo in local . repos : repo . name => repo }
136+
137+ repository = each. value . name
138+ branch = " main"
139+ }
140+
133141# main branch must have Reviews
134- resource "github_organization_ruleset " "review_ruleset" {
135- name = " restrict-repo-deletion "
142+ resource "github_repository_ruleset " "review_ruleset" {
143+ name = " require_reviews "
136144 target = " branch"
145+ for_each = { for repo in local . repos : repo . name => repo }
137146
147+ repository = each. value . name
138148 enforcement = " active"
139149
140150 conditions {
141151 ref_name {
142- include = [ " main" , " deploy" ]
143- exclude = []
144- }
145- repository_name {
146- include = [" ~ALL" ]
152+ include = [ " ~DEFAULT_BRANCH" ]
147153 exclude = []
148154 }
149155 }
0 commit comments