This repository has been archived by the owner on Oct 19, 2021. It is now read-only.
generated from beyondstorage/go-service-example
-
Notifications
You must be signed in to change notification settings - Fork 2
Allow GCS client to use credentials from the environment if needed #58
Merged
Merged
Changes from all commits
Commits
Show all changes
5 commits
Select commit
Hold shift + click to select a range
07db189
Allow GCS client to use credentials from the environment if needed.
cmaster11 f8d8c7d
Fix typo
cmaster11 6a0954b
ran make build
cmaster11 3d5d832
Directly use `google.FindDefaultCredentials` for `env` credentials me…
cmaster11 e42ff28
go.mod
cmaster11 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need to support both env and other ways.
How about using
google.FindDefaultCredentials
instead?ref: https://pkg.go.dev/golang.org/x/oauth2/google#FindDefaultCredentials
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FindDefaultCredentials
gets called automatically by the GCS client if no credentials are provided (e.g. if you don't use theWithCredentialsJSON
).So, if you pass
env
as credential type, the client will just fetch them all at runtime.This happens here: https://github.com/googleapis/google-api-go-client/blob/master/internal/creds.go#L50
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep, I know about this logic here.
But I don't want to depend on this behavior. I prefer to control them by ourselves.
base64
orfile
, it's OK, read them and useWithCredentialsJSON
to construct the client.env
, we useFindDefaultCredentials
to read default credentials from the env.Everything is clear, no need to read the code provided by deps.
What do you think?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Absolutely got your point :) I cleaned up the code