cookbook 'ghost-blog', '= 1.0.3'
ghost-blog (9) Versions 1.0.3 Follow0
Installs & configures Ghost: open source blogging platform
cookbook 'ghost-blog', '= 1.0.3', :supermarket
knife supermarket install ghost-blog
knife supermarket download ghost-blog
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:
- nodejs '~> 2.4.0'
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 islatest
. Will also take old versions0.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 isghostblog.com
Ghost app settings
-
node['ghost-blog']['app']['server_url']
- Ghost app server url. Default islocalhost
-
node['ghost-blog']['app']['port']
- Ghost app port. Default is2368
-
node['ghost-blog']['app']['mail_transport_method']
- Ghost app mailing method. Default isSMTP
. -
node['ghost-blog']['app']['mail_service']
- Name of Mail service to use with nodemailer. Default isnil
. SupportsGmail
,SES
, &mailgun
. -
node['ghost-blog']['app']['mail_user']
- Username for select mail service. Default isnil
-
node['ghost-blog']['app']['mail_passwd']
- Password for selected mail user. Default isnil
-
node['ghost-blog']['app']['db_type']
- Type of database to use with Ghost. Default issqlite3
. Supportssqlite3
, andmysql
.
Ghost AWS SES settings
-
node['ghost-blog']['ses']['aws_secret_key']
- AWS Secret key. Default isnil
-
node['ghost-blog']['ses']['aws_access_key']
- AWS Access key. Default isnil
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 is127.0.0.1
-
node['ghost-blog']['mysql']['user']
- MySQL user. Default isghost_blog
-
node['ghost-blog']['mysql']['passwd']
- MySQL password. Default isChangePasswordQuick!
-
node['ghost-blog']['mysql']['database']
- MySQL database name. Default isghost_db
-
node['ghost-blog']['mysql']['charset']
- MySQL charset. Default isutf8
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.3
- Made some suggestions based on foodcritic.
v1.0.2
- There was already a
ghost
cookbook on the Supermarket, so I had to change the name of mine toghost-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.3 failed this metric
FC031: Cookbook without metadata file: /tmp/cook/48352cb17c5e4a387b95a453/ghost-blog/metadata.rb:1
FC045: Consider setting cookbook name in metadata: /tmp/cook/48352cb17c5e4a387b95a453/ghost-blog/metadata.rb:1
1.0.3 failed this metric
FC045: Consider setting cookbook name in metadata: /tmp/cook/48352cb17c5e4a387b95a453/ghost-blog/metadata.rb:1