代码拉取完成,页面将自动刷新
服务中心,主要包含:
go1.16+
Goland
or VS Code
Mysql5.7+
git clone https://gitee.com/gitee-go/server.git
cd server
go mod tidy
如果是私有仓库的话请使用,仓库根目录下的
./goget.sh
or
./goget.bash
VS Code launch.json
设置(参考):
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Launch Package",
"type": "go",
"request": "launch",
"mode": "auto",
"program": "${workspaceFolder}/main.go"
}
]
}
Goland
用户目录下创建.giteego目录
.giteego/application.yaml
说明:
server:
host: http://localhost:8090 # server外部访问地址
port: "8090" # server的端口
login-key: jWgXS7tlfqSq4F8KnRVuuNM9XM7e # runner与server通信的密钥
workspace: ""
limit:
build: 10 # 最大同时构建数
parse: 10 # 最大同时解析yml数
runner:
port: "7030" # runner端口
secret: jWgXS7tlfqSq4F8KnRVuuNM9XM7eP9iZ # runner与server通信的密钥
main-runner: true # 是否启动server的集成runner,一个server只能有一个main-runner
datasource: # 数据库
host: xx
port: xx
database: xx
username: xx
password: xx
showsql: true
artifactory: {} #暂时没用
export CGO_ENABLED=0
go build -o server main.go
chmod +x server
./server
http://localhost:8090
comm :
.
├── app.go
├── db.go 文件缓存操作包括set.clear等
├── hook
│ ├── action.go webhook中的action常量
│ ├── git.go 结构体定义,包含Reference,Commit,User
│ ├── gitee
│ │ ├── gitee.go
│ │ └── hook_test.go
│ ├── pr.go webhook的pull request结构体定义
│ ├── repo.go webhook的代码仓库定义
│ ├── webhook.go webhook的接口和一些结构体定义
│ └── zip_test.go
├── limit.go 同时解析yml数和构建数设置
├── migrate.go 数据库升降级工具
├── notice
│ └── notice.go 通知结构体和内容定义
├── plugin
│ └── plugin.go 存放于DB中的插件的相关操作,从db获取plugin,解析plugin等
├── repo
│ └── repo.go 仓库的相关操作,仓库目录打包zip
├── thirdapi.go 获取第三方的api client,包括gitee,github,gitlab等
├── uifls.go ui的base64
├── workpath.go 包含工作路径的初始化和定义
├── yml 流水线yml
│ ├── dag
│ │ └── dag.go 初始化dag,新增dag到db等操作
│ ├── disc.yaml
│ ├── vars
│ │ └── yml.go 流水线yml中的变量的相关操作,包含替换yml变量,替换流水线变量等
│ ├── veri.yaml
│ ├── yml.go 流水线yml的接口定义
│ └── yml_test.go
└── ymlconf.go server的application.yaml的结构定义和相关操作,包含初始化,检查等
engine:
.
├── agent 暂时没有用到
│ ├── client.go
│ └── clients.go
├── comm
│ ├── group.go cmd命令组的结构体定义
│ ├── inter.go PreBuild和Build引擎的接口定义
│ ├── job.go 构建过程中的job结构体定义
│ └── plugin.go 限制plugin
├── dao
│ └── update.go runtime更新build.step状态的相关操作
├── local
│ ├── buildengine.go Build引擎的实现
│ ├── buildtask.go job调度的实现
│ ├── buildtaskc.go job调度的效验
│ ├── clientengine.go 管理runner,包含注册,发现,获取runner信息等
│ ├── prebuild_test.go
│ ├── prebuildengine.go PreBuild的实现
│ ├── refreshengine.go 调用api刷新代码仓库的引擎
│ └── taskbuild.go PreBuild的task实现
├── mgr.go 引擎的管理,初始化,启动,停止等.
└── mgrs.go
route: 业务接口
.
├── api.go
├── apiManual.go
├── badge.go
├── hooks.go
├── login.go
├── namespace.go
├── notice.go
├── oauth.go
├── oauths.go
├── pipeline.go
├── plugin.go
├── pubs.go
├── repo.go
└── system.go
routehb:
.
├── auth.go runner的请求鉴权
├── client.go
└── runner.go server与runner之间的通信,包括日志,制品等的传输,runner获取job等
routes: 安装的路由和实现
.
├── install.go
├── install1.go
└── install2.go
server:
.
├── command.go server的cli实现
├── db.go 初始化数据库和文件缓存
├── route.go 路由的注册
├── server.go 服务启动
└── web.go
service:业务相关的实现
.
├── api.go
├── api_test.go
├── hooks.go
├── mid.go
├── notice.go
├── param.go
├── perms.go
├── token.go
└── user.go
使用docker-compose详情参见: https://gitee.com/gitee-go/docker
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。