Class: CloudProvider

Inherits:
Object
  • Object
show all
Defined in:
lib/providers/cloudprovider.rb

Constant Summary collapse

CLOUDPROVIDERS =
{ :ec2 => Provider::Ec2 }

Instance Method Summary collapse

Constructor Details

#initialize(config) ⇒ CloudProvider

Returns a new instance of CloudProvider.



7
8
9
10
# File 'lib/providers/cloudprovider.rb', line 7

def initialize(config)
  @config = config
  @provider = provider
end

Instance Method Details

#imageObject



16
17
18
# File 'lib/providers/cloudprovider.rb', line 16

def image
  @provider.image
end

#instanceObject



20
21
22
# File 'lib/providers/cloudprovider.rb', line 20

def instance
  @provider.instance
end

#instancesObject



24
25
26
# File 'lib/providers/cloudprovider.rb', line 24

def instances
  @provider.instances
end

#instances_listObject



32
33
34
35
36
37
# File 'lib/providers/cloudprovider.rb', line 32

def instances_list
  printf "%17s %35s %34s\n", 'NAME', 'DNS', 'STATUS'
  @provider.instances.each do |instance|
    printf "%-30s %-50s %s\n", instance.tags['Name'], instance.dns_name, instance.status.to_s
  end
end

#providerObject



12
13
14
# File 'lib/providers/cloudprovider.rb', line 12

def provider
  CLOUDPROVIDERS[@config[:cloudprovider]].new(@config)
end

#regionsObject



28
29
30
# File 'lib/providers/cloudprovider.rb', line 28

def regions
  @provider.regions
end