alunduil / alunduil/alunduil-infrastructure

Repository collaborators are declared in Terraform and stale write access is removed

オープン
#445 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
enhancement security
主要言語
Shell
スター
0
フォーク
0
平均マージ
6時間 30分
マージ済み PR(30日)
97

説明

## Summary

Manage direct collaborators in the `github_repository` module, then remove the write-access accounts on `zfs-replicate` that have never contributed.

## Motivation

`zfs-replicate` has twelve direct collaborators with write access. One of them, `perniferuse`, has two commits; the other eleven have none:

```
moiseev Flameeyes devx velveteer albmin noellesage
matt-kempster jjalfaro9 eazeye ahajicek07 jess98
```

Write access is enough to merge a pull request. The only thing standing between those accounts and an unreviewed merge today is the `require_code_owner_review` rule on the default branch, which #444 is about to exempt Renovate from.

The module declares no collaborator resource, so none of this is visible to `terraform plan` and none of it drifts back. The lists came from `GET /repos/alunduil/zfs-replicate/collaborators` and `GET /repos/alunduil/zfs-replicate/contributors` on 2026-08-25.

## Scope

- Add `github_repository_collaborators` to `terraform/modules/github_repository`, with a variable for the set and an empty default. That resource manages the whole list, so an undeclared collaborator is removed on apply.
- Check every other managed repository for the same drift before applying, and record what is found.
- Decide whether `perniferuse` keeps access.

## Out of scope

The ruleset and automerge changes in #444. Organisation-level or team-level access, of which there is none here.

## Acceptance criteria

- [ ] The module declares collaborators, and a collaborator added outside Terraform is removed on the next apply
- [ ] The eleven zero-commit write accounts no longer have access to `zfs-replicate`
- [ ] The decision on `perniferuse` is recorded here
- [ ] Every other managed repository is checked for the same drift and the findings recorded
- [ ] `terraform plan` is clean after the apply

## Additional context

- #444 exempts Renovate from the review rule that these accounts are otherwise gated by, which is what surfaced them.

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。