기능구현중
This commit is contained in:
31
server/api/project/[id]/commits/refresh.post.ts
Normal file
31
server/api/project/[id]/commits/refresh.post.ts
Normal file
@@ -0,0 +1,31 @@
|
||||
import { requireAuth } from '../../../../utils/session'
|
||||
import { syncProjectGitRepositories } from '../../../../utils/git-sync'
|
||||
import { syncProjectSvnRepositories } from '../../../../utils/svn-sync'
|
||||
|
||||
/**
|
||||
* 프로젝트 커밋 새로고침 (모든 저장소 동기화)
|
||||
* POST /api/project/[id]/commits/refresh
|
||||
*/
|
||||
export default defineEventHandler(async (event) => {
|
||||
await requireAuth(event)
|
||||
const projectId = parseInt(getRouterParam(event, 'id') || '0')
|
||||
|
||||
if (!projectId) {
|
||||
throw createError({ statusCode: 400, message: '프로젝트 ID가 필요합니다.' })
|
||||
}
|
||||
|
||||
// Git과 SVN 모두 동기화
|
||||
const gitResult = await syncProjectGitRepositories(projectId)
|
||||
const svnResult = await syncProjectSvnRepositories(projectId)
|
||||
|
||||
const allResults = [...gitResult.results, ...svnResult.results]
|
||||
const allSuccess = allResults.every(r => r.success)
|
||||
|
||||
return {
|
||||
success: allSuccess,
|
||||
message: allSuccess
|
||||
? `${allResults.length}개 저장소 동기화 완료`
|
||||
: '일부 저장소 동기화 실패',
|
||||
results: allResults
|
||||
}
|
||||
})
|
||||
Reference in New Issue
Block a user