summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGrzegorz Bizon <grzesiek.bizon@gmail.com>2016-06-15 14:03:43 +0200
committerGrzegorz Bizon <grzesiek.bizon@gmail.com>2016-06-15 14:12:25 +0200
commit2d495fce529cc3ac15f7096ddf9962db0fbd1e23 (patch)
tree66898d776423e166e2bc9ef1a287653e7c704d84
parent69112072ca915e8d051f39bb8642f1c4fee4b692 (diff)
downloadgitlab-ce-2d495fce529cc3ac15f7096ddf9962db0fbd1e23.tar.gz
Remove reduntant method for building pipeline builds
-rw-r--r--app/models/ci/pipeline.rb12
-rw-r--r--app/services/ci/create_builds_service.rb3
-rw-r--r--app/services/create_commit_builds_service.rb2
-rw-r--r--spec/models/ci/pipeline_spec.rb3
-rw-r--r--spec/services/create_commit_builds_service_spec.rb1
5 files changed, 12 insertions, 9 deletions
diff --git a/app/models/ci/pipeline.rb b/app/models/ci/pipeline.rb
index 58c69251824..a26cb7dd7ee 100644
--- a/app/models/ci/pipeline.rb
+++ b/app/models/ci/pipeline.rb
@@ -91,15 +91,14 @@ module Ci
trigger_requests.any?
end
- def build_builds(user, trigger_request = nil)
+ def create_builds(user, trigger_request = nil)
+ ##
+ # We persist pipeline only if there are builds available
+ #
return unless config_processor
build_builds_for_stages(config_processor.stages, user,
- 'success', trigger_request)
- end
-
- def create_builds(user, trigger_request = nil)
- build_builds(user, trigger_request) && save
+ 'success', trigger_request) && save
end
def create_next_builds(build)
@@ -121,7 +120,6 @@ module Ci
# and save pipeline if we have builds
build_builds_for_stages(next_stages, build.user, prior_status,
build.trigger_request) && save
-
end
def retried
diff --git a/app/services/ci/create_builds_service.rb b/app/services/ci/create_builds_service.rb
index f7f73aff989..b2882b23d31 100644
--- a/app/services/ci/create_builds_service.rb
+++ b/app/services/ci/create_builds_service.rb
@@ -22,7 +22,8 @@ module Ci
# don't create the same build twice
builds_attrs.reject! do |build_attrs|
- @pipeline.builds.find_by(ref: @pipeline.ref, tag: @pipeline.tag,
+ @pipeline.builds.find_by(ref: @pipeline.ref,
+ tag: @pipeline.tag,
trigger_request: trigger_request,
name: build_attrs[:name])
end
diff --git a/app/services/create_commit_builds_service.rb b/app/services/create_commit_builds_service.rb
index 668d0a86549..f947e8f452e 100644
--- a/app/services/create_commit_builds_service.rb
+++ b/app/services/create_commit_builds_service.rb
@@ -42,7 +42,7 @@ class CreateCommitBuildsService
##
# Skip creating pipeline object if there are no builds for it.
#
- unless @pipeline.build_builds(user)
+ unless @pipeline.create_builds(user)
@pipeline.errors.add(:base, 'No builds created')
return false
end
diff --git a/spec/models/ci/pipeline_spec.rb b/spec/models/ci/pipeline_spec.rb
index 458013ad9f2..34507cf5083 100644
--- a/spec/models/ci/pipeline_spec.rb
+++ b/spec/models/ci/pipeline_spec.rb
@@ -260,12 +260,15 @@ describe Ci::Pipeline, models: true do
end
context 'when no builds created' do
+ let(:pipeline) { build(:ci_pipeline) }
+
before do
stub_ci_pipeline_yaml_file(YAML.dump(before_script: ['ls']))
end
it 'returns false' do
expect(pipeline.create_builds(nil)).to be_falsey
+ expect(pipeline).not_to be_persisted
end
end
end
diff --git a/spec/services/create_commit_builds_service_spec.rb b/spec/services/create_commit_builds_service_spec.rb
index 50ce9659c10..deab242f45a 100644
--- a/spec/services/create_commit_builds_service_spec.rb
+++ b/spec/services/create_commit_builds_service_spec.rb
@@ -184,6 +184,7 @@ describe CreateCommitBuildsService, services: true do
before: '00000000',
after: '31das312',
commits: [{ message: 'some msg' }])
+
expect(result).to be_falsey
expect(Ci::Build.all).to be_empty
expect(Ci::Pipeline.count).to eq(0)