diff options
author | Yorick Peterse <yorickpeterse@gmail.com> | 2016-06-23 09:00:01 +0000 |
---|---|---|
committer | Yorick Peterse <yorickpeterse@gmail.com> | 2016-06-23 09:00:01 +0000 |
commit | f9e59b36016c3d696b4e798c0642874e2f8f76ec (patch) | |
tree | a5a85b79b4d29fe00f3ba8f28177cd2c20b3300d | |
parent | c6f14956d64e726f613c0092587f97444beeebb7 (diff) | |
parent | f893fbaa2cd56b76d12c3f15a1c6848d96f2421b (diff) | |
download | gitlab-shell-f9e59b36016c3d696b4e798c0642874e2f8f76ec.tar.gz |
Merge branch 'enqueued_at_for_jobs' into 'master'
Update PostReceive worker to provide enqueued_at time
See merge request !63
-rw-r--r-- | CHANGELOG | 3 | ||||
-rw-r--r-- | lib/gitlab_post_receive.rb | 7 | ||||
-rw-r--r-- | spec/gitlab_post_receive_spec.rb | 4 |
3 files changed, 12 insertions, 2 deletions
@@ -1,3 +1,6 @@ +v3.0.1 + - Update PostReceive worker to provide enqueued_at time. + v3.0.0 - Remove rm-tag command (Robert Schilling) - Remove create-branch and rm-branch commands (Robert Schilling) diff --git a/lib/gitlab_post_receive.rb b/lib/gitlab_post_receive.rb index 9f75433..4b80174 100644 --- a/lib/gitlab_post_receive.rb +++ b/lib/gitlab_post_receive.rb @@ -73,7 +73,12 @@ class GitlabPostReceive changes = Base64.encode64(@changes) queue = "#{config.redis_namespace}:queue:post_receive" - msg = JSON.dump({ 'class' => 'PostReceive', 'args' => [@repo_path, @actor, changes], 'jid' => @jid }) + msg = JSON.dump({ + 'class' => 'PostReceive', + 'args' => [@repo_path, @actor, changes], + 'jid' => @jid, + 'enqueued_at' => Time.now.to_f + }) begin GitlabNet.new.redis_client.rpush(queue, msg) diff --git a/spec/gitlab_post_receive_spec.rb b/spec/gitlab_post_receive_spec.rb index 0392bee..26b1037 100644 --- a/spec/gitlab_post_receive_spec.rb +++ b/spec/gitlab_post_receive_spec.rb @@ -13,10 +13,12 @@ describe GitlabPostReceive do let(:gitlab_post_receive) { GitlabPostReceive.new(repo_path, actor, wrongly_encoded_changes) } let(:message) { "test " * 10 + "message " * 10 } let(:redis_client) { double('redis_client') } + let(:enqueued_at) { Time.new(2016, 6, 23, 6, 59) } before do GitlabConfig.any_instance.stub(repos_path: repository_path) GitlabNet.any_instance.stub(broadcast_message: { "message" => message }) + expect(Time).to receive(:now).and_return(enqueued_at) end describe "#exec" do @@ -51,7 +53,7 @@ describe GitlabPostReceive do it "pushes a Sidekiq job onto the queue" do expect(redis_client).to receive(:rpush).with( 'resque:gitlab:queue:post_receive', - %Q/{"class":"PostReceive","args":["#{repo_path}","#{actor}",#{base64_changes.inspect}],"jid":"#{gitlab_post_receive.jid}"}/ + %Q/{"class":"PostReceive","args":["#{repo_path}","#{actor}",#{base64_changes.inspect}],"jid":"#{gitlab_post_receive.jid}","enqueued_at":#{enqueued_at.to_f}}/ ).and_return(true) gitlab_post_receive.exec |