Google Cloud Storage (GCS) Volumes

This page contains information on configuring a volume that is associated with a repository in Google Cloud storage.

Authorization

Authorization for the Platform to read from (and, optionally, write to) a Google Cloud storage bucket associated with a volume is provided by authenticating with a Google Cloud service account that has access to the bucket.

The pages on attaching a Google Cloud Storage volume through the visual interface and the API explain the process of configuring a volume associated with a Google Cloud storage repository in detail.

Google Cloud Storage-specific volume parameters

When making the API request to create a new volume , you must submit a service array. In the case that the volume is associated with Google Cloud storage, the values of the parameters in the service object are as follows:

Google Cloud Platform service parameterDescription of value
service.typeThis should be be set to gcs.
service.bucketThe name of the Google Cloud storage bucket.
service.root_url
default: https://www.googleapis.com
The endpoint to use when talking to Google Cloud storage.
service.prefix
default: empty
If provided, the value of this parameter will be used to modify any object key before an operation is performed on the bucket.
Even though Google Cloud Platform is not truly a folder-based store and allows for almost arbitrarily named keys, the prefix is treated as a folder name. This means that after applying the prefix to the name of the object the resulting key will be normalized to conform to the standard path-based naming schema for files.
For example, if you set the prefix for a volume to "a10", and import a file with source.location set to "test.fastq" from the volume to the Platform, then the object that will be referred to by the newly-created alias will be "a10/test.fastq".
service.credentials.client_emailThe client email address for the Google Cloud service account to use for operations on this bucket.
service.credentials.private_keyThe private key for the Google Cloud service account to use for operations on this bucket.

Additional configuration

In certain situations, however, it may be necessary to set up additional configuration on the bucket itself. For details, please see the documentation on enabling cross-origin resource sharing (CORS).