diff --git a/app/tasks/check_mirror_rake.rb b/app/tasks/check_mirror_rake.rb index aa9332349..75255118c 100644 --- a/app/tasks/check_mirror_rake.rb +++ b/app/tasks/check_mirror_rake.rb @@ -1,12 +1,19 @@ class CheckMirrorRake - # 运行示例: bundle exec rails runner "CheckMirrorRake.new.call()" + # 运行示例: 检查哪些项目的repo不存在,bundle exec rails runner "CheckMirrorRake.new.call()" def call SyncLog.sync_log("=====begin to check mirror======") + empty_repo = [] all_projects = Project.select(:id,:identifier,:user_id, :gpid, :forked_count,:is_public).includes(:owner, :repository) all_projects.each do |project| SyncLog.sync_log("=====check_project_id:#{project.id}======") - CheckMirrorJob.perform_later(project) + # CheckMirrorJob.perform_later(project) + + response = Gitea::Repository::Branches::ListService.new(project.owner, project.identifier).call + unless response.present? + empty_repo.push(project.id) + end end + SyncLog.sync_log("=====completed_response:#{empty_repo}======") end end \ No newline at end of file diff --git a/app/tasks/create_mirror_take.rb b/app/tasks/create_mirror_take.rb new file mode 100644 index 000000000..e794c9f8f --- /dev/null +++ b/app/tasks/create_mirror_take.rb @@ -0,0 +1,14 @@ +class CreateMirrorRake + # 运行示例: 检查哪些项目的repo不存在,bundle exec rails runner "CreateMirrorRake.new.call()" + + def call + SyncLog.sync_log("=====begin to create mirror======") + empty_repo = [] + all_projects = Project.select(:id,:identifier,:user_id, :gpid, :forked_count,:is_public).includes(:owner, :repository) + all_projects.each do |project| + SyncLog.sync_log("=====check_project_id:#{project.id}======") + CheckMirrorJob.perform_later(project) + end + SyncLog.sync_log("=====completed_response======") + end + end \ No newline at end of file