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