|
|
@@ -46,9 +46,14 @@ public class ProjectServiceImpl implements ProjectService {
|
|
|
public ProjectVO createProject(ProjectDTO projectDTO) throws GitLabApiException {
|
|
|
String projectName=projectDTO.getProjectName();
|
|
|
Visibility visibility=projectDTO.getVisibility();
|
|
|
+ //日志输出项目名称
|
|
|
+ log.info("projectName:"+projectName);
|
|
|
+
|
|
|
Project project=new Project();
|
|
|
project.setName(projectName);
|
|
|
project.setVisibility(visibility);
|
|
|
+ project.setPath(projectName);
|
|
|
+
|
|
|
project=gitlabApi.getProjectApi().createProject(project);
|
|
|
return ProjectVO.builder()
|
|
|
.projectId(Math.toIntExact(project.getId()))
|
|
|
@@ -62,10 +67,17 @@ public class ProjectServiceImpl implements ProjectService {
|
|
|
int userId=projectDTO.getUserId();
|
|
|
GitlabUser gitlabUser = getGitlabUser(userId);
|
|
|
Project project=new Project();
|
|
|
+ log.info("准备创建项目:{}",projectDTO.getProjectName());
|
|
|
project.setName(projectDTO.getProjectName());
|
|
|
project.setVisibility(projectDTO.getVisibility());
|
|
|
+ project.setPath(projectDTO.getProjectName());
|
|
|
+ Namespace namespace=new Namespace();
|
|
|
+ namespace.setName(projectDTO.getProjectName());
|
|
|
+ namespace.setPath(projectDTO.getProjectName());
|
|
|
+ project.setNamespace(namespace);
|
|
|
gitlabApi.setSudoAsId((long) gitlabUser.getGitlabUserId());
|
|
|
project=gitlabApi.getProjectApi().createProject(project);
|
|
|
+ log.info("创建私有项目成功。下一步是加上webhook");
|
|
|
gitlabApi.unsudo();
|
|
|
return ProjectVO.builder()
|
|
|
.projectId(Math.toIntExact(project.getId()))
|
|
|
@@ -90,7 +102,7 @@ public class ProjectServiceImpl implements ProjectService {
|
|
|
log.info("trying to fork project {} to user {} (whose gitlab id is {})", projectId, userId, gitlabUser.getGitlabUserId());
|
|
|
try{
|
|
|
gitlabApi.setSudoAsId((long) gitlabUser.getGitlabUserId());
|
|
|
- project=gitlabApi.getProjectApi().forkProject(projectId, String.valueOf(namespaceId));
|
|
|
+ project=gitlabApi.getProjectApi().forkProject(new Long(projectId), String.valueOf(namespaceId));
|
|
|
project.setVisibility(Visibility.PRIVATE);
|
|
|
project=gitlabApi.getProjectApi().updateProject(project);
|
|
|
}finally {
|
|
|
@@ -111,7 +123,7 @@ public class ProjectServiceImpl implements ProjectService {
|
|
|
Project project;
|
|
|
try{
|
|
|
gitlabApi.sudo("root");
|
|
|
- project=gitlabApi.getProjectApi().forkProject(projectId, String.valueOf(namespaceId));
|
|
|
+ project=gitlabApi.getProjectApi().forkProject(new Long(projectId), String.valueOf(namespaceId));
|
|
|
project.setVisibility(Visibility.PRIVATE);
|
|
|
project=gitlabApi.getProjectApi().updateProject(project);
|
|
|
}finally {
|
|
|
@@ -155,7 +167,8 @@ public class ProjectServiceImpl implements ProjectService {
|
|
|
boolean doPushEvents=webHookDTO.isDoPushEvents();
|
|
|
boolean doIssueEvents=webHookDTO.isDoIssueEvents();
|
|
|
boolean doMergeRequestsEvents=webHookDTO.isDoMergeRequestsEvents();
|
|
|
- gitlabApi.getProjectApi().addHook(projectId, url, doPushEvents, doIssueEvents, doMergeRequestsEvents);
|
|
|
+ log.info("给项目{}添加webhook,url是{}",projectId,url);
|
|
|
+ gitlabApi.getProjectApi().addHook((long)projectId, url, doPushEvents, doIssueEvents, doMergeRequestsEvents);
|
|
|
return true;
|
|
|
}
|
|
|
|