/ghost-google-drive

Google drive storage for ghost

Primary LanguageJavaScriptMIT LicenseMIT

Ghost Google Drive

Google drive storage for ghost allows you to store the contents on google drive. I believe its helpful if you are gonna host your ghost app on heroku.

Will work with version higher than 0.6.0 of Ghost!

What's is new in 2.x

  • Rewritten to add support to Ghost 2.x.

Installation

Via NPM

  • cd into Ghost's current directory and install ghost-google-drive storage module

    cd current
    npm install ghost-google-drive
    
  • cd back to the root directory and make the storage folder if it doesn't exist yet

    mkdir content/adapters/storage
    
  • Copy the module into the right location

    cp -vR current/node_modules/ghost-google-drive content/adapters/storage/ghost-google-drive
    
  • Install package dependencies

    cd content/adapters/storage/ghost-google-drive
    npm install
    

Via Git

In order to replace the storage module, the basic requirements are:

  • Clone this repo to /content/adapters/storage. Please create the directories if not there.

    cd [path/to/ghost]/content/adapters/storage
    git clone https://github.com/robincsamuel/ghost-google-drive.git
    
  • Install dependencies

    cd ghost-google-drive
    npm install
    

Configuration

Add the following to your environment configuration, config.development.json if development.

"storage": {
  "active": "ghost-google-drive",
  "ghost-google-drive": {
    "key": {
            "private_key_id": "YOUR PRIVATE KEY ID",
            "private_key": "YOUR PRIVATE KEY",
            "client_email": "YOUR CLIENT EMAIL",
            "client_id": "YOUR CLIENT ID"
     }
  }
},

You just have to replace the key object with your json array generated by google console.

If you are not sure about how to get google ccredentials, please read below.

Create OAuth credentials

  • Login to google console

  • Create a new project from the top right dropdown
    new project

  • Click on Enable APIS and Services enable_apis

  • Search Google Drive enable_apis

  • Enable Google Drive API enable api

  • Click on the Create Credentials button.
    enable api

  • Add information for credentialing. enable api

  • You can skip the OAuth consent screen setup.
    enable api

  • From the credentials section, create a new Service Account Key enable api

  • Enter the account info, choose JSON for key type and download the file. enable api

You can copy the contents of json file to the config file (under storege.ghost-google-drive.ghost) as shown in the Configuration step.

License

Read LICENSE

Feel free to create an issue, in case of troubles!

Thanks to Minwe. I was following your package, even this readme!