Parse Server GCS Adapter
The Parse Server Google Cloud Storage Adapter.
- [Config File](#config-file)
- [Environment Variables](#environment-variables)
- [Instance Parameters](#instance-parameters)
- Options
- Obtaining Credentials FileInstallation
npm install --save @parse/gcs-files-adapter
Usage with Parse Server
Config File
{
// Parse server options
appId: 'my_app_id',
masterKey: 'my_master_key',
// other options
filesAdapter: {
module: '@parse/gcs-files-adapter',
options: {
projectId: 'projectId',
keyFilename: '/path/to/keyfile',
bucket: 'my_bucket',
// optional:
bucketPrefix: '', // default value
directAccess: false // default value
}
}
}
Environment Variables
Set your environment variables:GCP_PROJECT_ID=projectId
GCP_KEYFILE_PATH=/path/to/keyfile
GCS_BUCKET=bucketName
And update your config / options
{
// Parse server options
appId: 'my_app_id',
masterKey: 'my_master_key',
// other options
filesAdapter: '@parse/gcs-files-adapter'
}
Alternatively, you can use
GCLOUD_PROJECT
and GOOGLE_APPLICATION_CREDENTIALS
environment variables.Instance Parameters
var GCSAdapter = require('@parse/gcs-files-adapter');
var gcsAdapter = new GCSAdapter(
'project',
'keyFilePath',
'bucket' , {
bucketPrefix: '',
directAccess: false
}
);
var api = new ParseServer({
appId: 'my_app',
masterKey: 'master_key',
filesAdapter: gcsAdapter
})
or with an options hash
var GCSAdapter = require('@parse/gcs-files-adapter');
var gcsOptions = {
projectId: 'projectId',
keyFilename: '/path/to/keyfile',
bucket: 'my_bucket',
bucketPrefix: '',
directAccess: false
}
var gcsAdapter = new GCSAdapter(gcsOptions);
var api = new ParseServer({
appId: 'my_app',
masterKey: 'master_key',
filesAdapter: gcsAdapter
});
Options
directAccess
: if set totrue
, uploaded files will be set as public and files will be served directly by Google Cloud Storage. Default isfalse
and files are proxied by Parse Server.