WIP Switch from Sidekiq to Solid Queue
This commit is contained in:
@@ -47,7 +47,8 @@ module Akkounts
|
||||
g.stylesheets false
|
||||
end
|
||||
|
||||
config.active_job.queue_adapter = :sidekiq
|
||||
config.active_job.queue_adapter = :solid_queue
|
||||
config.mission_control.jobs.http_basic_auth_enabled = false
|
||||
|
||||
config.action_mailer.deliver_later_queue_name = nil # use "default" queue
|
||||
|
||||
|
||||
@@ -7,6 +7,10 @@ development:
|
||||
primary:
|
||||
<<: *default
|
||||
database: db/development.sqlite3
|
||||
queue:
|
||||
<<: *default
|
||||
database: db/development_queue.sqlite3
|
||||
migrations_paths: db/queue_migrate
|
||||
lndhub:
|
||||
<<: *default
|
||||
adapter: postgresql
|
||||
|
||||
@@ -54,6 +54,9 @@ Rails.application.configure do
|
||||
# Highlight code that enqueued background job in logs.
|
||||
config.active_job.verbose_enqueue_logs = true
|
||||
|
||||
# Solid Queue database
|
||||
config.solid_queue.connects_to = { database: { writing: :queue } }
|
||||
|
||||
# Suppress logger output for asset requests.
|
||||
# config.assets.quiet = true
|
||||
|
||||
|
||||
@@ -54,8 +54,9 @@ Rails.application.configure do
|
||||
# Replace the default in-process memory cache store with a durable alternative.
|
||||
# config.cache_store = :mem_cache_store
|
||||
|
||||
# Replace the default in-process and non-durable queuing backend for Active Job.
|
||||
# config.active_job.queue_adapter = :resque
|
||||
# Solid Queue database
|
||||
config.solid_queue.connects_to = { database: { writing: :queue } }
|
||||
|
||||
# E-mail settings, adapted from https://github.com/mastodon/mastodon
|
||||
|
||||
outgoing_email_address = ENV.fetch('SMTP_FROM_ADDRESS', 'accounts@localhost')
|
||||
|
||||
11
config/initializers/devise_rails8_patch.rb
Normal file
11
config/initializers/devise_rails8_patch.rb
Normal file
@@ -0,0 +1,11 @@
|
||||
# See https://alvincrespo.hashnode.dev/rails-8s-lazy-route-loading-devise
|
||||
# TODO remove when Devise is fixed
|
||||
require 'devise'
|
||||
Devise # make sure it's already loaded
|
||||
|
||||
module Devise
|
||||
def self.mappings
|
||||
Rails.application.try(:reload_routes_unless_loaded)
|
||||
@@mappings
|
||||
end
|
||||
end
|
||||
21
config/queue.yml
Normal file
21
config/queue.yml
Normal file
@@ -0,0 +1,21 @@
|
||||
default: &default
|
||||
dispatchers:
|
||||
- polling_interval: 1
|
||||
batch_size: 500
|
||||
workers:
|
||||
- queues: "*"
|
||||
threads: 3
|
||||
processes: <%= ENV.fetch("JOB_CONCURRENCY", 1) %>
|
||||
polling_interval: 0.1
|
||||
|
||||
development:
|
||||
<<: *default
|
||||
workers:
|
||||
- queues: "*"
|
||||
threads: 1
|
||||
|
||||
test:
|
||||
<<: *default
|
||||
|
||||
production:
|
||||
<<: *default
|
||||
10
config/recurring.yml
Normal file
10
config/recurring.yml
Normal file
@@ -0,0 +1,10 @@
|
||||
# production:
|
||||
# periodic_cleanup:
|
||||
# class: CleanSoftDeletedRecordsJob
|
||||
# queue: background
|
||||
# args: [ 1000, { batch_size: 500 } ]
|
||||
# schedule: every hour
|
||||
# periodic_command:
|
||||
# command: "SoftDeletedRecord.due.delete_all"
|
||||
# priority: 2
|
||||
# schedule: at 5am every day
|
||||
@@ -123,7 +123,7 @@ Rails.application.routes.draw do
|
||||
end
|
||||
|
||||
authenticate :user, ->(user) { user.is_admin? } do
|
||||
mount Sidekiq::Web, at: '/sidekiq'
|
||||
mount MissionControl::Jobs::Engine, at: "/jobs"
|
||||
mount Flipper::UI.app(Flipper), at: '/flipper'
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user