class Piculet::EC2Wrapper::SecurityGroupCollection

Public Class Methods

new(security_groups, options) click to toggle source
# File lib/piculet/wrapper/security-group-collection.rb, line 6
def initialize(security_groups, options)
  @security_groups = security_groups
  @options = options
end

Public Instance Methods

create(name, opts = {}) click to toggle source
# File lib/piculet/wrapper/security-group-collection.rb, line 17
def create(name, opts = {})
  log(:info, 'Create SecurityGroup', :cyan, "#{opts[:vpc] || :classic} > #{name}")

  if @options.dry_run
    sg = OpenStruct.new({:id => '<new security group>', :name => name, :vpc_id => opts[:vpc], :tags => {}}.merge(opts))
  else
    sg = @security_groups.create(name, opts)
    @options.updated = true
  end

  SecurityGroup.new(sg, @options)
end
each() { |security_group| ... } click to toggle source
# File lib/piculet/wrapper/security-group-collection.rb, line 11
def each
  @security_groups.each do |sg|
    yield(SecurityGroup.new(sg, @options))
  end
end