class Capistrano::Aws::EC2::EC2

Handle EC2.

Public Class Methods

new() click to toggle source
# File lib/capistrano/aws/ec2/ec2.rb, line 12
def initialize
  @ec2 = {}

  regions.each do |region|
    @ec2[region] = ::Aws::EC2::Resource.new(region: region)
  end
end

Public Instance Methods

instances() click to toggle source
# File lib/capistrano/aws/ec2/ec2.rb, line 24
def instances
  instances = {}

  filters = fetch(:aws_ec2_default_filters)

  filters.concat fetch(:aws_ec2_extra_filters)

  @ec2.each do |_region, client|
    client.instances(filters: filters).each do |instance|
      instances[instance.id] = instance
    end
  end

  instances
end
regions() click to toggle source
# File lib/capistrano/aws/ec2/ec2.rb, line 20
def regions
  fetch(:aws_ec2_regions)
end