diff options
-rw-r--r-- | app/models/ci/build.rb | 1 | ||||
-rw-r--r-- | app/models/project.rb | 6 |
2 files changed, 6 insertions, 1 deletions
diff --git a/app/models/ci/build.rb b/app/models/ci/build.rb index 5e77fda70b9..f597f920a3b 100644 --- a/app/models/ci/build.rb +++ b/app/models/ci/build.rb @@ -313,6 +313,7 @@ module Ci build_data = Gitlab::BuildDataBuilder.build(self) project.execute_hooks(build_data.dup, :build_hooks) project.execute_services(build_data.dup, :build_hooks) + project.expire_running_or_pending_build_count end def artifacts? diff --git a/app/models/project.rb b/app/models/project.rb index 1375dab8c34..3b5ca05dc3f 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -1013,8 +1013,12 @@ class Project < ActiveRecord::Base end def running_or_pending_build_count - Rails.cache.fetch(['projects', id, 'running_or_pending_build_count'], expires_in: 60) do + Rails.cache.fetch(['projects', id, 'running_or_pending_build_count']) do builds.running_or_pending.count(:all) end end + + def expire_running_or_pending_build_count + Rails.cache.delete(['projects', id, 'running_or_pending_build_count']) + end end |