Merge pull request #1018 from glebm/master
Resque Authentication + iFrame view
This commit is contained in:
commit
f73d71810e
7 changed files with 28 additions and 11 deletions
5
app/controllers/admin/resque_controller.rb
Normal file
5
app/controllers/admin/resque_controller.rb
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
class Admin::ResqueController < ApplicationController
|
||||||
|
layout 'admin'
|
||||||
|
def show
|
||||||
|
end
|
||||||
|
end
|
|
@ -4,7 +4,7 @@
|
||||||
%h5
|
%h5
|
||||||
Resque Workers
|
Resque Workers
|
||||||
.data.padded
|
.data.padded
|
||||||
= link_to "/info/resque" do
|
= link_to admin_resque_path do
|
||||||
%h1{:class => @workers.present? ? "cgreen" : "cred"}
|
%h1{:class => @workers.present? ? "cgreen" : "cred"}
|
||||||
= @workers.count
|
= @workers.count
|
||||||
%hr
|
%hr
|
||||||
|
|
2
app/views/admin/resque/show.html.haml
Normal file
2
app/views/admin/resque/show.html.haml
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
%h3 Resque
|
||||||
|
%iframe{:src => "/info/resque", :width => 1168, :height => 600, :style => "border: none"}
|
|
@ -6,10 +6,10 @@
|
||||||
= render "layouts/head_panel", :title => "Admin area"
|
= render "layouts/head_panel", :title => "Admin area"
|
||||||
.container
|
.container
|
||||||
%nav.main_menu
|
%nav.main_menu
|
||||||
= link_to "Stats", admin_root_path, :class => "home #{controller.controller_name == "dashboard" ? "current" : nil}"
|
= link_to "Stats", admin_root_path, :class => "home #{'current' if controller.controller_name == "dashboard"}"
|
||||||
= link_to "Projects", admin_projects_path, :class => controller.controller_name == "projects" ? "current" : nil
|
= link_to "Projects", admin_projects_path, :class => ('current' if controller.controller_name == "projects")
|
||||||
= link_to "Users", admin_users_path, :class => controller.controller_name == "users" ? "current" : nil
|
= link_to "Users", admin_users_path, :class => ('current' if controller.controller_name == 'users')
|
||||||
= link_to "Emails", admin_emails_path, :class => controller.controller_name == "mailer" ? "current" : nil
|
= link_to "Emails", admin_emails_path, :class => ('current' if controller.controller_name == 'mailer')
|
||||||
= link_to "Resque", "/info/resque"
|
= link_to "Resque", admin_resque_path, :class => ('current' if controller.controller_name == 'resque')
|
||||||
|
|
||||||
.content= yield
|
.content= yield
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
require 'resque/server'
|
|
||||||
Resque::Server.use(Rack::Auth::Basic) do |user, password|
|
|
||||||
user == "gitlab"
|
|
||||||
password == "5iveL!fe"
|
|
||||||
end
|
|
14
config/initializers/resque_authentication.rb
Normal file
14
config/initializers/resque_authentication.rb
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
require 'resque/server'
|
||||||
|
class Authentication
|
||||||
|
def initialize(app)
|
||||||
|
@app = app
|
||||||
|
end
|
||||||
|
|
||||||
|
def call(env)
|
||||||
|
account = env['warden'].authenticate!(:database_authenticatable, :rememberable, scope: :user)
|
||||||
|
raise "Access denied" if !account.admin?
|
||||||
|
@app.call(env)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
Resque::Server.use Authentication
|
|
@ -50,6 +50,7 @@ Gitlab::Application.routes.draw do
|
||||||
get 'mailer/preview_note'
|
get 'mailer/preview_note'
|
||||||
get 'mailer/preview_user_new'
|
get 'mailer/preview_user_new'
|
||||||
get 'mailer/preview_issue_new'
|
get 'mailer/preview_issue_new'
|
||||||
|
resource :resque, :controller => 'resque'
|
||||||
root :to => "dashboard#index"
|
root :to => "dashboard#index"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue