ci(engineering): Gitea Actions 门禁 + 前端测试设施 + 版本注入修复
CI / Backend (go vet + test) (push) Canceled after 0s
CI / Frontend (lint + build + test) (push) Canceled after 0s

- .gitea/workflows/ci.yml:后端 gofmt/vet/test + 前端 lint/test/build 双 job 门禁
- vitest + @testing-library + jsdom 落地,14 个命脉用例:useListQuery 乱序丢弃/卸载中止、
  http.ts 401 单飞刷新+队列重放+失败登出+silent 直拒、审计防抖、StepDeploy 部署目标、query-utils
- 版本注入断裂修复:main 补 buildTime/gitCommit 符号,build.sh/Dockerfile 注入 main.version,
  /health 返回真实版本,前端 package.json 版本对齐 2.0.0
- gofmt 清零(8 个存量未格式化文件)
This commit is contained in:
opsx committed 2026-10-29 13:02:19 +08:00
1 parent 2975452c21
commit 4f74fe6c3f
23 files changed
+1399 -77

No files matched your search

+9 -3
View File
@@ -23,8 +23,13 @@ import (
"lokistack/services"
)
// version 由构建注入(-ldflags "-X main.version=..."),未注入时为 dev
var version = "2.0.0"
// version / buildTime / gitCommit 由构建注入(build.sh / Dockerfile 的 -ldflags -X main.*),
// 未注入时为 dev,避免与前端版本号互相矛盾
var (
version = "dev"
buildTime = "unknown"
gitCommit = "unknown"
)
// fileExists 判断文件是否存在(用于"是否首次部署"这类轻量判断)。
func fileExists(path string) bool {
@@ -97,7 +102,7 @@ func runCLI(args []string) {
fmt.Println(string(b))
case "version":
fmt.Println(version)
fmt.Printf("%s (commit %s, built %s)\n", version, gitCommit, buildTime)
default:
fmt.Fprintf(os.Stderr, "未知命令 %q。可用: backup / restore / self-check / version\n", args[0])
@@ -127,6 +132,7 @@ func main() {
}
// 指标注册要早于任何可能埋点的组件(middleware / alert engine)
routers.Version = version
services.InitMetrics(version)
log.Println("Metrics enabled at /api/v1/metrics")