diff options
author | Shinya Maeda <shinya@gitlab.com> | 2018-03-06 20:33:42 +0900 |
---|---|---|
committer | Shinya Maeda <shinya@gitlab.com> | 2018-03-06 20:33:42 +0900 |
commit | c428aaac6613b9fcfecd479f7bb510a6e74b761c (patch) | |
tree | d042066f5be08e44de77bd22bce5829c930bd661 | |
parent | 6066437385fa0527e97d93fbac46eb6e455a219b (diff) | |
download | gitlab-ce-c428aaac6613b9fcfecd479f7bb510a6e74b761c.tar.gz |
Revert unnecessary code running_or_pending_build_count removal
-rw-r--r-- | app/models/ci/build.rb | 1 | ||||
-rw-r--r-- | app/models/project.rb | 6 | ||||
-rw-r--r-- | spec/features/projects/jobs/user_browses_job_spec.rb | 2 |
3 files changed, 9 insertions, 0 deletions
diff --git a/app/models/ci/build.rb b/app/models/ci/build.rb index 3f037822154..b230b7f47ef 100644 --- a/app/models/ci/build.rb +++ b/app/models/ci/build.rb @@ -359,6 +359,7 @@ module Ci project.execute_hooks(build_data.dup, :job_hooks) project.execute_services(build_data.dup, :job_hooks) PagesService.new(build_data).execute + project.running_or_pending_build_count(force: true) end def artifacts_metadata_entry(path, **options) diff --git a/app/models/project.rb b/app/models/project.rb index 58c4094918c..a11b1e4f554 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -1494,6 +1494,12 @@ class Project < ActiveRecord::Base update_column(:import_jid, nil) end + def running_or_pending_build_count(force: false) + Rails.cache.fetch(['projects', id, 'running_or_pending_build_count'], force: force) do + builds.running_or_pending.count(:all) + end + end + # Lazy loading of the `pipeline_status` attribute def pipeline_status @pipeline_status ||= Gitlab::Cache::Ci::ProjectPipelineStatus.load_for_project(self) diff --git a/spec/features/projects/jobs/user_browses_job_spec.rb b/spec/features/projects/jobs/user_browses_job_spec.rb index 48462c193f1..4c49cff30d4 100644 --- a/spec/features/projects/jobs/user_browses_job_spec.rb +++ b/spec/features/projects/jobs/user_browses_job_spec.rb @@ -31,5 +31,7 @@ describe 'User browses a job', :js do page.within('.erased') do expect(page).to have_content('Job has been erased') end + + expect(build.project.running_or_pending_build_count).to eq(build.project.builds.running_or_pending.count(:all)) end end |