diff options
author | Nick Thomas <nick@gitlab.com> | 2017-11-20 19:20:23 +0000 |
---|---|---|
committer | Nick Thomas <nick@gitlab.com> | 2017-11-20 19:20:23 +0000 |
commit | 2b594daf9aa10f9a6469addb52f0df283f5347fb (patch) | |
tree | e8e496631f8b6cd83aebcb7b7dd0a913015792d3 | |
parent | 31ba9870ceaa0ec098cae2d0332f4cf5b10e374f (diff) | |
parent | 1f2408f4069e3fa51e17420a463271010a134001 (diff) | |
download | gitlab-ce-2b594daf9aa10f9a6469addb52f0df283f5347fb.tar.gz |
Merge branch '40290-remove-rake-gitlab-sidekiq-drop-post-receive' into 'master'
remove the rake task `gitlab:sidekiq:drop_post_receive`
Closes #40290
See merge request gitlab-org/gitlab-ce!15493
-rw-r--r-- | changelogs/unreleased/40290-remove-rake-gitlab-sidekiq-drop-post-receive.yml | 5 | ||||
-rw-r--r-- | lib/tasks/gitlab/sidekiq.rake | 47 |
2 files changed, 5 insertions, 47 deletions
diff --git a/changelogs/unreleased/40290-remove-rake-gitlab-sidekiq-drop-post-receive.yml b/changelogs/unreleased/40290-remove-rake-gitlab-sidekiq-drop-post-receive.yml new file mode 100644 index 00000000000..9c308321a19 --- /dev/null +++ b/changelogs/unreleased/40290-remove-rake-gitlab-sidekiq-drop-post-receive.yml @@ -0,0 +1,5 @@ +--- +title: Removed unused rake task, 'rake gitlab:sidekiq:drop_post_receive' +merge_request: 15493 +author: +type: fixed diff --git a/lib/tasks/gitlab/sidekiq.rake b/lib/tasks/gitlab/sidekiq.rake deleted file mode 100644 index 6cbc83b8973..00000000000 --- a/lib/tasks/gitlab/sidekiq.rake +++ /dev/null @@ -1,47 +0,0 @@ -namespace :gitlab do - namespace :sidekiq do - QUEUE = 'queue:post_receive'.freeze - - desc 'Drop all Sidekiq PostReceive jobs for a given project' - task :drop_post_receive, [:project] => :environment do |t, args| - unless args.project.present? - abort "Please specify the project you want to drop PostReceive jobs for:\n rake gitlab:sidekiq:drop_post_receive[group/project]" - end - project_path = Project.find_by_full_path(args.project).repository.path_to_repo - - Sidekiq.redis do |redis| - unless redis.exists(QUEUE) - abort "Queue #{QUEUE} is empty" - end - - temp_queue = "#{QUEUE}_#{Time.now.to_i}" - redis.rename(QUEUE, temp_queue) - - # At this point, then post_receive queue is empty. It may be receiving - # new jobs already. We will repopulate it with the old jobs, skipping the - # ones we want to drop. - dropped = 0 - while (job = redis.lpop(temp_queue)) - if repo_path(job) == project_path - dropped += 1 - else - redis.rpush(QUEUE, job) - end - end - # The temp_queue will delete itself after we have popped all elements - # from it - - puts "Dropped #{dropped} jobs containing #{project_path} from #{QUEUE}" - end - end - - def repo_path(job) - job_args = JSON.parse(job)['args'] - if job_args - job_args.first - else - nil - end - end - end -end |