Merge branch 'revert-5c0f2541' into 'master'
Revert "Merge branch 'fix-latest-pipeine-ordering' into 'master'" See merge request !8302
This commit is contained in:
commit
1e38f8ae72
4 changed files with 14 additions and 13 deletions
|
@ -93,8 +93,11 @@ module Ci
|
||||||
.select("max(#{quoted_table_name}.id)")
|
.select("max(#{quoted_table_name}.id)")
|
||||||
.group(:ref, :sha)
|
.group(:ref, :sha)
|
||||||
|
|
||||||
relation = ref ? where(ref: ref) : self
|
if ref
|
||||||
relation.where(id: max_id).order(id: :desc)
|
where(id: max_id, ref: ref)
|
||||||
|
else
|
||||||
|
where(id: max_id)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.latest_status(ref = nil)
|
def self.latest_status(ref = nil)
|
||||||
|
|
|
@ -418,7 +418,7 @@ class Project < ActiveRecord::Base
|
||||||
repository.commit(ref)
|
repository.commit(ref)
|
||||||
end
|
end
|
||||||
|
|
||||||
# ref can't be HEAD or SHA, can only be branch/tag name
|
# ref can't be HEAD, can only be branch/tag name or SHA
|
||||||
def latest_successful_builds_for(ref = default_branch)
|
def latest_successful_builds_for(ref = default_branch)
|
||||||
latest_pipeline = pipelines.latest_successful_for(ref)
|
latest_pipeline = pipelines.latest_successful_for(ref)
|
||||||
|
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
---
|
|
||||||
title: Fix finding the latest pipeline
|
|
||||||
merge_request: 8286
|
|
||||||
author:
|
|
|
@ -424,18 +424,20 @@ describe Ci::Pipeline, models: true do
|
||||||
context 'when no ref is specified' do
|
context 'when no ref is specified' do
|
||||||
let(:pipelines) { described_class.latest.all }
|
let(:pipelines) { described_class.latest.all }
|
||||||
|
|
||||||
it 'gives the latest pipelines for the same ref and different sha in reverse chronological order' do
|
it 'returns the latest pipeline for the same ref and different sha' do
|
||||||
expect(pipelines.map(&:sha)).to eq(%w[C B A])
|
expect(pipelines.map(&:sha)).to contain_exactly('A', 'B', 'C')
|
||||||
expect(pipelines.map(&:status)).to eq(%w[skipped failed success])
|
expect(pipelines.map(&:status)).
|
||||||
|
to contain_exactly('success', 'failed', 'skipped')
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
context 'when ref is specified' do
|
context 'when ref is specified' do
|
||||||
let(:pipelines) { described_class.latest('ref').all }
|
let(:pipelines) { described_class.latest('ref').all }
|
||||||
|
|
||||||
it 'gives the latest pipelines for ref and different sha in reverse chronological order' do
|
it 'returns the latest pipeline for ref and different sha' do
|
||||||
expect(pipelines.map(&:sha)).to eq(%w[B A])
|
expect(pipelines.map(&:sha)).to contain_exactly('A', 'B')
|
||||||
expect(pipelines.map(&:status)).to eq(%w[failed success])
|
expect(pipelines.map(&:status)).
|
||||||
|
to contain_exactly('success', 'failed')
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue