Module: Capistrano::UnicornNginx::Helpers

Defined in:
lib/capistrano/unicorn_nginx/helpers.rb

Defined Under Namespace

Classes: ERBNamespace

Instance Method Summary collapse

Instance Method Details

#bundle_unicorn(*args) ⇒ Object



7
8
9
# File 'lib/capistrano/unicorn_nginx/helpers.rb', line 7

def bundle_unicorn(*args)
  SSHKit::Command.new(:bundle, :exec, :unicorn, args).to_command
end

#deploy_userObject



32
33
34
# File 'lib/capistrano/unicorn_nginx/helpers.rb', line 32

def deploy_user
  capture :id, '-un'
end

#file_exists?(path) ⇒ Boolean

Returns:

  • (Boolean)


28
29
30
# File 'lib/capistrano/unicorn_nginx/helpers.rb', line 28

def file_exists?(path)
  test "[ -e #{path} ]"
end

#sudo_upload!(from, to) ⇒ Object



36
37
38
39
40
41
42
# File 'lib/capistrano/unicorn_nginx/helpers.rb', line 36

def sudo_upload!(from, to)
  filename = File.basename(to)
  to_dir = File.dirname(to)
  tmp_file = "#{fetch(:tmp_dir)}/#{filename}"
  upload! from, tmp_file
  sudo :mv, tmp_file, to_dir
end

#template(template_name, locals = {}) ⇒ Object

renders the ERB template specified by template_name to a StringIO buffer



24
25
26
# File 'lib/capistrano/unicorn_nginx/helpers.rb', line 24

def template(template_name, locals = {})
  StringIO.new(template_to_s(template_name, locals))
end

#template_to_s(template_name, locals = {}) ⇒ Object

renders the ERB template specified by template_name to string. Use the locals variable to pass locals to the ERB template



13
14
15
16
17
18
19
20
21
# File 'lib/capistrano/unicorn_nginx/helpers.rb', line 13

def template_to_s(template_name, locals = {})
  config_file = "#{fetch(:templates_path)}/#{template_name}"
  # if no customized file, proceed with default
  unless File.exists?(config_file)
    config_file = File.join(File.dirname(__FILE__), "../../generators/capistrano/unicorn_nginx/templates/#{template_name}")
  end

  ERB.new(File.read(config_file), nil, '-').result(ERBNamespace.new(locals).get_binding)
end