diff options
author | Jeroen van Baarsen <jeroenvanbaarsen@gmail.com> | 2015-02-27 16:34:09 +0100 |
---|---|---|
committer | Jeroen van Baarsen <jeroenvanbaarsen@gmail.com> | 2015-02-28 13:46:50 +0100 |
commit | b5be3fc2e23865e7620245ddc712ef29ed35c478 (patch) | |
tree | 3d1d44329db4491937255c9cd6966ebf794c761b | |
parent | 167ce7ac245523dfb89bc3d63508b6bfcdf02d88 (diff) | |
download | gitlab-ci-b5be3fc2e23865e7620245ddc712ef29ed35c478.tar.gz |
Only update trace when trace is given
Fixes #295
Signed-off-by: Jeroen van Baarsen <jeroenvanbaarsen@gmail.com>
-rw-r--r-- | lib/api/builds.rb | 2 | ||||
-rw-r--r-- | spec/requests/api/builds_spec.rb | 7 |
2 files changed, 8 insertions, 1 deletions
diff --git a/lib/api/builds.rb b/lib/api/builds.rb index ba40c89..c4bcf88 100644 --- a/lib/api/builds.rb +++ b/lib/api/builds.rb @@ -32,7 +32,7 @@ module API put ":id" do authenticate_runner! build = Build.where(runner_id: current_runner.id).running.find(params[:id]) - build.update_attributes(trace: params[:trace]) + build.update_attributes(trace: params[:trace]) if params[:trace] case params[:state].to_s when 'success' diff --git a/spec/requests/api/builds_spec.rb b/spec/requests/api/builds_spec.rb index d58441e..fd0e0cd 100644 --- a/spec/requests/api/builds_spec.rb +++ b/spec/requests/api/builds_spec.rb @@ -60,6 +60,13 @@ describe API::API do put api("/builds/#{build.id}"), token: runner.token response.status.should == 200 end + + it 'Should not override trace information when no trace is given' do + build.run! + build.update!(trace: 'hello_world') + put api("/builds/#{build.id}"), token: runner.token + expect(build.reload.trace).to eq 'hello_world' + end end end |