mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-04-02 06:51:40 +00:00
Merge pull request #12161 from mkllnk/reset
Add rake task to reset queued jobs
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
# ENV vars for the test environment
|
||||
# Override locally with `.env.test.local`
|
||||
|
||||
OFN_REDIS_JOBS_URL="redis://localhost:6379/2"
|
||||
|
||||
SECRET_TOKEN="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
|
||||
STRIPE_INSTANCE_SECRET_KEY="bogus_key"
|
||||
STRIPE_CUSTOMER="bogus_customer"
|
||||
|
||||
27
lib/tasks/reset.rake
Normal file
27
lib/tasks/reset.rake
Normal file
@@ -0,0 +1,27 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require 'sidekiq/api'
|
||||
|
||||
namespace :ofn do
|
||||
task reset: :environment do
|
||||
Rake::Task["ofn:reset_sidekiq"].invoke
|
||||
Rake::Task["db:reset"].invoke
|
||||
end
|
||||
|
||||
task reset_sidekiq: :environment do
|
||||
# Clear retry set
|
||||
Sidekiq::RetrySet.new.clear
|
||||
|
||||
# Clear scheduled jobs
|
||||
Sidekiq::ScheduledSet.new.clear
|
||||
|
||||
# Clear 'Dead' jobs statistics
|
||||
Sidekiq::DeadSet.new.clear
|
||||
|
||||
# Clear 'Processed' and 'Failed' jobs statistics
|
||||
Sidekiq::Stats.new.reset
|
||||
|
||||
# Clear all queues
|
||||
Sidekiq::Queue.all.map(&:clear)
|
||||
end
|
||||
end
|
||||
26
spec/lib/tasks/reset_spec.rb
Normal file
26
spec/lib/tasks/reset_spec.rb
Normal file
@@ -0,0 +1,26 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
require 'rake'
|
||||
|
||||
describe "reset.rake" do
|
||||
before(:all) do
|
||||
Rake.application.rake_require("tasks/reset")
|
||||
Rake::Task.define_task(:environment)
|
||||
end
|
||||
|
||||
it "clears job queues" do
|
||||
job_class = Class.new do
|
||||
include Sidekiq::Job
|
||||
end
|
||||
job_class.perform_async
|
||||
|
||||
queue = Sidekiq::Queue.all.first # rubocop:disable Rails/RedundantActiveRecordAllMethod
|
||||
|
||||
expect {
|
||||
Rake.application.invoke_task "ofn:reset_sidekiq"
|
||||
}.to change {
|
||||
queue.count
|
||||
}.to(0)
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user