diff --git a/environment.rb b/environment.rb index 0decbef7..cebbdea8 100644 --- a/environment.rb +++ b/environment.rb @@ -25,6 +25,14 @@ if defined?(Pry) Pry.commands.alias_command 'f', 'finish' end +Sidekiq.configure_server do |config| + config.redis = { namespace: 'neocitiesworker' } +end + +Sidekiq.configure_client do |config| + config.redis = { namespace: 'neocitiesworker' } +end + require File.join(DIR_ROOT, 'jobs', 'screenshot_job.rb') Sequel.datetime_class = Time diff --git a/workers/screenshot_worker.rb b/workers/screenshot_worker.rb index 31f6658c..4a6bb3bc 100644 --- a/workers/screenshot_worker.rb +++ b/workers/screenshot_worker.rb @@ -3,6 +3,8 @@ require 'RMagick' class ScreenshotWorker include Sidekiq::Worker + queue :screenshots + retry 10 def perform(username) screenshot = Tempfile.new 'neocities_screenshot' @@ -13,7 +15,7 @@ class ScreenshotWorker driver = Selenium::WebDriver.for :remote, url: $config['phantomjs_url'][rand($config['phantomjs_url'].length)], desired_capabilities: caps driver.manage.window.resize_to 1280, 720 - wait = Selenium::WebDriver::Wait.new(:timeout => 30) # seconds + wait = Selenium::WebDriver::Wait.new(timeout: 30) # seconds wait.until { driver.navigate.to "http://#{username}.neocities.org" driver.save_screenshot screenshot.path