Do not fsck projects less than a day old
This should bring the number of false positives down.
This commit is contained in:
parent
f127edd012
commit
3c0ab15a74
|
@ -33,8 +33,8 @@ module RepositoryCheck
|
|||
# has to sit and wait for this query to finish.
|
||||
def project_ids
|
||||
limit = 10_000
|
||||
never_checked_projects = Project.where('last_repository_check_at IS NULL').limit(limit).
|
||||
pluck(:id)
|
||||
never_checked_projects = Project.where('last_repository_check_at IS NULL AND created_at < ?', 24.hours.ago).
|
||||
limit(limit).pluck(:id)
|
||||
old_check_projects = Project.where('last_repository_check_at < ?', 1.month.ago).
|
||||
reorder('last_repository_check_at ASC').limit(limit).pluck(:id)
|
||||
never_checked_projects + old_check_projects
|
||||
|
|
|
@ -4,7 +4,7 @@ describe RepositoryCheck::BatchWorker do
|
|||
subject { described_class.new }
|
||||
|
||||
it 'prefers projects that have never been checked' do
|
||||
projects = create_list(:project, 3)
|
||||
projects = create_list(:project, 3, created_at: 1.week.ago)
|
||||
projects[0].update_column(:last_repository_check_at, 4.months.ago)
|
||||
projects[2].update_column(:last_repository_check_at, 3.months.ago)
|
||||
|
||||
|
@ -12,7 +12,7 @@ describe RepositoryCheck::BatchWorker do
|
|||
end
|
||||
|
||||
it 'sorts projects by last_repository_check_at' do
|
||||
projects = create_list(:project, 3)
|
||||
projects = create_list(:project, 3, created_at: 1.week.ago)
|
||||
projects[0].update_column(:last_repository_check_at, 2.months.ago)
|
||||
projects[1].update_column(:last_repository_check_at, 4.months.ago)
|
||||
projects[2].update_column(:last_repository_check_at, 3.months.ago)
|
||||
|
@ -21,7 +21,7 @@ describe RepositoryCheck::BatchWorker do
|
|||
end
|
||||
|
||||
it 'excludes projects that were checked recently' do
|
||||
projects = create_list(:project, 3)
|
||||
projects = create_list(:project, 3, created_at: 1.week.ago)
|
||||
projects[0].update_column(:last_repository_check_at, 2.days.ago)
|
||||
projects[1].update_column(:last_repository_check_at, 2.months.ago)
|
||||
projects[2].update_column(:last_repository_check_at, 3.days.ago)
|
||||
|
@ -30,10 +30,17 @@ describe RepositoryCheck::BatchWorker do
|
|||
end
|
||||
|
||||
it 'does nothing when repository checks are disabled' do
|
||||
create(:empty_project)
|
||||
create(:empty_project, created_at: 1.week.ago)
|
||||
current_settings = double('settings', repository_checks_enabled: false)
|
||||
expect(subject).to receive(:current_settings) { current_settings }
|
||||
|
||||
expect(subject.perform).to eq(nil)
|
||||
end
|
||||
|
||||
it 'skips projects created less than 24 hours ago' do
|
||||
project = create(:empty_project)
|
||||
project.update_column(:created_at, 23.hours.ago)
|
||||
|
||||
expect(subject.perform).to eq([])
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue