Apply Monkey Patch To Attempt To Fix Sidekiq Admin UI (#5634) [deploy]
* set sidekiq session to be the same as Rails to prevent forbidden UI errors * monkey patch rack until new version is released to make Sidekiq Admin work
This commit is contained in:
parent
e49b0e81e5
commit
33d6dca565
2 changed files with 19 additions and 4 deletions
|
|
@ -1,7 +1,19 @@
|
|||
require "sidekiq/web"
|
||||
# Sidekiq sessions don't play well with Redis based sessions and Devise
|
||||
# <https://github.com/mperham/sidekiq/wiki/Monitoring#sessions-being-lost>
|
||||
Sidekiq::Web.set :sessions, false
|
||||
# Monkey patch `stringify_keys` to make rack 2.1.1 compatible with Sidekiq UI Admin panel.
|
||||
# Should be removed when 2.1.2 is released.
|
||||
# https://github.com/rack/rack/pull/1428
|
||||
module Rack
|
||||
module Session
|
||||
module Abstract
|
||||
class SessionHash
|
||||
private
|
||||
|
||||
def stringify_keys(other)
|
||||
other.to_hash.transform_keys(&:to_s)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Sidekiq.configure_server do |config|
|
||||
sidekiq_url = ApplicationConfig["REDIS_SIDEKIQ_URL"] || ApplicationConfig["REDIS_URL"]
|
||||
|
|
|
|||
|
|
@ -13,6 +13,9 @@ Rails.application.routes.draw do
|
|||
require "sidekiq/web"
|
||||
authenticated :user, ->(user) { user.tech_admin? } do
|
||||
mount DelayedJobWeb, at: "/delayed_job"
|
||||
|
||||
Sidekiq::Web.set :session_secret, Rails.application.secrets[:secret_key_base]
|
||||
Sidekiq::Web.set :sessions, Rails.application.config.session_options
|
||||
mount Sidekiq::Web => "/sidekiq"
|
||||
end
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue