Skip to content

Commit 7bc856f

Browse files
authored
Merge pull request #20 from fluent-qa/feat/fluent-app
Feat/fluent app
2 parents 3bce4cc + 280e21d commit 7bc856f

File tree

126 files changed

+876
-68
lines changed

Some content is hidden

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

126 files changed

+876
-68
lines changed

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,4 +43,4 @@ build/
4343
.env
4444
.evn.local
4545
.env
46-
susu-portal/
46+
fluent-apps/susu-portal/

README_bnk.md

Lines changed: 0 additions & 28 deletions
This file was deleted.

components/fluent-builtin/pom.xml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,11 @@
2323
<artifactId>slf4j-api</artifactId>
2424
<version>2.0.7</version>
2525
</dependency>
26-
26+
<dependency>
27+
<groupId>io.github.cdimascio</groupId>
28+
<artifactId>dotenv-java</artifactId>
29+
<version>3.0.0</version>
30+
</dependency>
2731
<dependency>
2832
<groupId>com.google.guava</groupId>
2933
<artifactId>guava</artifactId>
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package io.fluent.builtin.config;
2+
3+
import io.github.cdimascio.dotenv.Dotenv;
4+
5+
public class DotEnvConfig {
6+
7+
static Dotenv dotenv = Dotenv.load();
8+
9+
10+
public static String getValue(String key) {
11+
return dotenv.get(key);
12+
}
13+
14+
15+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
package io.fluent.builtin.config;
2+
3+
import org.junit.jupiter.api.Test;
4+
5+
import static org.junit.jupiter.api.Assertions.*;
6+
7+
class DotEnvConfigTest {
8+
9+
@Test
10+
public void testGetValue(){
11+
var result = DotEnvConfig.getValue("TW_BEAR_TOKEN");
12+
System.out.println(result);
13+
}
14+
}

components/fluent-quickdao/src/test/resources/config/db.setting

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
## db.setting文件
22

3-
url = jdbc:postgresql://127.0.0.1:7432/test_hub?currentSchema=demo
3+
url = jdbc:postgresql://127.0.0.1:7432/workspace?schema=qa
44
user = postgres
5-
pass = changeit
5+
pass = postgres
66

77
## 可选配置
88
# 是否在日志中显示执行的SQL

docs/0-setup/README.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# README
2+
3+
- Setup By AI ChatGPT Prompt
4+
5+
## 环境准备
6+
7+
- 操作系统管理/Docker: OrbStack
8+
- 数据库/Database: Supabase
9+
- 开发环境: JAVA/MAVEN
10+
11+
## JAVA MAVEN Project Setup With Erupts
12+
13+
14+
15+
16+
## Run it

docs/README.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# README
2+
3+
工具,平台都好,但是如何快速构建一些可以使用的应用。一般测试开发团队需要开发能力配置:
4+
1. 前端开发
5+
2. 后端开发
6+
3. 数据库管理
7+
4. 需求编写/或者和业务测试进行沟通
8+
9+
带来的挑战是:
10+
1. 成本不低,试错成本高
11+
2. 沟通不顺畅,业务测试和测试开发想的可能会有出入
12+
3. 有些可能不是在解决实际的问题
13+
14+
## 如何降低试错成本
15+
16+
- 把开发成本降到足够低
17+
- 业务测试也可以通过一些方式解决自己的问题
18+
19+
## 低代码解决方案
20+
21+
- 表格方式
22+
- 后端接口低代码
23+
- 前端页面低代码
24+
- 前后端一体化解决方案
25+
- 第三方组件形式
26+
27+
## 表格方式
28+
29+
- 飞书多维表格
30+
- Vika多维表格
31+
- 开源替代
32+
- nocodb
33+
- rows
34+
- 。。。。。。。。。。。
35+
## 后端低代码
36+
减少API编写开发工作量:
37+
38+
1. ###Database###:
39+
- Supabase
40+
41+
## 一体化多代码
42+
43+
- erupt
44+
- illabuilder
45+
- 。。。。。。。。
46+
47+
## 第三方组件
48+
49+
- [] 登录授权组件
50+
- [] 开发框架
51+
- [] 成熟组件
52+
53+
## AI如何引入
54+
55+
AI能够带来好处
56+

docs/ai-help/README.md

Lines changed: 0 additions & 3 deletions
This file was deleted.

docs/architecture-as-code/README.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# jianmu-architecture-as-code
2+
3+
#### 介绍
4+
建木架构即代码(architecture as code)
5+
6+
#### 使用说明
7+
8+
本项目使用[Structurizr DSL](https://github.com/structurizr/dsl) 的Cli工具来生成C4 Model的架构图
9+
10+
该工具可以输出为PlantUML格式文件
11+
12+
Mac环境下可以使用Homebrew安装该工具
13+
14+
```
15+
brew install structurizr-cli
16+
```
17+
18+
安装完成后,可以使用以下命令来生成.puml文件到c4文件夹下
19+
20+
```
21+
structurizr-cli export -workspace jianmu.dsl -format plantuml -output c4
22+
```
23+
24+
#### 生成效果
25+
26+
*建木容器图*
27+
![容器图](out/c4/structurizr-jianmu-container/structurizr-jianmu-container.png)
28+
29+
*主服务内部组件图*
30+
![组件图](out/c4/structurizr-web-component/structurizr-web-component.png)
31+
32+
*执行器组件图*
33+
![执行器组件图](out/c4/structurizr-worker-component/structurizr-worker-component.png)
34+
35+
*服务部署图*
36+
![部署图](out/c4/structurizr-DevelopmentDeployment/structurizr-DevelopmentDeployment.png)
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
@startuml
2+
title 建木自动化集成平台 - Deployment - dev
3+
4+
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4.puml
5+
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Context.puml
6+
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml
7+
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Deployment.puml
8+
LAYOUT_WITH_LEGEND()
9+
10+
Deployment_Node(55, "Docker Container - Worker Server", "Docker") {
11+
Deployment_Node(56, "Worker Server", "Golang") {
12+
Container(57, "docker-worker", "容器化执行环境")
13+
}
14+
15+
}
16+
17+
Deployment_Node(45, "Web Browser", "Chrome, Firefox, Safari, or Edge") {
18+
Container(46, "SPA单页面应用", "TypeScript and Vue 3.0", "Provides all of the Jianmu functionality to customers via their web browser.")
19+
}
20+
21+
Deployment_Node(47, "Docker Container - Web Server", "Docker") {
22+
Deployment_Node(48, "Spring boot", "Spring boot 2.x") {
23+
Container(49, "主服务", "主服务")
24+
}
25+
26+
}
27+
28+
Deployment_Node(51, "Docker Container - Database Server", "Docker") {
29+
Deployment_Node(52, "Database Server", "Mysql 8.0") {
30+
Container(53, "数据库", "Mysql 8.0")
31+
}
32+
33+
}
34+
35+
Rel_D(46, 49, "启动流程或任务", "Rest API")
36+
Rel_D(49, 53, "读写数据", "JDBC/SSL")
37+
Rel_D(57, 49, "获取任务执行", "http/https")
38+
@enduml
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
@startuml
2+
title 建木自动化集成平台 - Containers
3+
4+
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4.puml
5+
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Context.puml
6+
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml
7+
LAYOUT_WITH_LEGEND()
8+
9+
Person(1, "用户", "泛指用户")
10+
11+
System_Boundary("2_boundary", "建木自动化集成平台") {
12+
Container(11, "数据库", "Mysql 8.0")
13+
Container(12, "docker-worker", "容器化执行环境")
14+
Container(16, "shell-worker", "非容器化执行环境")
15+
Container(3, "SPA单页面应用", "TypeScript and Vue 3.0", "Provides all of the Jianmu functionality to customers via their web browser.")
16+
Container(4, "主服务", "主服务")
17+
}
18+
19+
Rel_D(1, 3, "操作或查看流程与任务", "Rest API")
20+
Rel_D(4, 11, "读写数据", "JDBC/SSL")
21+
Rel_D(12, 4, "获取任务执行", "http/https")
22+
Rel_D(16, 4, "获取任务执行", "http/https")
23+
Rel_D(3, 4, "启动流程或任务", "Rest API")
24+
@enduml
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
@startuml
2+
title 建木自动化集成平台 - 主服务 - Components
3+
4+
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4.puml
5+
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Context.puml
6+
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml
7+
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Component.puml
8+
LAYOUT_WITH_LEGEND()
9+
10+
Container(3, "SPA单页面应用", "TypeScript and Vue 3.0", "Provides all of the Jianmu functionality to customers via their web browser.")
11+
12+
Container_Boundary("4_boundary", "主服务") {
13+
Component(10, "参数管理", "参数上下文")
14+
Component(5, "DSL解析器", "DSL语法解析器")
15+
Component(6, "触发器", "触发器上下文")
16+
Component(7, "流程流转", "流程上下文")
17+
Component(8, "el引擎", "表达式引擎")
18+
Component(9, "任务分发", "任务上下文")
19+
}
20+
21+
Rel_D(3, 6, "启动流程或任务", "Rest API")
22+
Rel_D(3, 5, "提交DSL定义", "Rest API")
23+
Rel_D(5, 7, "保存流程定义", "Java API")
24+
Rel_D(6, 7, "触发流程启动", "Java API")
25+
Rel_D(6, 9, "直接触发任务启动", "Java API")
26+
Rel_D(7, 9, "任务节点激活事件触发任务启动", "Java API")
27+
Rel_D(7, 9, "任务节点中止事件触发任务中止", "Java API")
28+
Rel_D(7, 8, "执行表达式", "Java API")
29+
Rel_D(8, 7, "返回表达式结果", "Java API")
30+
Rel_D(9, 7, "返回任务执行状态", "Java API")
31+
Rel_D(7, 10, "读取参数信息", "Java API")
32+
Rel_D(7, 10, "流程执行结果参数写入", "Java API")
33+
Rel_D(9, 10, "读取参数信息", "Java API")
34+
Rel_D(9, 10, "任务执行结果参数写入", "Java API")
35+
@enduml
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
@startuml
2+
title 建木自动化集成平台 - docker-worker - Components
3+
4+
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4.puml
5+
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Context.puml
6+
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml
7+
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Component.puml
8+
LAYOUT_WITH_LEGEND()
9+
10+
Container(4, "主服务", "主服务")
11+
12+
Container_Boundary("12_boundary", "docker-worker") {
13+
Component(13, "daemon", "worker守护容器")
14+
Component(14, "代码编译", "任务运行容器")
15+
Component(15, "Ansible执行", "任务运行容器")
16+
}
17+
18+
Rel_D(13, 4, "获取任务执行", "http/https")
19+
Rel_D(13, 4, "返回执行结果", "http/https")
20+
Rel_D(13, 14, "启动容器", "Docker API")
21+
Rel_D(13, 15, "启动容器", "Docker API")
22+
@enduml
Loading
Loading

0 commit comments

Comments
 (0)