Add IAM Relationships/Update gRPC stubs to vendored client
What does this MR do and why?
Regenerates the vendored gitlab-iam-grpc client to include the relationships and update services from the IAM repo (gitlab-org/auth/iam). These stubs are needed to call the IAM Relationships API write path (update.v1.UpdateService.WriteRelationships).
It also extends scripts/update-iam-grpc-client.sh so these services are generated by the script rather than hand-added: the script now preprocesses each proto to strip the buf.validate options (enforced server-side, ignored by generated Ruby) and to flatten the repo-root-relative proto/ import prefix to match the vendored flat layout. The committed auth stubs are unchanged.
Infrastructure split out of the Artifact Registry role-assignment work (!241285 (merged)), which consumes these stubs.
References
- Consumed by: !241285 (merged) (GraphQL mutation to assign Artifact Registry roles)
- Task: #602144
- Source protos: gitlab-org/auth/iam (
proto/relationships,proto/update)
Screenshots or screen recordings
Not applicable — vendored gRPC client stubs.
How to set up and validate locally
- Clone the IAM repo:
git clone https://gitlab.com/gitlab-org/auth/iam.git - Regenerate:
scripts/update-iam-grpc-client.sh <path-to-iam-repo> - Confirm the stubs load:
require 'update/update_services_pb' Update::V1::UpdateService::Stub Relationships::V1::RelationshipInput
MR acceptance checklist
Evaluate this MR against the MR acceptance checklist.