class Opsworks::Ssh::Config

Constants

TEMPLATE_PATH
VERSION

Public Class Methods

generate!() click to toggle source
# File lib/opsworks/ssh/config.rb, line 22
def self.generate!
  new.result
end
new() click to toggle source
# File lib/opsworks/ssh/config.rb, line 13
def initialize
  @source = File.read TEMPLATE_PATH
  @template = ERB.new @source
end
opsworks() click to toggle source
# File lib/opsworks/ssh/config.rb, line 18
def self.opsworks
  @opsworks ||= Aws::OpsWorks::Client.new
end

Public Instance Methods

each() { |"#{name}_#{name}", ip| ... } click to toggle source
# File lib/opsworks/ssh/config.rb, line 26
def each
  raise "No environments found in OpsWorks account" unless environments.any?
  environments.each do |environment|
    environment.servers.each do |server|
      yield "#{environment.name}_#{server.name}", server.ip
    end
  end
end
result() click to toggle source
# File lib/opsworks/ssh/config.rb, line 35
def result
  @template.result(binding)
end

Protected Instance Methods

environments() click to toggle source
# File lib/opsworks/ssh/config.rb, line 41
def environments
  self.class.opsworks.describe_stacks.stacks.map do |stack|
    Environment.new(stack: stack)
  end.reject { |env| env.name =~ /old/ }
end