Skip to content

joe4dev/wordpress

 
 

Repository files navigation

Description

The Chef WordPress cookbook installs and configures WordPress according to the instructions at http://codex.wordpress.org/Installing_WordPress.

Additionally, the setup recipe of this cookbook uses the WordPress CLI (http://wp-cli.org/) to install the WordPress core blog. For manual setup, use the install recipe and go to: http://HOSTNAME:80/wp-admin/install.php

Requirements

Platform

  • Ubuntu 12.04, 14.04
  • RHEL/CentOS 5, 6
  • Windows

Cookbooks

  • mysql
  • mysql_chef_gem
  • php
  • apache2
  • windows
  • openssl (uses library to generate secure passwords)
  • selinux (used to disable selinux for MySQL on RHEL-based systems)

Attributes

WordPress

  • node['wordpress']['version'] - Version of WordPress to download. Use 'latest' to download most recent version.

  • node['wordpress']['parent_dir'] - Parent directory to where WordPress will be extracted. (Windows Only)

  • node['wordpress']['dir'] - Location to place WordPress files.

  • node['wordpress']['db']['instance_name'] - Name of the MySQL instance to use with MySQL (community cookbook version 6+)

  • node['wordpress']['db']['name'] - Name of the WordPress MySQL database.

  • node['wordpress']['db']['user'] - Name of the WordPress MySQL user.

  • node['wordpress']['db']['prefix'] - Prefix of all MySQL tables created by WordPress.

  • node['wordpress']['db']['host'] - Host of the WordPress MySQL database.

  • node['wordpress']['db']['port'] - Port of the WordPress MySQL database.

  • node['wordpress']['db']['charset'] - Character set of the WordPress MySQL database tables. Defaults to 'utf8'.

  • node['wordpress']['db']['collate'] - Collation of the WordPress MySQL database tables.

  • node['wordpress']['db']['mysql_version'] - Version of MySQL to install (for supporting community cookbook version 6+)

  • node['wordpress']['allow_multisite'] - Enable multisite features (default: false).

  • node['wordpress']['wp_config_options'] - A hash of options to define in wp_config.php, output as key value pairs into a PHP constant e.g. define( '<%= @key %>', <%= @value %> );. Note: for values you will need to add single quotes around text but omit them for booleans and numbers. (default: {}).

  • node['wordpress']['config_perms'] - Permissions to set for a site's wp-config.php.

  • node['wordpress']['server_aliases'] - Aliases to use when setting up Virtual Host with Nginx or Apache

  • node['wordpress']['server_port'] - Port to use when setting up the Virtual Host with Nginx or Apache

  • node['wordpress']['install']['user'] - Install user used for WordPress file permissions and the PHP-FPM user (if applicable)

  • node['wordpress']['install']['group'] - Install group used for WordPress file permissions and the PHP-FPM group (if necessary)

  • node['wordpress']['parent_dir'] - Parent directory of where WordPress will be installed. This is used in the Windows installation to determine where the .zip will be downloaded to.

  • node['wordpress']['dir'] - Path where WordPress should be installed

  • node['wordpress']['url'] - URL to the zip or tarball installer of WordPress

  • node['wordpress']['server_name'] - Hostname used for setting up the Virtual Host configuration for your WordPress site

  • node['wordpress']['php_options'] - Additional PHP settings for the installation.

See attributes/default.rb for further details and examples.

Usage

Add the "wordpress" recipe to your node's run list or role, or include the recipe in another cookbook.

Vagrant

  1. Install Vagrant: https://www.vagrantup.com/
  2. Install the Vagrant plugin vagrant-omnibus via vagrant plugin install vagrant-omnibus

Virtualbox

cd vagrant-virtualbox
vagrant up

Amazon EC2

  1. Adjust vagrant-aws/Vagrantfile, especially:
  • SSH_KEY_PATH
  • aws.keypair_name
  • aws.security_groups (make sure HTTP port is open!)
cd vagrant-aws
export AWS_ACCESS_KEY_ID=???
export AWS_SECRET_ACCESS_KEY=???
vagrant up

TestKitchen

http://kitchen.ci/

kitchen verify

License and Author

Copyright:: 2010-2013, Chef Software, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

About

Forked development repository for Opscode Cookbook wordpress

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 88.1%
  • HTML 11.9%