Add initial kosmos-wordpress cookbook
This commit is contained in:
26
site-cookbooks/kosmos-wordpress/recipes/default.rb
Normal file
26
site-cookbooks/kosmos-wordpress/recipes/default.rb
Normal file
@@ -0,0 +1,26 @@
|
||||
#
|
||||
# Cookbook Name:: kosmos-wordpress
|
||||
# Recipe:: default
|
||||
#
|
||||
# Copyright 2016, Kosmos
|
||||
#
|
||||
# All rights reserved - Do Not Redistribute
|
||||
#
|
||||
|
||||
node.override['wordpress']['db']['root_password'] = "eiSi9aegebietheoBaogh8ay"
|
||||
node.override['wordpress']['server_name'] = "blog.kosmos.org"
|
||||
node.override['wordpress']['server_aliases'] = ["blog.kosmos.org"]
|
||||
node.override['wordpress']['db']['mysql_version'] = "5.6"
|
||||
node.override['wordpress']['server_port'] = "443"
|
||||
credentials = Chef::EncryptedDataBagItem.load('credentials', 'wordpress')
|
||||
node.set['wordpress']['db']['pass'] = credentials["db_pass"]
|
||||
node.set['wordpress']['keys']['auth'] = credentials["keys_auth"]
|
||||
node.set['wordpress']['keys']['secure_auth'] = credentials["keys_secure_auth"]
|
||||
node.set['wordpress']['keys']['logged_in'] = credentials["keys_logged_in"]
|
||||
node.set['wordpress']['keys']['nonce'] = credentials["keys_nonce"]
|
||||
node.set['wordpress']['salt']['auth'] = credentials["keys_auth"]
|
||||
node.set['wordpress']['salt']['secure_auth'] = credentials["saltsecure_auth"]
|
||||
node.set['wordpress']['salt']['logged_in'] = credentials["salt_logged_in"]
|
||||
node.set['wordpress']['salt']['nonce'] = credentials["salt_nonce"]
|
||||
|
||||
include_recipe 'kosmos-wordpress::nginx'
|
||||
98
site-cookbooks/kosmos-wordpress/recipes/nginx.rb
Normal file
98
site-cookbooks/kosmos-wordpress/recipes/nginx.rb
Normal file
@@ -0,0 +1,98 @@
|
||||
#
|
||||
# Cookbook Name:: kosmos-wordpress
|
||||
# Recipe:: nginx
|
||||
#
|
||||
# Copyright 2016, Kosmos
|
||||
#
|
||||
# All rights reserved - Do Not Redistribute
|
||||
#
|
||||
|
||||
node.set_unless['php-fpm']['pools'] = []
|
||||
|
||||
include_recipe "php-fpm::configure"
|
||||
include_recipe 'php-fpm::repository' unless node['php-fpm']['skip_repository_install']
|
||||
|
||||
if node['php-fpm']['package_name'].nil?
|
||||
if platform_family?("rhel")
|
||||
php_fpm_package_name = "php-fpm"
|
||||
else
|
||||
php_fpm_package_name = "php5-fpm"
|
||||
end
|
||||
else
|
||||
php_fpm_package_name = node['php-fpm']['package_name']
|
||||
end
|
||||
|
||||
package php_fpm_package_name do
|
||||
action :upgrade
|
||||
end
|
||||
|
||||
if node['php-fpm']['service_name'].nil?
|
||||
php_fpm_service_name = php_fpm_package_name
|
||||
else
|
||||
php_fpm_service_name = node['php-fpm']['service_name']
|
||||
end
|
||||
|
||||
service "php-fpm" do
|
||||
service_name php_fpm_service_name
|
||||
supports :start => true, :stop => true, :restart => true, :reload => true
|
||||
action [ :enable, :start ]
|
||||
end
|
||||
|
||||
php_fpm_pool "www" do
|
||||
enable false
|
||||
end
|
||||
|
||||
php_fpm_pool "wordpress" do
|
||||
listen "127.0.0.1:9001"
|
||||
user node['wordpress']['install']['user']
|
||||
group node['wordpress']['install']['group']
|
||||
if node['platform'] == 'ubuntu' and node['platform_version'] == '10.04'
|
||||
process_manager 'dynamic'
|
||||
end
|
||||
listen_owner node['wordpress']['install']['user']
|
||||
listen_group node['wordpress']['install']['group']
|
||||
php_options node['wordpress']['php_options']
|
||||
start_servers 5
|
||||
enable true
|
||||
end
|
||||
|
||||
include_recipe "php::module_mysql"
|
||||
|
||||
include_recipe "kosmos-nginx"
|
||||
|
||||
include_recipe "wordpress::app"
|
||||
|
||||
data_bag_item = Chef::EncryptedDataBagItem.load('certificates', 'wildcard_kosmos_org')
|
||||
|
||||
ssl_cert_path = "/etc/ssl/private/wildcard.kosmos.org.crt"
|
||||
file ssl_cert_path do
|
||||
content data_bag_item['ssl_cert']
|
||||
mode 0600
|
||||
owner 'www-data'
|
||||
sensitive true
|
||||
end
|
||||
|
||||
ssl_key_path = "/etc/ssl/private/wildcard.kosmos.org.key"
|
||||
file ssl_key_path do
|
||||
content data_bag_item['ssl_key']
|
||||
mode 0600
|
||||
owner 'www-data'
|
||||
sensitive true
|
||||
end
|
||||
|
||||
template "#{node['nginx']['dir']}/sites-available/wordpress" do
|
||||
source "nginx.conf.erb"
|
||||
variables(
|
||||
docroot: node['wordpress']['dir'],
|
||||
server_name: node['wordpress']['server_name'],
|
||||
server_aliases: node['wordpress']['server_aliases'],
|
||||
server_port: node['wordpress']['server_port'],
|
||||
ssl_cert: ssl_cert_path,
|
||||
ssl_key: ssl_key_path
|
||||
)
|
||||
action :create
|
||||
end
|
||||
|
||||
nginx_site 'wordpress' do
|
||||
enable true
|
||||
end
|
||||
Reference in New Issue
Block a user