-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Description
Client
storage, spanner, and bigtable
Environment
any
Code and Dependencies
go get -u cloud.google.com/go/storage
Summary
Updating dependencies via go get fails with the following:
$ go get -u cloud.google.com/go/storage
go: cloud.google.com/go/storage imports
google.golang.org/grpc/xds/googledirectpath imports
google.golang.org/grpc/internal/xds/bootstrap imports
github.com/envoyproxy/go-control-plane/envoy/config/core/v3: ambiguous import: found package github.com/envoyproxy/go-control-plane/envoy/config/core/v3 in multiple modules:
github.com/envoyproxy/go-control-plane v0.13.1 (/Users/6004148/.local/share/go/pkg/mod/github.com/envoyproxy/go-control-plane@v0.13.1/envoy/config/core/v3)
github.com/envoyproxy/go-control-plane/envoy v1.32.2 (/Users/6004148/.local/share/go/pkg/mod/github.com/envoyproxy/go-control-plane/envoy@v1.32.2/config/core/v3)
Bigtable and spanner modules also have github.com/envoyproxy/go-control-plane as an indirect dependency and so also fail for the same reason.
This was caused by envoyproxy/go-control-plane#714 which split the module into submodules. This was released today in https://github.com/envoyproxy/go-control-plane/releases/tag/envoy%2Fv1.32.2 . An issue has been filed on the repo here: envoyproxy/go-control-plane#1074
Workaround
The bad release can be excluded from your go.mod as follows:
go mod edit --exclude=github.com/envoyproxy/go-control-plane@v0.13.2
This should unblock things for the immediate term.
We will need the issue to be fixed in envoyproxy/go-control-plane, and then we'll do a new release of the affected modules in google-cloud-go in order to fully resolve the issue.