From d2a36bca9fe94d022457d285ddff6773def601ea Mon Sep 17 00:00:00 2001 From: Anton Martynov Date: Tue, 27 Jan 2015 13:18:26 +0300 Subject: [PATCH] some small changes --- devops-service/devops-service.rb | 6 ++-- devops-service/loader.rb | 54 +++++++------------------------- devops-service/routes/v2.0.rb | 35 +++++++++++++++++++-- 3 files changed, 46 insertions(+), 49 deletions(-) diff --git a/devops-service/devops-service.rb b/devops-service/devops-service.rb index 8ba94b1..56185b4 100644 --- a/devops-service/devops-service.rb +++ b/devops-service/devops-service.rb @@ -1,6 +1,5 @@ #!/usr/bin/env ruby -require "fileutils" require "wisper" $:.push File.dirname(__FILE__) @@ -27,8 +26,6 @@ class DevopsService include Wisper::Publisher -# include Devops::Loader - class << self def routes config @@ -42,9 +39,10 @@ class DevopsService def init config routes config -Devops::Version2_0::Application.init config + Devops::Version2_0::Application.init config DevopsLoader.load DevopsLoader.routes + Devops::Loader.plugins config end end diff --git a/devops-service/loader.rb b/devops-service/loader.rb index 8f98566..f6f3181 100644 --- a/devops-service/loader.rb +++ b/devops-service/loader.rb @@ -1,51 +1,19 @@ -require "json" - -require "routes/v2.0/flavor" -require "routes/v2.0/image" -require "routes/v2.0/filter" -require "routes/v2.0/network" -require "routes/v2.0/group" -require "routes/v2.0/deploy" -require "routes/v2.0/project" -require "routes/v2.0/key" -require "routes/v2.0/user" -require "routes/v2.0/provider" -require "routes/v2.0/tag" -require "routes/v2.0/server" -require "routes/v2.0/script" -require "routes/v2.0/status" -require "routes/v2.0/bootstrap_templates" - -require "routes/v2.0/handlers/provider" -require "routes/v2.0/handlers/bootstrap_templates" -require "routes/v2.0/handlers/deploy" -require "routes/v2.0/handlers/filter" -require "routes/v2.0/handlers/flavor" -require "routes/v2.0/handlers/group" -require "routes/v2.0/handlers/image" -require "routes/v2.0/handlers/network" -require "routes/v2.0/handlers/key" -require "routes/v2.0/handlers/project" -require "routes/v2.0/handlers/script" -require "routes/v2.0/handlers/status" -require "routes/v2.0/handlers/tag" -require "routes/v2.0/handlers/user" -require "routes/v2.0/handlers/server" - module Devops module Loader - def Loader.included(mod) - puts "#{self} included in #{mod}" - if defined?(Devops::Plugin) - routes = {} - plugins = Devops::Plugin.constants.collect{|s| Devops::Plugin.const_get(s)}.select {|const| const.class == Module} - puts plugins.inspect - plugins.each do |p| - p.init(mod) + class << self + def plugins config + + if defined?(Devops::Plugin) + routes = {} + plugins = Devops::Plugin.constants.collect{|s| Devops::Plugin.const_get(s)}.select {|const| const.class == Module} + puts plugins.inspect + plugins.each do |p| + p.init(config) + end end + end end end - end diff --git a/devops-service/routes/v2.0.rb b/devops-service/routes/v2.0.rb index 44b842f..e7b6e03 100644 --- a/devops-service/routes/v2.0.rb +++ b/devops-service/routes/v2.0.rb @@ -2,13 +2,44 @@ require "bundler/setup" require "sinatra/base" require "sinatra/streaming" require "helpers/version_2" +require "json" + +require "routes/v2.0/flavor" +require "routes/v2.0/image" +require "routes/v2.0/filter" +require "routes/v2.0/network" +require "routes/v2.0/group" +require "routes/v2.0/deploy" +require "routes/v2.0/project" +require "routes/v2.0/key" +require "routes/v2.0/user" +require "routes/v2.0/provider" +require "routes/v2.0/tag" +require "routes/v2.0/server" +require "routes/v2.0/script" +require "routes/v2.0/status" +require "routes/v2.0/bootstrap_templates" + +require "routes/v2.0/handlers/provider" +require "routes/v2.0/handlers/bootstrap_templates" +require "routes/v2.0/handlers/deploy" +require "routes/v2.0/handlers/filter" +require "routes/v2.0/handlers/flavor" +require "routes/v2.0/handlers/group" +require "routes/v2.0/handlers/image" +require "routes/v2.0/handlers/network" +require "routes/v2.0/handlers/key" +require "routes/v2.0/handlers/project" +require "routes/v2.0/handlers/script" +require "routes/v2.0/handlers/status" +require "routes/v2.0/handlers/tag" +require "routes/v2.0/handlers/user" +require "routes/v2.0/handlers/server" module Devops module Version2_0 class Application < Sinatra::Base - include Devops::Loader - class << self def init config set :devops_home, config[:devops_dir]