Sha256: 468879fada608cc267af1013cf20bafcd2bebcde7b16fa091a132cadd47173f8
Contents?: true
Size: 1.48 KB
Versions: 4
Compression:
Stored size: 1.48 KB
Contents
module Fog module AWS class EC2 def security_groups Fog::AWS::EC2::SecurityGroups.new(:connection => self) end class SecurityGroups < Fog::Collection attribute :group_name def initialize(attributes) @group_name ||= [] super end def all(group_name = []) data = connection.describe_security_groups(group_name).body security_groups = Fog::AWS::EC2::SecurityGroups.new({ :connection => connection, :group_name => group_name }.merge!(attributes)) data['securityGroupInfo'].each do |security_group| security_groups << Fog::AWS::EC2::SecurityGroup.new({ :connection => connection, :security_groups => self }.merge!(security_group)) end security_groups end def create(attributes = {}) security_group = new(attributes) security_group.save security_group end def get(group_name) if group_name all(group_name).first end rescue Fog::Errors::BadRequest nil end def new(attributes = {}) Fog::AWS::EC2::SecurityGroup.new( attributes.merge!( :connection => connection, :security_groups => self ) ) end def reload all(group_name) end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems