Skip to content

blob/gcsblob: add support for gRPC client #3615

@simonbos

Description

@simonbos

Is your feature request related to a problem? Please describe.

No.

Describe the solution you'd like

cloud.google.com/go/storage supports the Cloud Storage gRPC API (docs). A major advantage is that it can use Direct Connectivity.

I would like to have be able to use the blob abstraction while still being able to use the gRPC API. I am not sure what the best way to achieve this is. Some options include:

  1. Adding UseGRPCClient to the Options which switches the client from HTTP to gRPC. This might be weird because the OpenBucket contains a gcp.HTTPClient.
  2. Adding an OpenBucketUsingGrpc as an additional function in gocloud.dev/blob/gcsblob, which takes a grpc.ClientConn. Additionally add a Dial function similar to the one in gcppubsub (see Dial).

Describe alternatives you've considered

I don't think there is any alternative except using cloud.google.com/go/storage directly (I might be mistaken).

Additional context

NA.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions