6bb636846f5427d1fbeddd343367c1ddf86bb119
Why: - The go-gitea/gitea provider stores branch-protection whitelist users/teams as plain names, but Gitea resolves them to IDs and, on read, returns them via getWhitelistEntities over the repo's readers: users ordered by user ID, teams ordered by name, and any entity without read access to the repo silently dropped. - So the read-back representation of push/merge/approval whitelists rarely matches the config list (order differs, or a whitelisted user/team that lacks repo access disappears), and tofu plans an in-place update for those branch protections on every run even with no config change. - This is the same class of provider representation churn already handled for teams in #62 (units/repositories), and it blocks a clean plan on terraform-git. Change: - Add a targeted ignore_changes on the six whitelist list attributes (push/merge/approval, users and teams) at the branch_protection module so the churn no longer triggers a spurious update, keeping every protected repo idempotent. - Leave enable_push, required_approvals, status_check_patterns and the block_merge_on_* flags managed; those round-trip cleanly and stay drift-checked.
terraform-git
Manage Gitea resources, teams, repos, and Woodpecker CI via Terraform
Description
Languages
HCL
94.7%
Makefile
5.3%