lib/boot.rb in forj-0.0.21 vs lib/boot.rb in forj-0.0.22

- old
+ new

@@ -23,61 +23,62 @@ include YamlParse require_relative 'security.rb' include SecurityGroup require_relative 'repositories.rb' include Repositories +require_relative 'log.rb' +include Logging +require_relative 'helpers.rb' +include Helpers # # Boot module # module Boot def boot(blueprint, cloud_provider, name, build_config_dir, branch, test = false) begin + initial_msg = format('booting %{blueprint} on %{cloud_provider}', + blueprint: blueprint , cloud_provider: cloud_provider) + Logging.info(initial_msg) + puts (initial_msg) - puts format('booting %{blueprint} on %{cloud_provider}', - blueprint: blueprint , cloud_provider: cloud_provider) - - # get definitions from yaml forj_dir = File.expand_path(File.dirname(__FILE__)) Dir.chdir(forj_dir) definitions = YamlParse.get_values('../lib/catalog.yaml') - # clone the maestro repo Repositories.clone_repo - # create the network where maestro will land network = Network.create_network(name) subnet = Network.create_subnet(network.id, name) router = Network.get_router(definitions[blueprint]['router']) - Network::create_router_interface(subnet.id, router) + Network.create_router_interface(subnet.id, router) - # create the security groups for the blueprint - security_group = SecurityGroup::create_security_group(blueprint) + security_group = SecurityGroup.create_security_group(blueprint) ports = definitions['redstone']['ports'] ports.each do|port| Network.create_security_group_rule(security_group.id, 'tcp', port, port) end ENV['FORJ_HPC_NETID'] = network.id ENV['FORJ_SECURITY_GROUP'] = security_group.name - ENV['FORJ_KEYPAIR'] = definitions[blueprint]['keypair'] - ENV['FORJ_HPC_NOVA_KEYPUB'] = definitions[blueprint]['keypair'] + #ENV['FORJ_KEYPAIR'] = definitions[blueprint]['keypair'] + #ENV['FORJ_HPC_NOVA_KEYPUB'] = definitions[blueprint]['keypair'] # run build.sh to boot maestro current_dir = Dir.pwd - home = File.expand_path('~') - build_path = home + '/.hpcloud/maestro/build' + home = Helpers.get_home_path + build_path = home + '/.forj/maestro/build' Dir.chdir(build_path) if build_config_dir command = format('bin/build.sh --build_ID maestro.%{name} --box-name maestro --build-conf-dir %{build_config_dir} --build-config box-13.5 --gitBranch %{branch}', name: name, build_config_dir: build_config_dir, branch: branch) - #elsif name != 'redstone' - # command = format('bin/build.sh --build_ID %{name} --box-name maestro --build-conf-dir ~/.hpcloud/maestro/build/conf --build-config box --blueprint %{blueprint_name}', name: name, blueprint_name: blueprint) + elsif blueprint != 'redstone' + command = format('bin/build.sh --build_ID %{name} --box-name maestro --build-conf-dir ~/.forj/maestro/build/conf --build-config box --blueprint %{blueprint_name}', name: name, blueprint_name: blueprint) else - command = format('bin/build.sh --build_ID %{name} --box-name maestro --build-conf-dir ~/.hpcloud/maestro/build/conf --build-config box', name: name) + command = format('bin/build.sh --build_ID %{name} --box-name maestro --build-conf-dir ~/.forj/maestro/build/conf --build-config box', name: name) end Kernel.system(command) Dir.chdir(current_dir) @@ -87,11 +88,13 @@ Network.delete_subnet(subnet.id) Network.delete_network(network.name) end rescue SystemExit, Interrupt - puts 'process interrupted by user' + msg = format('%{name} interrupted by user') + puts msg + Logging.info(msg) rescue StandardError => e - puts e + Logging.error(e.message) end end end