Break Project#perform_housekeeping in two methods

上级 087c1056
......@@ -350,7 +350,10 @@ class Project < ActiveRecord::Base
project.run_after_commit { add_import_job }
end
after_transition started: :finished, do: :perform_housekeeping
after_transition started: :finished do |project, _|
project.reset_cache_and_import_attrs
project.perform_housekeeping
end
end
class << self
......@@ -502,17 +505,22 @@ class Project < ActiveRecord::Base
end
end
def reset_cache_and_import_attrs
run_after_commit do
ProjectCacheWorker.perform_async(self.id)
end
remove_import_data
end
def perform_housekeeping
run_after_commit do
begin
ProjectCacheWorker.perform_async(self.id)
Projects::HousekeepingService.new(self).execute
rescue Projects::HousekeepingService::LeaseTaken => e
Rails.logger.info("Could not perform housekeeping for project #{self.path_with_namespace} (#{self.id}): #{e}")
end
end
remove_import_data
end
def remove_import_data
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册