新增:加入同步方向逻辑
This commit is contained in:
parent
b3a51f2f74
commit
a98fe05599
|
@ -30,7 +30,11 @@ class Api::V1::Projects::SyncRepositoriesController < Api::V1::BaseController
|
|||
@sync_repositories = SyncRepository.where(project: @project, sync_direction: params[:sync_direction])
|
||||
end
|
||||
branch = params[:ref].split("refs/heads/")[-1]
|
||||
@sync_repository_branches = SyncRepositoryBranch.where(sync_repository_id: @sync_repositories, gitlink_branch_name: branch, enable: true)
|
||||
if params[:sync_direction].to_i == 1
|
||||
@sync_repository_branches = SyncRepositoryBranch.where(sync_repository_id: @sync_repositories, gitlink_branch_name: branch, enable: true)
|
||||
else
|
||||
@sync_repository_branches = SyncRepositoryBranch.where(sync_repository_id: @sync_repositories, external_branch_name: branch, enable: true)
|
||||
end
|
||||
# 全部分支同步暂时不做
|
||||
# @sync_repositories.each do |item|
|
||||
# TouchSyncJob.perform_later(item)
|
||||
|
|
|
@ -22,5 +22,17 @@ class SyncRepositoryBranch < ApplicationRecord
|
|||
|
||||
belongs_to :sync_repository
|
||||
|
||||
before_destroy :unbind_reposyncer
|
||||
|
||||
enum sync_status: {success: 1, failure: 2}
|
||||
|
||||
|
||||
def unbind_reposyncer
|
||||
if self.sync_repository.sync_direction.to_i == 1
|
||||
Reposync::DeleteRepoService.call(self.sync_repository&.repo_name, self.gitlink_branch_name)
|
||||
else
|
||||
Reposync::DeleteRepoService.call(self.sync_repository&.repo_name, self.external_branch_name)
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue