Skip to content

Commit 08d4ddf

Browse files
authored
Merge pull request #422 from FlowCI/feature/1589
Feature/1589
2 parents d80aeed + 429d801 commit 08d4ddf

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+763
-208
lines changed

core/src/main/java/com/flowci/core/auth/config/AuthConfig.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,10 @@
2222
import com.flowci.core.common.domain.Settings;
2323
import com.flowci.core.config.domain.ConfigAction;
2424
import com.flowci.core.flow.domain.FlowAction;
25+
import com.flowci.core.git.controller.GitActions;
2526
import com.flowci.core.job.domain.JobAction;
26-
import com.flowci.core.trigger.domain.TriggerOperations;
27-
import com.flowci.core.secret.domain.SecretAction;
27+
import com.flowci.core.trigger.domain.TriggerActions;
28+
import com.flowci.core.secret.controller.SecretActions;
2829
import com.flowci.core.user.domain.User;
2930
import com.flowci.core.user.domain.UserAction;
3031
import org.springframework.context.annotation.Bean;
@@ -43,19 +44,20 @@ public PermissionMap actionMap() {
4344
// admin
4445
permissionMap.add(User.Role.Admin, FlowAction.ALL);
4546
permissionMap.add(User.Role.Admin, JobAction.ALL);
46-
permissionMap.add(User.Role.Admin, SecretAction.ALL);
47+
permissionMap.add(User.Role.Admin, SecretActions.ALL);
4748
permissionMap.add(User.Role.Admin, AgentAction.ALL);
4849
permissionMap.add(User.Role.Admin, AgentHostAction.ALL);
4950
permissionMap.add(User.Role.Admin, UserAction.ALL);
5051
permissionMap.add(User.Role.Admin, ConfigAction.ALL);
51-
permissionMap.add(User.Role.Admin, TriggerOperations.ALL);
52+
permissionMap.add(User.Role.Admin, TriggerActions.ALL);
53+
permissionMap.add(User.Role.Admin, GitActions.ALL);
5254
permissionMap.add(User.Role.Admin, Settings.Action.ALL);
5355

5456
// developer
5557
permissionMap.add(User.Role.Developer,
5658
FlowAction.GET, FlowAction.LIST, FlowAction.LIST_BRANCH, FlowAction.GET, FlowAction.GET_YML);
5759
permissionMap.add(User.Role.Developer, JobAction.ALL);
58-
permissionMap.add(User.Role.Developer, SecretAction.LIST_NAME);
60+
permissionMap.add(User.Role.Developer, SecretActions.LIST_NAME);
5961
permissionMap.add(User.Role.Developer, AgentAction.GET, AgentAction.LIST);
6062
permissionMap.add(User.Role.Developer, AgentHostAction.GET, AgentHostAction.LIST);
6163
permissionMap.add(User.Role.Developer, UserAction.CHANGE_PASSWORD, UserAction.UPDATE_AVATAR);

core/src/main/java/com/flowci/core/common/adviser/ExceptionAdviser.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@
4545
"com.flowci.core.config",
4646
"com.flowci.core.trigger",
4747
"com.flowci.core.api",
48+
"com.flowci.core.git",
4849
"com.flowci.core.common.controller"
4950
})
5051
public class ExceptionAdviser {

core/src/main/java/com/flowci/core/common/adviser/ResponseMessageAdviser.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
"com.flowci.core.config",
4242
"com.flowci.core.trigger",
4343
"com.flowci.core.api",
44+
"com.flowci.core.git",
4445
"com.flowci.core.common.controller"
4546
})
4647
public class ResponseMessageAdviser implements ResponseBodyAdvice {

core/src/main/java/com/flowci/core/common/config/AppConfig.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,11 +130,12 @@ public void multicastEvent(ApplicationEvent event, ResolvableType eventType) {
130130
}
131131

132132
@Bean("httpClient")
133-
public HttpClient httpClient() {
133+
public HttpClient httpClient(TaskExecutor appTaskExecutor) {
134134
return HttpClient.newBuilder()
135135
.version(HttpClient.Version.HTTP_1_1)
136136
.followRedirects(HttpClient.Redirect.NORMAL)
137137
.connectTimeout(Duration.ofSeconds(10))
138+
.executor(appTaskExecutor)
138139
.build();
139140
}
140141
}

core/src/main/java/com/flowci/core/common/config/WebConfig.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ public void addInterceptors(InterceptorRegistry registry) {
8080
.addPathPatterns("/configs/**")
8181
.addPathPatterns("/triggers/**")
8282
.addPathPatterns("/system/**")
83+
.addPathPatterns("/gitconfig/**")
8384
.addPathPatterns("/auth/logout");
8485

8586
registry.addInterceptor(apiAuth)

core/src/main/java/com/flowci/core/common/domain/Variables.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,6 @@ public abstract static class Flow {
4242

4343
public static final String Name = "FLOWCI_FLOW_NAME";
4444

45-
public static final String GitUrl = "FLOWCI_GIT_URL"; // set
46-
47-
public static final String GitRepo = "FLOWCI_GIT_REPO"; // set
48-
49-
public static final String GitCredential = "FLOWCI_GIT_CREDENTIAL"; // set
5045
}
5146

5247
public abstract static class Job {
@@ -103,6 +98,12 @@ public abstract static class Agent {
10398

10499
public abstract static class Git {
105100

101+
public static final String URL = "FLOWCI_GIT_URL"; // set
102+
103+
public static final String REPO_NAME = "FLOWCI_GIT_REPO"; // set
104+
105+
public static final String SECRET = "FLOWCI_GIT_CREDENTIAL"; // set
106+
106107
public static final String EVENT_ID = "FLOWCI_GIT_EVENT_ID";
107108

108109
/**
@@ -116,7 +117,7 @@ public abstract static class Git {
116117
public static final String EVENT = "FLOWCI_GIT_EVENT";
117118

118119
/**
119-
* Used for git clone
120+
* Used for git clone, will be put to job context from gitclone plugin
120121
*/
121122
public static final String COMMIT_ID = "FLOWCI_GIT_COMMIT_ID";
122123

core/src/main/java/com/flowci/core/flow/controller/GitController.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
import com.flowci.core.flow.domain.FlowAction;
2222
import com.flowci.core.flow.domain.FlowGitTest;
2323
import com.flowci.core.flow.service.FlowService;
24-
import com.flowci.core.flow.service.GitService;
24+
import com.flowci.core.flow.service.GitConnService;
2525
import com.flowci.util.StringHelper;
2626
import java.util.List;
2727
import org.springframework.beans.factory.annotation.Autowired;
@@ -44,7 +44,7 @@ public class GitController {
4444
private FlowService flowService;
4545

4646
@Autowired
47-
private GitService gitService;
47+
private GitConnService gitConnService;
4848

4949
@PostMapping(value = "/{name}/git/test")
5050
@Action(FlowAction.GIT_TEST)
@@ -53,26 +53,26 @@ public void gitTest(@PathVariable String name, @Validated @RequestBody FlowGitTe
5353
String gitUrl = body.getGitUrl();
5454

5555
if (body.hasCredential()) {
56-
gitService.testConn(flow, gitUrl, body.getSecret());
56+
gitConnService.testConn(flow, gitUrl, body.getSecret());
5757
return;
5858
}
5959

6060
if (body.hasPrivateKey()) {
61-
gitService.testConn(flow, gitUrl, body.getRsa());
61+
gitConnService.testConn(flow, gitUrl, body.getRsa());
6262
return;
6363
}
6464

6565
if (body.hasUsernamePassword()) {
66-
gitService.testConn(flow, gitUrl, body.getAuth());
66+
gitConnService.testConn(flow, gitUrl, body.getAuth());
6767
}
6868

69-
gitService.testConn(flow, gitUrl, StringHelper.EMPTY);
69+
gitConnService.testConn(flow, gitUrl, StringHelper.EMPTY);
7070
}
7171

7272
@GetMapping(value = "/{name}/git/branches")
7373
@Action(FlowAction.LIST_BRANCH)
7474
public List<String> listGitBranches(@PathVariable String name) {
7575
Flow flow = flowService.get(name);
76-
return gitService.listGitBranch(flow);
76+
return gitConnService.listGitBranch(flow);
7777
}
7878
}

core/src/main/java/com/flowci/core/flow/domain/Flow.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -109,11 +109,11 @@ public String pathName() {
109109
}
110110

111111
public String getCredentialName() {
112-
return findVar(Variables.Flow.GitCredential);
112+
return findVar(Variables.Git.SECRET);
113113
}
114114

115115
public String getGitUrl() {
116-
return findVar(Variables.Flow.GitUrl);
116+
return findVar(Variables.Git.URL);
117117
}
118118

119119
/**

core/src/main/java/com/flowci/core/flow/service/FlowServiceImpl.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,9 @@
2828
import com.flowci.core.flow.event.FlowCreatedEvent;
2929
import com.flowci.core.flow.event.FlowDeletedEvent;
3030
import com.flowci.core.flow.event.FlowInitEvent;
31-
import com.flowci.core.githook.domain.GitPingTrigger;
32-
import com.flowci.core.githook.domain.GitTrigger;
33-
import com.flowci.core.githook.event.GitHookEvent;
31+
import com.flowci.core.git.domain.GitPingTrigger;
32+
import com.flowci.core.git.domain.GitTrigger;
33+
import com.flowci.core.git.event.GitHookEvent;
3434
import com.flowci.core.job.domain.Job;
3535
import com.flowci.core.job.event.CreateNewJobEvent;
3636
import com.flowci.core.secret.domain.Secret;
@@ -198,11 +198,11 @@ public Flow confirm(String name, ConfirmOption option) {
198198
Vars<VarValue> localVars = flow.getLocally();
199199

200200
if (option.hasGitUrl()) {
201-
localVars.put(Variables.Flow.GitUrl, VarValue.of(option.getGitUrl(), VarType.GIT_URL, true));
201+
localVars.put(Variables.Git.URL, VarValue.of(option.getGitUrl(), VarType.GIT_URL, true));
202202
}
203203

204204
if (option.hasSecret()) {
205-
localVars.put(Variables.Flow.GitCredential, VarValue.of(option.getSecret(), VarType.STRING, true));
205+
localVars.put(Variables.Git.SECRET, VarValue.of(option.getSecret(), VarType.STRING, true));
206206
}
207207

208208
flow.setStatus(Status.CONFIRMED);

core/src/main/java/com/flowci/core/flow/service/GitService.java renamed to core/src/main/java/com/flowci/core/flow/service/GitConnService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
/**
2626
* @author yang
2727
*/
28-
public interface GitService {
28+
public interface GitConnService {
2929

3030
/**
3131
* Test git connection for http or ssh with credential

0 commit comments

Comments
 (0)