Class: BuildCloud
- Inherits:
-
Object
show all
- Defined in:
- lib/build-cloud.rb
Defined Under Namespace
Modules: Component
Classes: ASGroup, CacheCluster, CacheParameterGroup, CacheSubnetGroup, DbParameterGroup, DbSubnetGroup, EBSVolume, IAMRole, Instance, InternetGateway, LaunchConfiguration, LoadBalancer, NetworkInterface, R53RecordSet, RDSServer, Route, RouteTable, S3Bucket, SecurityGroup, Subnet, VPC, Zone
Instance Method Summary
collapse
Constructor Details
#initialize(options) ⇒ BuildCloud
Returns a new instance of BuildCloud.
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
# File 'lib/build-cloud.rb', line 14
def initialize( options )
@log = options[:logger] or Logger.new( STDERR )
@mock = options[:mock] or false
first_config_file = options[:config].shift
@config = YAML::load( File.open( first_config_file ) )
include_files = options[:config]
if include_yaml = @config.delete(:include)
if include_yaml.is_a?(Array)
include_files.concat(include_yaml)
else
include_files.push(include_yaml)
end
end
include_files.each do |include_file|
include_path = File.join( File.dirname( first_config_file ), include_file)
if File.exists?( include_path )
@log.info( "Including YAML file #{include_path}" )
included_conf = YAML::load( File.open( include_path ) )
@config = @config.merge( included_conf )
end
end
@log.debug( @config.inspect )
new_config = recursive_interpolate_config(@config)
@config = new_config
@log.debug( @config.inspect )
connect_fog
BuildCloud::dispatch.each_pair do |component, klass|
if @config.has_key?(component)
klass.load( @config[component], @fog_interfaces, @log )
end
end
end
|
Instance Method Details
#all ⇒ Object
77
78
79
80
81
82
83
84
85
86
87
88
|
# File 'lib/build-cloud.rb', line 77
def all
objects = []
BuildCloud::create_order.each do |component|
next unless BuildCloud::dispatch.has_key?( component )
objects.concat BuildCloud::dispatch[component].objects()
end
objects
end
|
#find(component, options) ⇒ Object
67
68
69
70
71
72
73
74
75
|
# File 'lib/build-cloud.rb', line 67
def find( component, options )
if BuildCloud::dispatch.has_key?( component )
BuildCloud::dispatch[component].search(options)
else
[]
end
end
|
#pry ⇒ Object
63
64
65
|
# File 'lib/build-cloud.rb', line 63
def pry
binding.pry
end
|