Cloud Storage
Simple wrapper for uploading and deleting files from Google Cloud Storage.
Thanks to @bsphere for https://github.com/bsphere/node-gcs
Installation
npm install cloud-storage
Getting Started
-
Sign into the Google Cloud Console site: https://console.developers.google.com
-
Go to your project and under APIs & auth click on Credentials
-
Create an Oauth Service Account for your project if you don't already have one
-
Under the Service Account section copy your email address (that is your
accessId
) -
If you do not have a private key, click
Generate new key
to generate one (this will download a .p12 file to your computer) -
Convert the key to a .pem file
openssl pkcs12 -in path/to/key.p12 -nodes -nocerts > path/to/key.pem
-
If prompted for a password enter
notasecret
-
Store this .pem file somewhere secret (the path to this file is your
privateKey
)
Usage
Creating a cloud storage object
var CloudStorage = ;var storage = accessId: '1234-abcd@developer.gserviceaccount.com' privateKey: '/path/to/private/key.pem';
Copying a file to cloud storage
// copy a local file or a urlstorage;
Deleting a file from cloud storage
storage;
Custom options and metadata
// if you want to get crazy you can pass in options and metadatavar options = headers: 'Cache-Control': 'public, max-age=7200, no-transform' 'X-Goog-Acl': 'bucket-owner-full-control' metadata: 'width': 100 'height': 100 // remove the original file on disk after it is copied removeAfterCopy: true // force an extension to be added to the destination forceExtension: true; storage;
Get a url for a file
var url = storage // expiration time in secondsvar options = expiration: 100 download: true; var signedUrl = storage