Class: Ufo::Network::Fetch

Inherits:
Object
  • Object
show all
Extended by:
Memoist
Includes:
AwsService
Defined in:
lib/ufo/network/fetch.rb

Instance Method Summary collapse

Methods included from AwsService

#cloudformation, #cloudwatchlogs, #ec2, #ecr, #ecs, #elb

Constructor Details

#initialize(vpc_id) ⇒ Fetch

Returns a new instance of Fetch.



8
9
10
# File 'lib/ufo/network/fetch.rb', line 8

def initialize(vpc_id)
  @vpc_id = vpc_id
end

Instance Method Details

#security_group_idObject

default security group



32
33
34
35
36
37
38
# File 'lib/ufo/network/fetch.rb', line 32

def security_group_id
  resp = ec2.describe_security_groups(filters: [
    {name: "vpc-id", values: [vpc_id]},
    {name: "group-name", values: ["default"]}
  ])
  resp.security_groups.first.group_id
end

#subnet_idsObject

all subnets



23
24
25
26
27
28
# File 'lib/ufo/network/fetch.rb', line 23

def subnet_ids
  resp = ec2.describe_subnets(filters: [
    {name: "vpc-id", values: [vpc_id]}
  ])
  resp.subnets.map(&:subnet_id).sort
end

#vpc_idObject



12
13
14
15
16
17
18
19
# File 'lib/ufo/network/fetch.rb', line 12

def vpc_id
  return @vpc_id if @vpc_id

  resp = ec2.describe_vpcs(filters: [
    {name: "isDefault", values: ["true"]}
  ])
  resp.vpcs.first.vpc_id
end