# # 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 notifies :reload, "service[nginx]", :delayed end nginx_site 'wordpress' do enable true end