class DanarchyDeploy::Applicator::PHPFPM
Public Class Methods
disable_phpfpm(app, options)
click to toggle source
# File lib/danarchy_deploy/applicator/phpfpm.rb, line 71 def self.disable_phpfpm(app, options) if options[:pretend] puts " - Fake run: Remove #{app[:user_phpcfg]}" else puts "\n ! Disabling PHP-FPM for '#{app[:username]}'." if File.exist?(app[:phpcfg]) File.delete(app[:phpcfg]) puts " |_ Removed: #{app[:phpcfg]}" end end end
enable_phpfpm(app, options)
click to toggle source
# File lib/danarchy_deploy/applicator/phpfpm.rb, line 41 def self.enable_phpfpm(app, options) tmpdir = "/home/#{app[:username]}/tmp" if !options[:pretend] puts "\n |+ Enabling PHP-FPM for '#{app[:username]}'." FileUtils.mkdir_p(File.dirname(app[:phpcfg])) FileUtils.mkdir_p(tmpdir, mode: 1750) FileUtils.chown(app[:username], app[:username], tmpdir) end pool = app[:domain].gsub('.','_') web_user = 'nginx' if app[:nginx] web_user = 'apache' if app[:apache] source = options[:deploy_dir] + '/templates/applications/php/phpfpm.conf.erb' templates = [{ target: app[:phpcfg], source: source, variables: { pool: pool, username: app[:username], web_user: web_user, tmp: tmpdir }, dir_perms: { owner: 'root', group: 'root', mode: '0755' }, file_perms: { owner: 'root', group: 'root', mode: '0644' } }] DanarchyDeploy::Templater.new(templates, options) end
generate_paths(app, options)
click to toggle source
# File lib/danarchy_deploy/applicator/phpfpm.rb, line 19 def self.generate_paths(app, options) phpfpm_config = Dir['/etc/**/php-fpm.conf'].last sites_enabled = nil if phpfpm_config.nil? && options[:pretend] sites_enabled = '/etc/php/fpm-pretend/sites_enabled/' puts " - Fake run: Testing deployment using #{sites_enabled}" elsif phpfpm_config.nil? && !options[:pretend] abort("\n ! ERROR: Could not establish php-fpm.conf location!") else puts " |+ Found php-fpm.conf at: #{phpfpm_config}." phpfpm_config = File.readlines(phpfpm_config) sites_enabled = phpfpm_config.grep(/^include/).last.gsub(/(^.*=|\*$|\*.conf)/, '').chomp end app[:phpcfg] = app[:phpcfg] ? app[:phpcfg] : "/home/#{app[:username]}/php-fpm/sites-enabled/#{app[:domain]}.conf" # app[:phpcfg] = sites_enabled + "#{app[:domain].gsub('.','_')}.conf" app end
new(app, options)
click to toggle source
# File lib/danarchy_deploy/applicator/phpfpm.rb, line 5 def self.new(app, options) puts "\n" + self.name puts "\n > Checking #{app[:username]}'s PHP-FPM config." app = generate_paths(app, options) if app[:phpfpm] == 'enabled' enable_phpfpm(app, options) elsif app[:phpfpm] == 'disabled' disable_phpfpm(app, options) end app end