some fixes

This commit is contained in:
amartynov 2015-08-04 13:20:35 +03:00
parent 024250d408
commit f9db126e0c
6 changed files with 21 additions and 7 deletions

View File

@ -1,3 +1,4 @@
require "lib/expire_handler"
module Devops
class DevopsApi2Application < Application
@ -35,8 +36,19 @@ module Devops
Devops::Api2.set :scripts_dir, (config[:scripts_dir] || File.join(config[:devops_dir], "files/scripts"))
[:keys_dir, :scripts_dir].each {|key| d = Devops::Api2.settings.send(key); FileUtils.mkdir_p(d) unless File.exists?(d) }
init_mongo
Devops::Api2.settings.mongo.create_root_user
mongo = Devops::Api2.settings.mongo
mongo.create_root_user
::Provider::ProviderFactory.init(config)
::Provider::ProviderFactory.all.each do |p|
next if p.certificate_path.nil? or p.certificate_path.empty?
begin
mongo.key p.ssh_key, Devops::Model::Key::SYSTEM
rescue RecordNotFound => e
k = Devops::Model::Key.new({"id" => p.ssh_key, "path" => p.certificate_path, "scope" => Devops::Model::Key::SYSTEM})
mongo.key_insert k
end
end
ExpireHandler.init
Stubber.stub_providers!(config[:stub_providers])
end

View File

@ -20,7 +20,7 @@ module ServerCommands
DevopsLogger.logger.info "Server with parameters: #{s.to_hash.inspect} is running"
key = mongo.key(s.key)
return two_phase_bootstrap(s, out, provider, key.path)
rescue IOError => e
rescue => e
DevopsLogger.logger.error e.message
DevopsLogger.logger.warn roll_back(s, provider)
mongo.server_delete s.id
@ -95,11 +95,11 @@ module ServerCommands
def two_phase_bootstrap s, out, provider, cert_path
mongo = ::Devops::Db.connector
out << "\n\nBootstrap..."
out << "\n\nBootstrap...\n"
out.flush if out.respond_to?(:flush)
run_list = s.options[:run_list]
s.options[:run_list] = provider.run_list
out << "\nBootstrap with provider run list: #{s.options[:run_list].inspect}"
out << "Bootstrap with provider run list: #{s.options[:run_list].inspect}\n"
s.chef_node_name = provider.create_default_chef_node_name(s) if s.chef_node_name.nil?
status = bootstrap(s, out, cert_path)
out.flush if out.respond_to?(:flush)

View File

@ -1,3 +1,4 @@
require "db/mongo/models/key"
module Connectors
class Key < Base
include Helpers::InsertCommand,

View File

@ -60,7 +60,7 @@ module Devops
self.key = s["key"]
self.reserved_by = s["reserved_by"]
self.stack = s["stack"]
self.run_list = p["run_list"] || []
self.run_list = s["run_list"] || []
end
def create

View File

@ -151,13 +151,14 @@ module Provider
details = compute.get_server_details(s.id).body
status = details["server"]["status"].upcase
if status == "ERROR"
out << "Server returns status 'ERROR'"
out << " error\nServer returns status 'ERROR'"
out << details["server"]
return false
end
end
network = networks[0]["name"]
s.private_ip = details["server"]["addresses"][network][0]["addr"]
out << "\nDone\n\n"
out << " done\n\n"
out << s.info
true
end