diff --git a/devops-service/auth/devops_auth.rb b/devops-service/auth/devops_auth.rb index b4a9d56..b7f2976 100644 --- a/devops-service/auth/devops_auth.rb +++ b/devops-service/auth/devops_auth.rb @@ -13,6 +13,7 @@ module Sinatra c = @auth.credentials begin Devops::Db.connector.user_auth(c[0], c[1]) + request.env['REMOTE_USER'] = c[0] true rescue RecordNotFound => e false diff --git a/devops-service/devops_config.rb b/devops-service/devops_config.rb index 395933d..d019548 100644 --- a/devops-service/devops_config.rb +++ b/devops-service/devops_config.rb @@ -9,8 +9,7 @@ class DevopsConfig class << self def read config_file=nil if config_file.nil? - root = File.dirname(__FILE__) - config_file = File.join(root, "config.rb") + config_file = ENV["CONFIG"] || File.join(File.dirname(__FILE__), "config.rb") end config = {:url_prefix => ""} if File.exists? config_file diff --git a/devops-service/routes/v2.0.rb b/devops-service/routes/v2.0.rb index cc2c975..7fdae89 100644 --- a/devops-service/routes/v2.0.rb +++ b/devops-service/routes/v2.0.rb @@ -165,6 +165,12 @@ module Devops halt_response(e.message, 401) end + error Excon::Errors::Error do + e = env["sinatra.error"] + logger.warn e.message + halt_response(e.message, 400) + end + =begin error ::Excon::Errors::Unauthorized do e = env["sinatra.error"] diff --git a/devops-service/routes/v2.0/handlers/image.rb b/devops-service/routes/v2.0/handlers/image.rb index a759170..73c7703 100644 --- a/devops-service/routes/v2.0/handlers/image.rb +++ b/devops-service/routes/v2.0/handlers/image.rb @@ -36,7 +36,7 @@ module Devops lambda { check_privileges("image", "w") image = create_object_from_json_body - settings.mongo.image_insert ::Image.new(image) + settings.mongo.image_insert Devops::Model::Image.new(image) create_response "Created", nil, 201 } end diff --git a/devops-service/routes/v2.0/handlers/project.rb b/devops-service/routes/v2.0/handlers/project.rb index 7de7762..47f9c92 100644 --- a/devops-service/routes/v2.0/handlers/project.rb +++ b/devops-service/routes/v2.0/handlers/project.rb @@ -51,6 +51,7 @@ module Devops check_array(body["deploy_envs"], "Parameter 'deploy_envs' must be a not empty array of objects", Hash) p = Devops::Model::Project.new(body) halt_response("Project '#{p.id}' already exist") if settings.mongo.is_project_exists?(p) + puts "USER: #{request.env['REMOTE_USER']}" p.add_authorized_user [request.env['REMOTE_USER']] settings.mongo.project_insert p roles_res = ""