github.com/oinume/lekcije@v0.0.0-20231017100347-5b4c5eb6ab24/backend/infrastructure/gcp/client.go (about) 1 package gcp 2 3 import ( 4 "encoding/base64" 5 6 "github.com/morikuni/failure" 7 "google.golang.org/api/option" 8 ) 9 10 type Cleaner func() 11 12 func WithCredentialsJSONFromBase64String(value string) (option.ClientOption, error) { 13 b, err := base64.StdEncoding.DecodeString(value) 14 if err != nil { 15 return nil, failure.Wrap(err, failure.Message("failed to decode base64 string")) 16 } 17 return option.WithCredentialsJSON(b), nil 18 }