Skip to content

Commit

Permalink
don't add duplicate jobs
Browse files Browse the repository at this point in the history
  • Loading branch information
Simon Peeters committed May 9, 2016
1 parent 7350b47 commit 2c82baf
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 1 deletion.
9 changes: 9 additions & 0 deletions app/workers/githosting_shell_worker.rb
Expand Up @@ -3,6 +3,15 @@ class GithostingShellWorker

sidekiq_options queue: :redmine_git_hosting, retry: false

def self.maybe_do(command, object, options = {})
args = [command.to_s, object, options]
Sidekiq::Queue.new(:redmine_git_hosting).each do |job|
return if job.args == args
end

perform_async(command, object, options)
end

def perform(command, object, options = {})
logger.info("#{command} | #{object} | #{options}")
RedmineGitHosting::GitoliteWrapper.resync_gitolite(command, object, options)
Expand Down
2 changes: 1 addition & 1 deletion lib/redmine_git_hosting/gitolite_accessor.rb
Expand Up @@ -140,7 +140,7 @@ def resync_gitolite(command, object, options = {})
end

if RedmineGitHosting::Config.gitolite_use_sidekiq? && !bypass
GithostingShellWorker.perform_async(command, object, options)
GithostingShellWorker.maybe_do(command, object, options)
else
GitoliteWrapper.resync_gitolite(command, object, options)
end
Expand Down

0 comments on commit 2c82baf

Please sign in to comment.