tree: e944de37891dbcd83dc5c58e3ca09c13dceaca4d [path history] [tgz]
  2. pom.xml

jclouds Google Cloud Storage Provider

Make sure both Google Cloud Storage and Google Cloud Storage JSON API are enabled for the project (check from Developers Console -> Api&auth -> APIs)


  • Q. What is the identity for Google Cloud Storage?

A. the identity is the developer email which can be obtained from the admin GUI. Its usually something in the form:

  • Q. What is the credential for Google Cloud Storage

A. the credential is a private key, in pem format. It can be extracted from the p12 keystore that is obtained when creating a “Service Account” (in the GUI: Google apis console > Api Access > Create another client ID > “Service Account”

  • Q. How to convert a p12 keystore into a pem format jclouds Google Cloud Storage can handle:


  1. Convert the p12 file into pem format (it will ask for the keystore password, which is usually “notasecret”): openssl pkcs12 -in <my_keystore>.p12 -out <my_keystore>.pem -nodes

  2. Extract only the pk and remove passphrase openssl rsa -in <my_keystore>.pem -out <my_key>.pem

The last file (<my_key>.pem) should contain the pk that needs to be passed to ContextBuilder.credential() for the provider google-cloud-storage.

Running the live tests:

  1. Place the following in your ~/.m2/settings.xml in a profile enabled when live:
    <>-----BEGIN RSA PRIVATE KEY-----
-- this text is literally from your <my_key>.pem
-----END RSA PRIVATE KEY-----</>

Or, if using an existing OAuth Bearer Token for authentication.

  1. mvn clean install -Plive