From 5c0720dd3811aaaf44866663a09f007947c403b4 Mon Sep 17 00:00:00 2001 From: carlad Date: Wed, 4 Jan 2017 18:47:29 +0100 Subject: [PATCH 1/2] add check for single bad build --- lib/travis/hub/service/update_build.rb | 1 + spec/travis/hub/service/update_build_spec.rb | 14 ++++++++++++++ 2 files changed, 15 insertions(+) diff --git a/lib/travis/hub/service/update_build.rb b/lib/travis/hub/service/update_build.rb index 46151f7bb..853b509cf 100644 --- a/lib/travis/hub/service/update_build.rb +++ b/lib/travis/hub/service/update_build.rb @@ -15,6 +15,7 @@ class UpdateBuild < Struct.new(:event, :data) def run exclusive do + return if data[:id] == 187764488 validate update_jobs notify diff --git a/spec/travis/hub/service/update_build_spec.rb b/spec/travis/hub/service/update_build_spec.rb index 1f084fdba..69869aee9 100644 --- a/spec/travis/hub/service/update_build_spec.rb +++ b/spec/travis/hub/service/update_build_spec.rb @@ -1,12 +1,26 @@ describe Travis::Hub::Service::UpdateBuild do let(:now) { Time.now } let(:build) { FactoryGirl.create(:build, jobs: [job], state: state, received_at: now - 10) } + let(:bad_build) { FactoryGirl.create(:build, id: 187764488, jobs: [job], state: state, received_at: now - 10) } let(:job) { FactoryGirl.create(:job, state: state) } let(:amqp) { Travis::Amqp.any_instance } subject { described_class.new(context, event, data) } before { amqp.stubs(:fanout) } + # special check to enable cancelation of build with massive matrix + describe 'special case - specific build' do + let(:state) { :created } + let(:event) { :start } + let(:data) { { id: bad_build.id, started_at: now } } + + it 'ignores a specific build' do + puts bad_build.id + subject.run + expect(bad_build.reload.state).to eql(:created) + end + end + describe 'start event' do let(:state) { :created } let(:event) { :start } From beec62853b8a4fc7464ccacb3dbd7913d05a9672 Mon Sep 17 00:00:00 2001 From: carlad Date: Wed, 4 Jan 2017 20:15:32 +0100 Subject: [PATCH 2/2] add debug output --- lib/travis/hub/service/update_build.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/travis/hub/service/update_build.rb b/lib/travis/hub/service/update_build.rb index 853b509cf..ef882a19f 100644 --- a/lib/travis/hub/service/update_build.rb +++ b/lib/travis/hub/service/update_build.rb @@ -15,7 +15,8 @@ class UpdateBuild < Struct.new(:event, :data) def run exclusive do - return if data[:id] == 187764488 + p data[:id] + return if data[:id].to_i == 187764488 validate update_jobs notify