fluke/devops-service/devops-service.rb
2015-02-06 17:21:13 +03:00

62 lines
1.4 KiB
Ruby

require "wisper"
$:.push File.dirname(__FILE__)
require "db/exceptions/invalid_record"
require "db/exceptions/record_not_found"
require "exceptions/dependency_error"
require "db/validators/all"
require "db/mongo/mongo_connector"
require "providers/provider_factory"
require "loader"
require "devops_db"
require "sidekiq/web"
require "test_subscriber"
require "test_subscriber_2"
require_relative "routes/v2.0"
require_relative "client"
require_relative "report"
require_relative "version"
class DevopsService
include Wisper::Publisher
class << self
def routes
config = DevopsConfig.config
Devops::Routes.preffix = config[:url_prefix]
Devops::Routes.route "/version", DevopsVersion
Devops::Routes.route "/v2.0", Devops::Version2_0::Application
Devops::Routes.route "/client", Client.new(config)
Devops::Routes.route "/v2.0/report", ReportRoutes.new(config, "v2")
Devops::Routes.route "/sidekiq", Sidekiq::Web
end
def init
# init database
Devops::Db.init
# init plugins
Devops::Loader.init_plugins
# init routes classes
Devops::Version2_0::Application.init
Devops::Version2_0::Application.register_routes
# init routes paths
routes
# add plugins routes
Devops::Loader.routes
end
end
def self.create_method name, &block
send(:generate_method, name, &block)
end
end
require "wisper_fix"