class AWS::ELB::LoadBalancerCollection

def [] name

Returns:
  • (LoadBalancer) - Returns the load balancer with the given
def [] name
  LoadBalancer.new(name, :config => config)
end

def _each_item options = {}, &block

def _each_item options = {}, &block
  response = client.describe_load_balancers(options)
  response.data[:load_balancer_descriptions].each do |description|
    load_balancer = LoadBalancer.new_from(
      :describe_load_balancers,
      description,
      description[:load_balancer_name],
      :config => config)
    yield(load_balancer)
  end
end

def create name, options = {}

Options Hash: (**options)
  • :scheme (String) -- 'internal' The type of a load
  • :security_groups (Array) -- The security groups assigned to
  • :subnets (Array) -- An list of VPC subets to attach the
  • :listeners (required, Array) -- An array of load
  • :availability_zones (required, Array) -- An array of

Parameters:
  • options (Hash) --
  • name (String) -- The name of your load balancer. The name must
def create name, options = {}
  if listeners = options[:listeners]
    options[:listeners] = [listeners].flatten.map do |listener|
      format_listener_opts(listener)
    end
  end
  if zones = options[:availability_zones]
    options[:availability_zones] = [zones].flatten.map do |zone|
      zone.is_a?(EC2::AvailabilityZone) ? zone.name : zone
    end
  end
  if groups = options[:security_groups]
    options[:security_groups] = [groups].flatten.map do |group|
      group.is_a?(EC2::SecurityGroup) ? group.id : group
    end
  end
  if subnets = options[:subnets]
    options[:subnets] = [subnets].flatten.map do |subnet|
      subnet.is_a?(EC2::Subnet) ? subnet.id : subnet
    end
  end
  options[:load_balancer_name] = name.to_s
  resp = client.create_load_balancer(options)
  LoadBalancer.new(name, :dns_name => resp[:dns_name], :config => config)
end