Reverse ref and sha in args and rename pipeline to pipeline_for
This commit is contained in:
parent
517249858e
commit
4b559c9afb
8 changed files with 12 additions and 10 deletions
|
@ -666,7 +666,8 @@ class MergeRequest < ActiveRecord::Base
|
|||
end
|
||||
|
||||
def pipeline
|
||||
@pipeline ||= source_project.pipeline(diff_head_sha, source_branch) if diff_head_sha && source_project
|
||||
return unless diff_head_sha && source_project
|
||||
@pipeline ||= source_project.pipeline_for(source_branch, diff_head_sha)
|
||||
end
|
||||
|
||||
def merge_commit
|
||||
|
|
|
@ -1086,12 +1086,13 @@ class Project < ActiveRecord::Base
|
|||
!namespace.share_with_group_lock
|
||||
end
|
||||
|
||||
def pipeline(sha, ref)
|
||||
def pipeline_for(ref, sha)
|
||||
pipelines.order(id: :desc).find_by(sha: sha, ref: ref)
|
||||
end
|
||||
|
||||
def ensure_pipeline(sha, ref, current_user = nil)
|
||||
pipeline(sha, ref) || pipelines.create(sha: sha, ref: ref, user: current_user)
|
||||
def ensure_pipeline(ref, sha, current_user = nil)
|
||||
pipeline_for(ref, sha) ||
|
||||
pipelines.create(sha: sha, ref: ref, user: current_user)
|
||||
end
|
||||
|
||||
def enable_ci
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
- @related_branches.each do |branch|
|
||||
%li
|
||||
- target = @project.repository.find_branch(branch).target
|
||||
- pipeline = @project.pipeline(target.sha, branch) if target
|
||||
- pipeline = @project.pipeline_for(branch, target.sha) if target
|
||||
- if pipeline
|
||||
%span.related-branch-ci-status
|
||||
= render_pipeline_status(pipeline)
|
||||
|
|
|
@ -40,7 +40,7 @@ class Gitlab::Seeder::Builds
|
|||
commits = @project.repository.commits('master', limit: 5)
|
||||
commits_sha = commits.map { |commit| commit.raw.id }
|
||||
commits_sha.map do |sha|
|
||||
@project.ensure_pipeline(sha, 'master')
|
||||
@project.ensure_pipeline('master', sha)
|
||||
end
|
||||
rescue
|
||||
[]
|
||||
|
|
|
@ -64,7 +64,7 @@ module API
|
|||
ref = branches.first
|
||||
end
|
||||
|
||||
pipeline = @project.ensure_pipeline(commit.sha, ref, current_user)
|
||||
pipeline = @project.ensure_pipeline(ref, commit.sha, current_user)
|
||||
|
||||
name = params[:name] || params[:context]
|
||||
status = GenericCommitStatus.running_or_pending.find_by(pipeline: pipeline, name: name, ref: params[:ref])
|
||||
|
|
|
@ -688,7 +688,7 @@ describe Project, models: true do
|
|||
let(:project) { create :project }
|
||||
let(:pipeline) { create :ci_pipeline, project: project, ref: 'master' }
|
||||
|
||||
subject { project.pipeline(pipeline.sha, 'master') }
|
||||
subject { project.pipeline_for('master', pipeline.sha) }
|
||||
|
||||
it { is_expected.to eq(pipeline) }
|
||||
|
||||
|
|
|
@ -94,7 +94,7 @@ describe API::API, api: true do
|
|||
end
|
||||
|
||||
it "returns status for CI" do
|
||||
pipeline = project.ensure_pipeline(project.repository.commit.sha, 'master')
|
||||
pipeline = project.ensure_pipeline('master', project.repository.commit.sha)
|
||||
get api("/projects/#{project.id}/repository/commits/#{project.repository.commit.id}", user)
|
||||
expect(response).to have_http_status(200)
|
||||
expect(json_response['status']).to eq(pipeline.status)
|
||||
|
|
|
@ -5,7 +5,7 @@ module Ci
|
|||
let(:service) { ImageForBuildService.new }
|
||||
let(:project) { FactoryGirl.create(:empty_project) }
|
||||
let(:commit_sha) { '01234567890123456789' }
|
||||
let(:commit) { project.ensure_pipeline(commit_sha, 'master') }
|
||||
let(:commit) { project.ensure_pipeline('master', commit_sha) }
|
||||
let(:build) { FactoryGirl.create(:ci_build, pipeline: commit) }
|
||||
|
||||
describe '#execute' do
|
||||
|
|
Loading…
Reference in a new issue