class Awful::Vpc

Public Instance Methods

dump(name) click to toggle source
# File lib/awful/vpc.rb, line 26
def dump(name)
  ec2.describe_vpcs.map(&:vpcs).flatten.find do |vpc|
    vpc.vpc_id == name or vpc.tags.any? { |tag| tag.value == name }
  end.tap do |vpc|
    puts YAML.dump(stringify_keys(vpc.to_hash))
  end
end
ls(name = /./) click to toggle source
# File lib/awful/vpc.rb, line 12
def ls(name = /./)
  fields = options[:long] ?
    ->(v) { [tag_name(v), v.vpc_id, v.state, v.cidr_block] } :
    ->(v) { [v.vpc_id] }
  ec2.describe_vpcs.map(&:vpcs).flatten.select do |vpc|
    vpc.tags.any? { |tag| tag.value.match(name) }
  end.map do |vpc|
    fields.call(vpc)
  end.tap do |list|
    print_table list
  end
end