-
Notifications
You must be signed in to change notification settings - Fork 64
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Google Cloud Storage Support #113
Conversation
This is awesome, thanks @wolfgangwazzlestrauss! We'll take a more detailed look, but I think I've added all the creds we need as secrets in GitHub actions. Can you add the action to authenticate to google cloud to the tests workflow: I've set the two secrets mentioned there, so I think you should also remove (I've also created a test bucket and set it as the |
* Google Cloud Storage Support (#113) * Update README and imports for Google Cloud Storage * Write Google Storage download and upload methods * Change key to blob for GSClient * Implement pass methods for GSClient * Write live tests for GSClient and GSPath * Unify GSClient methods * Add Mock Google Storage fixtures for testing * Fix Google Storage mock bucket copy_blob method * Change get_bucket method to bucket for GSClient * Update test mocks for Google Storage * Add documentation for Google Storage * Expand authentication options * Update metadata fetcher for GSPath * Add Google Cloud setup action to CI workflow * Tweaks for tests to work on Windows Co-authored-by: Macklan Weinstein <[email protected]>
Google Cloud Storage support with
GSClient
andGSPath
subclasses.Features:
GSClient
andGSPath
as subclasses ofClient
andCloudPath
respectively.gs
as an extra for pip installation with separate requirements.txt.gs_rig
test configuration and adds torig
for test suite.GSClient
andGSPath
without internet.GSClient
andGSPath
specific features.gs
is a pip extra for Google Cloud Storage support.The GitHub Actions
tests
workflow has been updated to includeGOOGLE_APPLICATION_CREDENTIALS
andLIVE_GS_BUCKET
environment variables for GitHub Secrets usage. However, it seems, from the Google Service Account Authentication documentation, that authentication cannot happen with credentials in environment variables directly. Rather the environment variableGOOGLE_APPLICATION_CREDENTIALS
must point to a JSON file with the authentication credentials. I don't know of a secure way to resolve this issue with GitHub Secrets.Resolves #25.