module Capistrano::Cluster::DSL

Public Instance Methods

application(&block) click to toggle source
# File lib/capistrano/cluster/application.rb, line 22
def application(&block)
  fetch(:applications) << Application.new(&block)
end
applications(*names) { || ... } click to toggle source
# File lib/capistrano/cluster/application.rb, line 49
def applications(*names, &block)
  names.compact!
  fetch(:applications).map do |application|
    with_application application do
      if names.include? "#{fetch(:application)}" or names.empty?
        yield if block_given?
        application
      end
    end
  end.compact
end
configure_application(application) click to toggle source
# File lib/capistrano/cluster/application.rb, line 26
def configure_application(application)
  original_env = Capistrano::Configuration.env
  Capistrano::Configuration.env = original_env.copy
  application.configure!
  original_env
end
login_as(user, on: nil) { || ... } click to toggle source
# File lib/capistrano/cluster/application.rb, line 33
def login_as(user, on: nil, &block)
  if on
    old_user,on.user = on.user, "#{user}"
  end
  yield
ensure
  on.user = "#{old_user}" if on
end
with_application(application) { || ... } click to toggle source
# File lib/capistrano/cluster/application.rb, line 42
def with_application(application, &block)
  original_env = configure_application(application)
  yield
ensure
  Capistrano::Configuration.env = original_env
end