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