- 在api路由中添加/version接口用于显示程序版本信息 - 集成全局Version变量用于版本号管理 - 修改Dockerfile支持版本号注入构建参数 - 更新开发环境部署工作流添加版本信息构建 - 更新生产环境部署工作流添加版本信息构建 - 实现在版本接口中展示程序版本和Gin框架版本
This commit is contained in:
@@ -11,7 +11,11 @@ jobs:
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: 构建Docker镜像
|
||||
run: docker build -t dypid:latest .
|
||||
run: |
|
||||
set -x
|
||||
git_hash=$(git rev-parse --short "$GITHUB_SHA")
|
||||
build_date=$(TZ=Asia/Shanghai date +"%Y%m%d%H%M")
|
||||
docker build --build-arg VERSION="dev - $build_date - $git_hash" -t dypid:latest .
|
||||
|
||||
- name: 导出镜像
|
||||
run: mkdir release && docker save -o release/dypid.tar dypid:latest && docker rmi dypid:latest
|
||||
|
||||
@@ -12,7 +12,11 @@ jobs:
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: 构建Docker镜像
|
||||
run: docker build -t dypid:latest .
|
||||
run: |
|
||||
set -x
|
||||
git_hash=$(git rev-parse --short "$GITHUB_SHA")
|
||||
build_date=$(TZ=Asia/Shanghai date +"%Y%m%d%H%M")
|
||||
docker build --build-arg VERSION="release - $build_date - $git_hash" -t dypid:latest .
|
||||
|
||||
- name: 导出镜像
|
||||
run: mkdir release && docker save -o release/dypid.tar dypid:latest && docker rmi dypid:latest
|
||||
|
||||
+5
-1
@@ -15,9 +15,13 @@ WORKDIR /build
|
||||
COPY . .
|
||||
COPY --from=webBuilder /build/dist ./web/dist
|
||||
|
||||
ARG VERSION
|
||||
|
||||
RUN go env -w CGO_ENABLED=0 \
|
||||
&& go mod tidy \
|
||||
&& go build -o dypid
|
||||
&& go build \
|
||||
-ldflags="-s -w -X 'global.Version=$VERSION'" \
|
||||
-o dypid
|
||||
|
||||
FROM alpine
|
||||
|
||||
|
||||
@@ -1,8 +1,10 @@
|
||||
package api
|
||||
|
||||
import (
|
||||
"dypid/global"
|
||||
"dypid/internal/controller"
|
||||
"embed"
|
||||
"fmt"
|
||||
"io/fs"
|
||||
"net/http"
|
||||
|
||||
@@ -15,6 +17,9 @@ func RegRoutes(r *gin.Engine) {
|
||||
g.GET("/test", func(context *gin.Context) {
|
||||
context.String(http.StatusOK, "ok")
|
||||
})
|
||||
g.GET("/version", func(context *gin.Context) {
|
||||
context.String(http.StatusOK, fmt.Sprintf("程序版本: %s\nGin: %s", global.Version, gin.Version))
|
||||
})
|
||||
}
|
||||
{
|
||||
g.GET("/token", controller.ListTokenHandler) //获取token列表
|
||||
|
||||
@@ -8,3 +8,5 @@ import (
|
||||
|
||||
var RDB *redis.Client
|
||||
var RCtx = context.Background()
|
||||
|
||||
var Version = "dev"
|
||||
|
||||
Reference in New Issue
Block a user