Sha256: 161e1b84d0aae13e730f0bd74e8fe3ab62fdd073f1934d2d3e7b8b38aa7fc9de

Contents?: true

Size: 1.03 KB

Versions: 1

Compression:

Stored size: 1.03 KB

Contents

module Rudy; module Routines; module Handlers;
  module Group
    include Rudy::Routines::Handlers::Base
    extend self
    
    ##Rudy::Routines.add_handler :machines, self
    
    
    def raise_early_exceptions(name=nil)
      
    end
    
    def create(name=nil)
      name ||= current_group_name
      return if exists? name
      li "Creating group: #{name}"
      Rudy::AWS::EC2::Groups.create name
    end
    
    def authorize(name=nil, addresses=nil, ports=nil)
      name ||= current_group_name
      addresses ||= [Rudy::Utils::external_ip_address]
      ports ||= [[22,22]]
      li "Authorizing group: #{addresses.inspect} (#{ports.inspect})"
      Rudy::AWS::EC2::Groups.authorize(name, addresses, ports)
    end
    
    def exists?(name=nil)
      name ||= current_group_name
      Rudy::AWS::EC2::Groups.exists? name
    end
    
    def destroy(name=nil)
      name ||= current_group_name
      return unless exists? name
      li "Destroying group: #{name}"
      Rudy::AWS::EC2::Groups.destroy name
    end
    
  end
end; end; end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
solutious-rudy-0.9.0 lib/rudy/routines/handlers/group.rb