module Cumulus::SecurityGroups

Public Class Methods

id_security_groups() click to toggle source
# File lib/security/SecurityGroups.rb, line 14
def id_security_groups
  @id_security_groups ||= Hash[security_groups.map { |a| [a.group_id, a] }]
end
security_groups() click to toggle source

Describe all security groups

# File lib/security/SecurityGroups.rb, line 26
def security_groups
  @security_groups ||= @@client.describe_security_groups.security_groups
end
vpc_security_group_id_names() click to toggle source

Public: Returns a Hash of vpc id to Hash of security group id to group name

# File lib/security/SecurityGroups.rb, line 31
def vpc_security_group_id_names
  @vpc_security_group_id_names ||= Hash[vpc_security_groups.map do |vpc_id, group_hash|
    [vpc_id, Hash[group_hash.map {|_, sg| [sg.group_id, sg.group_name]}]]
  end]
end
vpc_security_groups() click to toggle source

Public: Returns a Hash of vpc id to Hash of security group name to group

# File lib/security/SecurityGroups.rb, line 19
def vpc_security_groups
  @vpc_security_groups ||= Hash[security_groups.map(&:vpc_id).uniq.map do |vpc_id|
    [vpc_id, Hash[security_groups.select { |g| g.vpc_id == vpc_id }.map { |g| [g.group_name, g] }]]
  end]
end