Class: Mulder::Capistrano

Inherits:
Object
  • Object
show all
Defined in:
lib/mulder/capistrano.rb

Instance Method Summary collapse

Constructor Details

#initialize(config_file, application, environment) ⇒ Capistrano

Returns a new instance of Capistrano.



6
7
8
9
10
11
# File 'lib/mulder/capistrano.rb', line 6

def initialize(config_file, application, environment)
  config       = ::Mulder::Config.from(:yaml, file: config_file)
  @connection  = ::Mulder::Connection.new(config)
  @application = application
  @environment = environment
end

Instance Method Details

#client(role) ⇒ Object



13
14
15
# File 'lib/mulder/capistrano.rb', line 13

def client(role)
  @client = ::Mulder::Client.new(@connection, @application, @environment, role)
end

#ips(role, use_private = false) ⇒ Object



17
18
19
20
21
# File 'lib/mulder/capistrano.rb', line 17

def ips(role, use_private = false)
  type_of_ips = use_private ? :private_ip_address : :public_ip_address

  client(role).instances.collect(&type_of_ips).compact
end