|
|
|
@@ -255,7 +255,7 @@ class ProjectsController < ApplicationController |
|
|
|
def destroy |
|
|
|
if current_user.admin? || @project.manager?(current_user) |
|
|
|
ActiveRecord::Base.transaction do |
|
|
|
Gitea::Repository::DeleteService.new(@project.owner, @project.identifier).call |
|
|
|
Gitea::Repository::DeleteService.new(@project.owner, @project.identifier,current_user.gitea_token).call |
|
|
|
@project.destroy! |
|
|
|
@project.forked_projects.update_all(forked_from_project_id: nil) |
|
|
|
# 如果该项目有所属的项目分类以及为私有项目,需要更新对应数量 |
|
|
|
@@ -305,6 +305,25 @@ class ProjectsController < ApplicationController |
|
|
|
end |
|
|
|
|
|
|
|
def simple |
|
|
|
if !@project.common? && @project&.repository&.mirror&.waiting? |
|
|
|
gitea_result = $gitea_client.get_repos_by_owner_repo(@project&.owner&.login, @project&.identifier) |
|
|
|
if !gitea_result["empty"] |
|
|
|
@project&.update_columns(gpid: gitea_result["id"]) |
|
|
|
@project&.repository&.mirror&.succeeded! |
|
|
|
project_id = @project&.id |
|
|
|
user_id = @project&.owner&.id |
|
|
|
puts "############ mirror project_id,user_id: #{project_id},#{user_id} ############" |
|
|
|
OpenProjectDevOpsJob.set(wait: 5.seconds).perform_later(project_id, user_id) if project_id.present? && user_id.present? |
|
|
|
UpdateProjectTopicJob.set(wait: 1.seconds).perform_later(project_id) if project_id.present? |
|
|
|
puts "############ mirror status: #{repo.mirror.status} ############" |
|
|
|
end |
|
|
|
elsif !@project.common? && @project&.repository&.mirror&.failed? |
|
|
|
Gitea::Repository::DeleteService.new(@project.owner, @project.identifier,current_user.gitea_token).call |
|
|
|
@project.destroy! |
|
|
|
@project.forked_projects.update_all(forked_from_project_id: nil) |
|
|
|
# 如果该项目有所属的项目分类以及为私有项目,需要更新对应数量 |
|
|
|
@project.project_category.decrement!(:private_projects_count, 1) if @project.project_category.present? && !@project.is_public |
|
|
|
end |
|
|
|
# 为了缓存活跃项目的基本信息,后续删除 |
|
|
|
Cache::V2::ProjectCommonService.new(@project.id).read |
|
|
|
# 项目名称,标识,所有者变化时重置缓存 |
|
|
|
|