Adoptable Cookbooks List

Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption!
List of Adoptable Cookbooks

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the Chef Mailing List.

Select Badges

Select Supported Platforms

RSS

ghost-blog (9) Versions 1.0.2

Installs & configures Ghost: open source blogging platform

Berkshelf/Librarian
Policyfile
Knife
cookbook 'ghost-blog', '= 1.0.2'
cookbook 'ghost-blog', '= 1.0.2', :supermarket
knife cookbook site install ghost-blog
knife cookbook site download ghost-blog
README
Dependencies
Changelog
Quality

ghostblog Cookbook

A Chef cookbook for building and managing a Ghost blog.

Requirements

nodejs and Chef:

  • nodejs
  • Chef 11+

Platforms

  • Ubuntu 12.04, 14.04

Cookbooks:

This cookbook depends on the following community cookbooks:

As of version 1.0 this cookbook is only tested on Ubuntu 12.04 & 14.04. As development is continued on CentOS,Debian and future Ubuntu versions will be supported. This cookbook is heavily configured via the attributes

Attributes

This cookbook's attributes are broken up into different categories.

General settings

  • node['ghost-blog']['install_dir'] - Installation directory for Ghost. Default is /var/www/html/ghost
  • node['ghost-blog']['version'] - Ghost blog version. Default is latest. Will also take old versions 0.5.9, 0.5.8, etc

Nginx settings

  • node['ghost-blog']['nginx']['dir'] - Nginx directory. Default is /etc/nginx
  • node['ghost-blog']['nginx']['script_dir'] - bin directory for scripts. Default is /usr/bin
  • node['ghost-blog']['nginx']['server_name'] - Nginx server name. Default is ghostblog.com

Ghost app settings

  • node['ghost-blog']['app']['server_url'] - Ghost app server url. Default is localhost
  • node['ghost-blog']['app']['port'] - Ghost app port. Default is 2368
  • node['ghost-blog']['app']['mail_transport_method'] - Ghost app mailing method. Default is SMTP.
  • node['ghost-blog']['app']['mail_service'] - Name of Mail service to use with nodemailer. Default is nil. Supports Gmail,SES, & mailgun.
  • node['ghost-blog']['app']['mail_user'] - Username for select mail service. Default is nil
  • node['ghost-blog']['app']['mail_passwd'] - Password for selected mail user. Default is nil
  • node['ghost-blog']['app']['db_type'] - Type of database to use with Ghost. Default is sqlite3. Supports sqlite3, and mysql.

Ghost AWS SES settings

  • node['ghost-blog']['ses']['aws_secret_key'] - AWS Secret key. Default is nil
  • node['ghost-blog']['ses']['aws_access_key'] - AWS Access key. Default is nil

Ghost MySQL settings

Note about MySQL option

Creating a local MySQL server/database is outside the scope of this cookbook. I am assuming if you are using the mysql option for node['ghost-blog']['app']['db_type'] that you already have a MySQL elsewhere such as AWS RDS or on another server. You could always wrap this cookbook and create your own MySQL instance.

  • node['ghost-blog']['mysql']['host'] - MySQL host. Default is 127.0.0.1
  • node['ghost-blog']['mysql']['user'] - MySQL user. Default is ghost_blog
  • node['ghost-blog']['mysql']['passwd'] - MySQL password. Default is ChangePasswordQuick!
  • node['ghost-blog']['mysql']['database'] - MySQL database name. Default is ghost_db
  • node['ghost-blog']['mysql']['charset'] - MySQL charset. Default is utf8

Recipes

default

The main recipe. This will call all the additional recipes to configure and setup Ghost.

Usage

Using this cookbook is relatively straightforward. Add the default recipe to the run list of a node, or create a role.

Dependent cookbooks

nodejs ~> 2.4.0

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

ghostblog CHANGELOG

v1.0.2

  • There was already a ghost cookbook on the Supermarket, so I had to change the name of mine to ghost-blog. Because of this the cookbook broke. Renamed all mention of "ghost" to "ghost-blog". This should fix the cookbook now.

v1.0.1

  • No changes to the cookbook code. All the changes were related to uploading to SuperMarket

v1.0.0

  • Initial relase

Foodcritic Metric
            

1.0.2 failed this metric

FC002: Avoid string interpolation where not required: /tmp/cook/c209b39830224bd05b39730d/ghost-blog/recipes/_ghost.rb:10
FC002: Avoid string interpolation where not required: /tmp/cook/c209b39830224bd05b39730d/ghost-blog/recipes/_ghost.rb:16
FC013: Use file_cache_path rather than hard-coding tmp paths: /tmp/cook/c209b39830224bd05b39730d/ghost-blog/recipes/_ghost.rb:1
FC031: Cookbook without metadata file: /tmp/cook/c209b39830224bd05b39730d/ghost-blog/metadata.rb:1
FC045: Consider setting cookbook name in metadata: /tmp/cook/c209b39830224bd05b39730d/ghost-blog/metadata.rb:1