class Object
Public Instance Methods
close_sessions()
click to toggle source
# File lib/caploy/recipes/nginx.rb, line 101 def close_sessions sessions.values.each { |session| session.close } sessions.clear end
config_file_path(config_file_name)
click to toggle source
# File lib/caploy/recipes/setup.rb, line 42 def config_file_path(config_file_name) config_file = "#{rails_root}/config/#{config_file_name}" if File.exists? config_file config_file else puts "\e[0;31mNo config file '#{config_file}'" nil end end
create_database()
click to toggle source
# File lib/caploy/recipes/setup.rb, line 62 def create_database create_sql = <<-SQL CREATE DATABASE #{db_name}; SQL run "mysql --user=#{db_admin_user} --password=#{db_admin_password} --execute=\"#{create_sql}\"" end
database_exits?()
click to toggle source
# File lib/caploy/recipes/setup.rb, line 52 def database_exits? exists = false run "mysql --user=#{db_admin_user} --password=#{db_admin_password} --execute=\"show databases;\"" do |channel, stream, data| exists = exists || data.include?(db_name) end exists end
process_exists?(pid_file)
click to toggle source
Check if process is running
# File lib/caploy/recipes/unicorn.rb, line 9 def process_exists?(pid_file) capture("ps -p $(cat #{pid_file}) ; true").strip.split("\n").size == 2 end
remote_file_exists?(full_path)
click to toggle source
Check if remote file exists
# File lib/caploy/recipes/unicorn.rb, line 3 def remote_file_exists?(full_path) 'true' == capture("if [ -e #{full_path} ]; then echo 'true'; fi").strip end
render_erb_template(template_path, vars={})
click to toggle source
# File lib/caploy/render.rb, line 3 def render_erb_template(template_path, vars={}) raise "file '#{template_path}' not exists" unless File.exist? template_path template = File.open(template_path, 'r').read Erubis::Eruby.new(template).result(vars) end
setup_database_permissions()
click to toggle source
# File lib/caploy/recipes/setup.rb, line 70 def setup_database_permissions grant_sql = <<-SQL GRANT ALL PRIVILEGES ON #{db_name}.* TO #{db_user_name}@localhost IDENTIFIED BY '#{db_user_password}'; SQL run "mysql --user=#{db_admin_user} --password=#{db_admin_password} --execute=\"#{grant_sql}\"" end
tail(path)
click to toggle source
# File lib/caploy/recipes/taillog.rb, line 18 def tail(path) with_verbosity(Logger::DEBUG) do execute "tail -f #{path}" end end
with_user(new_user) { || ... }
click to toggle source
# File lib/caploy/recipes/nginx.rb, line 92 def with_user(new_user, &block) old_user = user set :user, new_user close_sessions yield set :user, old_user close_sessions end
with_verbosity(output_verbosity) { || ... }
click to toggle source
# File lib/caploy/recipes/taillog.rb, line 8 def with_verbosity(output_verbosity) old_verbosity = SSHKit.config.output_verbosity begin SSHKit.config.output_verbosity = output_verbosity yield ensure SSHKit.config.output_verbosity = old_verbosity end end