Skip to content

Render GCE project IAM as additive members#2

Open
rguliyev wants to merge 2 commits into
test/update-gce-terraform-fixturesfrom
fix/gce-terraform-iam-member
Open

Render GCE project IAM as additive members#2
rguliyev wants to merge 2 commits into
test/update-gce-terraform-fixturesfrom
fix/gce-terraform-iam-member

Conversation

@rguliyev

@rguliyev rguliyev commented Jul 20, 2026

Copy link
Copy Markdown

Summary

  • render GCE service-account project grants as google_project_iam_member
  • align the Terraform target with the additive GCE API target
  • avoid taking ownership of every principal assigned to the project role
  • add a focused renderer regression and update GCE integration fixtures

This is stacked on #1 so the fork baseline integration fixtures are green first. The change is intentionally narrow and suitable for a later upstream PR.

Testing

  • go test ./upup/pkg/fi/cloudup/gcetasks
  • go test ./cmd/kops -run 'Test(MinimalGCEDNSNone|ManyAddonsGCE)$' -count=1\n- golangci-lint run ./upup/pkg/fi/cloudup/gcetasks\n- terraform fmt -check on both changed integration fixtures\n- make quick-ci\n\nThe repository-wide make verify-golangci-lint reports 34 pre-existing findings outside this change with the installed host linter; the changed package passes directly.

The API target adds a principal without owning the full role binding, but the Terraform target emitted an authoritative binding that could remove unrelated principals. Use google_project_iam_member so both targets have the same additive semantics.
@cla-bot cla-bot Bot added the cla-signed label Jul 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant