lib/good_job/configuration.rb in good_job-3.21.2 vs lib/good_job/configuration.rb in good_job-3.21.3

- old
+ new

@@ -226,9 +226,19 @@ rails_config[:queue_select_limit] || env['GOOD_JOB_QUEUE_SELECT_LIMIT'] )&.to_i end + # The number of seconds that a good_job process will idle with out running a job before exiting + # @return [Integer, nil] Number of seconds or nil means do not idle out. + def idle_timeout + ( + options[:idle_timeout] || + rails_config[:idle_timeout] || + env['GOOD_JOB_IDLE_TIMEOUT'] + )&.to_i || nil + end + # Whether to automatically destroy discarded jobs that have been preserved. # @return [Boolean] def cleanup_discarded_jobs? return rails_config[:cleanup_discarded_jobs] unless rails_config[:cleanup_discarded_jobs].nil? return ActiveModel::Type::Boolean.new.cast(env['GOOD_JOB_CLEANUP_DISCARDED_JOBS']) unless env['GOOD_JOB_CLEANUP_DISCARDED_JOBS'].nil?