summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomasz Maczukin <tomasz@maczukin.pl>2018-03-06 16:43:44 +0100
committerTomasz Maczukin <tomasz@maczukin.pl>2018-03-28 13:58:16 +0200
commit12401758a40868b1683c2c208d756105fd43de7b (patch)
treee99e8b5794a4565b34f7d47bc30eb1081981ed9c
parentd58d3098f159a17fbcf1ae27165c249722990988 (diff)
downloadgitlab-ce-12401758a40868b1683c2c208d756105fd43de7b.tar.gz
BuildMetadata styling improvements
-rw-r--r--app/models/ci/build_metadata.rb10
-rw-r--r--spec/models/ci/build_spec.rb15
2 files changed, 12 insertions, 13 deletions
diff --git a/app/models/ci/build_metadata.rb b/app/models/ci/build_metadata.rb
index 335209e8ec2..424b6da1014 100644
--- a/app/models/ci/build_metadata.rb
+++ b/app/models/ci/build_metadata.rb
@@ -19,13 +19,13 @@ module Ci
}
def save_timeout_state!
- project_timeout = build.project&.build_timeout
- timeout = [project_timeout, build.runner&.maximum_timeout].compact.min
+ return unless build.runner.present?
- self.timeout = timeout
- self.timeout_source = timeout < project_timeout ? :runner_timeout_source : :project_timeout_source
+ project_timeout = build.project&.build_timeout
+ timeout = [project_timeout, build.runner.maximum_timeout].compact.min
+ timeout_source = timeout < project_timeout ? :runner_timeout_source : :project_timeout_source
- save!
+ update_attributes(timeout: timeout, timeout_source: timeout_source)
end
end
end
diff --git a/spec/models/ci/build_spec.rb b/spec/models/ci/build_spec.rb
index cdc2c5a8679..6affd05d8aa 100644
--- a/spec/models/ci/build_spec.rb
+++ b/spec/models/ci/build_spec.rb
@@ -1283,8 +1283,10 @@ describe Ci::Build do
build.run!
end
- it 'returns project timeout configuration' do
- is_expected.to eq(project2.build_timeout)
+ context 'when runner is not assigned' do
+ it 'returns project timeout configuration' do
+ is_expected.to be_nil
+ end
end
context 'when runner sets timeout to bigger value' do
@@ -2045,8 +2047,7 @@ describe Ci::Build do
let(:job) { create(:ci_build, :pending, runner: runner) }
before do
- job.project.build_timeout = 1800
- job.project.save!
+ job.project.update_attribute(:build_timeout, 1800)
end
shared_examples 'saves data on transition' do
@@ -2064,8 +2065,7 @@ describe Ci::Build do
let(:expected_timeout_source) { 'runner_timeout_source' }
before do
- runner.maximum_timeout = 900
- runner.save!
+ runner.update_attribute(:maximum_timeout, 900)
end
it_behaves_like 'saves data on transition'
@@ -2076,8 +2076,7 @@ describe Ci::Build do
let(:expected_timeout_source) { 'project_timeout_source' }
before do
- runner.maximum_timeout = 3600
- runner.save!
+ runner.update_attribute(:maximum_timeout, 3600)
end
it_behaves_like 'saves data on transition'