Skip to content

feat(services/gcs-grpc): add GCS gRPC service - #8153

Merged
Xuanwo merged 7 commits into
mainfrom
xuanwo/add-gcs-grpc-service
Aug 28, 2026
Merged

feat(services/gcs-grpc): add GCS gRPC service#8153
Xuanwo merged 7 commits into
mainfrom
xuanwo/add-gcs-grpc-service

Conversation

@Xuanwo

@Xuanwo Xuanwo commented Aug 26, 2026

Copy link
Copy Markdown
Member

Which issue does this PR close?

N/A. No existing issue tracks this service implementation.

Rationale for this change

Provide a standalone Google Cloud Storage gRPC service without depending on the google-cloud-storage client crate. The service uses OpenDAL existing Google credential providers and a generated Tonic client for the retained Storage v2 API surface.

What changes are included in this PR?

Add the optional opendal-service-gcs-grpc crate and register the services-gcs-grpc facade feature and gcs-grpc URI scheme. The service implements stat, read, write, delete, list, and copy operations. Writes use a finite non-resumable WriteObject stream for one-shot uploads and GCS resumable writes when OpenDAL supplies multiple writes.

Add a cropped Storage v2 proto, generated client, pinned upstream descriptor, and generator-side compatibility validation for retained methods and messages.

Add GCS gRPC behavior-test setup backed by the existing GCS test credentials.

Are there any user-facing changes?

Yes. Users can enable services-gcs-grpc and construct the service with GcsGrpc or the gcs-grpc://bucket/root URI scheme.

AI Usage Statement

AI materially assisted implementation and test drafting under human-directed design review. The contributor reviewed the submitted behavior and remains responsible for the changes and claims.

@Xuanwo
Xuanwo marked this pull request as ready for review August 26, 2026 07:51
@Xuanwo
Xuanwo requested a review from tisonkun as a code owner August 26, 2026 07:51
@dosubot dosubot Bot added size:XXL This PR changes 1000+ lines, ignoring generated files. releases-note/feat The PR implements a new feature or has a title that begins with "feat" labels Aug 26, 2026
@dosubot dosubot Bot added the lgtm This PR has been approved by a maintainer label Aug 27, 2026
@Xuanwo
Xuanwo merged commit 6e92117 into main Aug 28, 2026
146 of 147 checks passed
@Xuanwo
Xuanwo deleted the xuanwo/add-gcs-grpc-service branch August 28, 2026 05:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lgtm This PR has been approved by a maintainer releases-note/feat The PR implements a new feature or has a title that begins with "feat" size:XXL This PR changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants