summaryrefslogtreecommitdiff
path: root/vendor/gems/sidekiq-reliable-fetch/tests/reliability/config.rb
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/gems/sidekiq-reliable-fetch/tests/reliability/config.rb')
-rw-r--r--vendor/gems/sidekiq-reliable-fetch/tests/reliability/config.rb29
1 files changed, 29 insertions, 0 deletions
diff --git a/vendor/gems/sidekiq-reliable-fetch/tests/reliability/config.rb b/vendor/gems/sidekiq-reliable-fetch/tests/reliability/config.rb
new file mode 100644
index 00000000000..05ffcfca9b5
--- /dev/null
+++ b/vendor/gems/sidekiq-reliable-fetch/tests/reliability/config.rb
@@ -0,0 +1,29 @@
+# frozen_string_literal: true
+
+require_relative '../../lib/sidekiq-reliable-fetch'
+require_relative 'worker'
+
+REDIS_FINISHED_LIST = 'reliable-fetcher-finished-jids'
+
+NUMBER_OF_WORKERS = ENV['NUMBER_OF_WORKERS'] || 10
+NUMBER_OF_JOBS = ENV['NUMBER_OF_JOBS'] || 1000
+JOB_FETCHER = (ENV['JOB_FETCHER'] || :semi).to_sym # :basic, :semi, :reliable
+TEST_CLEANUP_INTERVAL = 20
+TEST_LEASE_INTERVAL = 5
+WAIT_CLEANUP = TEST_CLEANUP_INTERVAL +
+ TEST_LEASE_INTERVAL +
+ Sidekiq::ReliableFetch::HEARTBEAT_LIFESPAN
+
+Sidekiq.configure_server do |config|
+ if %i[semi reliable].include?(JOB_FETCHER)
+ config[:semi_reliable_fetch] = (JOB_FETCHER == :semi)
+
+ # We need to override these parameters to not wait too long
+ # The default values are good for production use only
+ # These will be ignored for :basic
+ config[:cleanup_interval] = TEST_CLEANUP_INTERVAL
+ config[:lease_interval] = TEST_LEASE_INTERVAL
+
+ Sidekiq::ReliableFetch.setup_reliable_fetch!(config)
+ end
+end