Solo CI:輕量級 Golang CI/CD 工具
Solo CI
Description
一個輕量級的Golang CI/CD工具,全自動clone代碼,構建,部署,只需要幾行配置即可
{
"get_list":[
"github.com/asaskevich/govalidator"
],
"zip_list":[
"conf"
],
"after_script":"echo hello",
"before_script":"pwd"
}
Features
- 完美集成Gitlab,Github(future),Bitbucket(future)
- 配置要求遠低于主流CI工具(Jenkins etc.)內存占用低,可以運行在任何配置Linux主機中
- 一鍵開啟,只需要Golang環境和Git環境,程序會自動獲取自己所需要的環境
- 配制簡單,只有四個配置項
- 一鍵clone,build,打包成tar,只需要寫個SSH腳本部署到自己的機器即可
- 支持自定義腳本,構建前構建后觸發均可自定義
- REST API支持,可以集成進任何系統
- 可以保存任意數量的構建,不丟任何構建
Use
- 配置好主機的GOPATH,GOROOT,GIT環境
- 下載solo-ci編譯好的程序
- 使用REST API新建項目
- 在你的項目中寫個簡單的solo.json,并且在代碼管理中配置webhook (配置地址請看REST API)
- push!觸發CI
REST API
POST http://your-ip:13233/v1/solohook/:project_id 觸發Webhook
POST http://your-ip:13233/v1/project
Params in form
- name
- type
- url
- path
- branch
- secret_token (非必要)
DELETE http://your-ip:13233/v1/project/:project_id 刪除項目
PUT http://your-ip:13233/v1/project/:project_id 更新項目
GET http://your-ip:13233/v1/project/:project_id 獲取項目信息
GET http://your-ip:13233/v1/project 獲取項目列表
Params in query
- page (default 0)
- pageSize (default 20)
solo-ci.json
- get_list:需要下載的Go包
- zip_list:構建完成需要打包進項目的文件或者目錄
- before_script:構建之前執行的腳本
- after_script:構建之后執行的腳本
所有的選項都不是必須存在的,及時你什么都不寫也可以,下面是一個空的配置文件例子
{
}</code></pre>
Next
- Web GUI 支持
- Github,Bitbucket支持
本文由用戶 angeliamaclean 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!