lib/capistrano/tasks/capistrano2.rb in capistrano-sidekiq-0.4.0 vs lib/capistrano/tasks/capistrano2.rb in capistrano-sidekiq-0.5.0

- old
+ new

@@ -5,18 +5,21 @@ _cset(:sidekiq_pid) { File.join(shared_path, 'pids', 'sidekiq.pid') } _cset(:sidekiq_env) { fetch(:rack_env, fetch(:rails_env, 'production')) } _cset(:sidekiq_tag) { nil } _cset(:sidekiq_log) { File.join(shared_path, 'log', 'sidekiq.log') } + _cset(:sidekiq_config) { "#{current_path}/config/sidekiq.yml" } _cset(:sidekiq_options) { nil } + _cset(:sidekiq_queue) { nil } _cset(:sidekiq_cmd) { "#{fetch(:bundle_cmd, 'bundle')} exec sidekiq" } _cset(:sidekiqctl_cmd) { "#{fetch(:bundle_cmd, 'bundle')} exec sidekiqctl" } _cset(:sidekiq_timeout) { 10 } _cset(:sidekiq_role) { :app } _cset(:sidekiq_processes) { 1 } + _cset(:sidekiq_options_per_process) { nil } if fetch(:sidekiq_default_hooks) before 'deploy:update_code', 'sidekiq:quiet' after 'deploy:stop', 'sidekiq:stop' after 'deploy:start', 'sidekiq:start' @@ -48,9 +51,18 @@ args.push "--index #{idx}" args.push "--pidfile #{pid_file}" args.push "--environment #{fetch(:sidekiq_env)}" args.push "--tag #{fetch(:sidekiq_tag)}" if fetch(:sidekiq_tag) args.push "--logfile #{fetch(:sidekiq_log)}" if fetch(:sidekiq_log) + args.push "--config #{fetch(:sidekiq_config)}" if fetch(:sidekiq_config) + fetch(:sidekiq_queue).each do |queue| + args.push "--queue #{queue}" + end if fetch(:sidekiq_queue) + + if process_options = fetch(:sidekiq_options_per_process) + args.push process_options[idx] + end + args.push fetch(:sidekiq_options) if defined?(JRUBY_VERSION) args.push '>/dev/null 2>&1 &' logger.info 'Since JRuby doesn\'t support Process.daemon, Sidekiq will not be running as a daemon.'