Skip to content

Commit 797e156

Browse files
authored
Merge pull request #328 from FlowCI/develop
Develop
2 parents 44f1a75 + 7a35f57 commit 797e156

Some content is hidden

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

56 files changed

+704
-427
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,5 @@ target/
66
.project
77
.settings/
88
.classpath
9-
.factorypath
9+
.factorypath
10+
*Proto.java

Makefile

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
2+
3+
MVN_CLEAN := mvn clean
4+
MVN_BUILD := mvn compile -T 4C
5+
MVN_PKG := mvn package -T 4C -Dmaven.test.skip=true
6+
MVN_TEST := mvn test -T 4C
7+
8+
9+
CURRENT_DIR := $(shell pwd)
10+
11+
DOCKER_VOLUME := -v $(HOME)/.m2:/root/.m2
12+
DOCKER_IMG := flowci/javasdk:1.0
13+
DOCKER_RUN := docker run -it --rm -v $(CURRENT_DIR):/ws -w /ws $(DOCKER_VOLUME) --network host $(DOCKER_IMG)
14+
15+
DOCKER_BUILD := ./build.sh
16+
17+
.PHONY: build test clean package
18+
19+
build:
20+
$(DOCKER_RUN) $(MVN_BUILD)
21+
22+
package:
23+
$(DOCKER_RUN) $(MVN_PKG)
24+
25+
test:
26+
$(DOCKER_RUN) $(MVN_TEST)
27+
28+
clean:
29+
$(DOCKER_RUN) $(MVN_CLEAN)

core/pom.xml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,11 @@
105105
<artifactId>org.eclipse.jgit</artifactId>
106106
</dependency>
107107

108+
<dependency>
109+
<groupId>com.google.protobuf</groupId>
110+
<artifactId>protobuf-java</artifactId>
111+
</dependency>
112+
108113
<dependency>
109114
<groupId>com.rabbitmq</groupId>
110115
<artifactId>amqp-client</artifactId>
@@ -168,6 +173,29 @@
168173
</execution>
169174
</executions>
170175
</plugin>
176+
177+
<plugin>
178+
<groupId>org.codehaus.mojo</groupId>
179+
<artifactId>exec-maven-plugin</artifactId>
180+
<version>1.6.0</version>
181+
<executions>
182+
<execution>
183+
<phase>
184+
generate-sources
185+
</phase>
186+
<goals>
187+
<goal>exec</goal>
188+
</goals>
189+
</execution>
190+
</executions>
191+
<configuration>
192+
<workingDirectory>${project.build.sourceDirectory}</workingDirectory>
193+
<executable>protoc</executable>
194+
<commandlineArgs>
195+
-I=./ --java_out=./ job.proto
196+
</commandlineArgs>
197+
</configuration>
198+
</plugin>
171199
</plugins>
172200
</build>
173201

core/src/main/java/com/flowci/core/api/service/OpenRestServiceImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ public List<User> users(String flowName) {
111111

112112
private Job getJob(String name, long number) {
113113
Flow flow = flowService.get(name);
114-
String key = JobKeyBuilder.build(flow, number);
114+
String key = JobKeyBuilder.build(flow.getId(), number);
115115
Optional<Job> optional = jobDao.findByKey(key);
116116

117117
if (optional.isPresent()) {

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ public class WebSocketConfig implements WebSocketMessageBrokerConfigurer {
6565

6666
@Override
6767
public void registerStompEndpoints(StompEndpointRegistry registry) {
68-
registry.addEndpoint("/ws").setAllowedOrigins("*").withSockJS();
68+
registry.addEndpoint("/ws").setAllowedOrigins("*");
6969
}
7070

7171
@Override

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,4 +63,10 @@ public abstract static class Job {
6363
// {step name}={status};{step name}={status}
6464
public static final String Steps = "FLOWCI_JOB_STEPS";
6565
}
66+
67+
public abstract static class Step {
68+
69+
// to control run step from docker defined in step or plugin, default is true
70+
public static final String DockerEnabled = "FLOWCI_STEP_DOCKER_ENABLED";
71+
}
6672
}

core/src/main/java/com/flowci/core/common/manager/SocketPushManager.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,13 @@
1919
import com.fasterxml.jackson.databind.ObjectMapper;
2020
import com.flowci.core.common.domain.PushBody;
2121
import com.flowci.core.common.domain.PushEvent;
22-
import java.io.IOException;
2322
import lombok.extern.log4j.Log4j2;
2423
import org.springframework.beans.factory.annotation.Autowired;
2524
import org.springframework.messaging.simp.SimpMessagingTemplate;
2625
import org.springframework.stereotype.Component;
2726

27+
import java.io.IOException;
28+
2829
/**
2930
* @author yang
3031
*/
@@ -47,4 +48,8 @@ public void push(String topic, PushEvent event, Object obj) {
4748
log.warn(e.getMessage());
4849
}
4950
}
51+
52+
public void push(String topic, byte[] bytes) {
53+
simpMessagingTemplate.convertAndSend(topic, bytes);
54+
}
5055
}

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

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -22,18 +22,13 @@
2222
import com.flowci.core.flow.service.FlowService;
2323
import com.flowci.core.flow.service.YmlService;
2424
import com.flowci.domain.http.RequestMessage;
25-
import java.util.Base64;
26-
import java.util.List;
27-
28-
import com.flowci.tree.Node;
25+
import com.flowci.tree.StepNode;
2926
import org.springframework.beans.factory.annotation.Autowired;
3027
import org.springframework.http.MediaType;
31-
import org.springframework.web.bind.annotation.GetMapping;
32-
import org.springframework.web.bind.annotation.PathVariable;
33-
import org.springframework.web.bind.annotation.PostMapping;
34-
import org.springframework.web.bind.annotation.RequestBody;
35-
import org.springframework.web.bind.annotation.RequestMapping;
36-
import org.springframework.web.bind.annotation.RestController;
28+
import org.springframework.web.bind.annotation.*;
29+
30+
import java.util.Base64;
31+
import java.util.List;
3732

3833
/**
3934
* @author yang
@@ -49,7 +44,7 @@ public class YmlController {
4944
private YmlService ymlService;
5045

5146
@GetMapping("/{name}/yml/steps")
52-
public List<Node> listSteps(@PathVariable String name) {
47+
public List<StepNode> listSteps(@PathVariable String name) {
5348
Flow flow = flowService.get(name);
5449
return ymlService.ListChildren(flow);
5550
}

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@
1818

1919
import com.flowci.core.flow.domain.Flow;
2020
import com.flowci.core.flow.domain.Yml;
21-
import com.flowci.tree.Node;
21+
import com.flowci.tree.FlowNode;
2222

2323
/**
2424
* @author yang
2525
*/
2626
public interface CronService {
2727

28-
void update(Flow flow, Node root, Yml yml);
28+
void update(Flow flow, FlowNode root, Yml yml);
2929
}

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

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
import com.flowci.core.flow.domain.Yml;
3030
import com.flowci.core.job.domain.Job.Trigger;
3131
import com.flowci.core.job.event.CreateNewJobEvent;
32-
import com.flowci.tree.Node;
32+
import com.flowci.tree.FlowNode;
3333
import com.flowci.tree.YmlParser;
3434
import com.flowci.zookeeper.ZookeeperClient;
3535
import com.flowci.zookeeper.ZookeeperException;
@@ -81,7 +81,7 @@ private void initZkRoot() {
8181
}
8282

8383
@Override
84-
public void update(Flow flow, Node root, Yml yml) {
84+
public void update(Flow flow, FlowNode root, Yml yml) {
8585
if (!root.hasCron()) {
8686
return;
8787
}
@@ -127,7 +127,7 @@ private void scheduleNext() {
127127
return;
128128
}
129129

130-
Node node = YmlParser.load(flow.getName(), yml.getRaw());
130+
FlowNode node = YmlParser.load(flow.getName(), yml.getRaw());
131131
update(flow, node, optional.get());
132132
}
133133

0 commit comments

Comments
 (0)