fix(version): 界面版本号改为动态读取,统一版本为 v1.0.2

界面侧栏与页脚硬编码 v1.0.0,发版后始终显示陈旧版本。

- 新增 useAppVersion hook:从后端 /version 读取并做模块级缓存
- Sidebar / MainLayout 改用该 hook
- /agent/arch 的 version 字段原先硬编码 "1.0.0",改由 main 注入 router.AppVersion
- Dockerfile 增加 AGENT_VERSION 构建参数,与镜像 VERSION 解耦,
  避免纯前端改动也触发全量 Agent 重推

统一版本:镜像 lghost/aiops:v1.0.2,内置 Agent v1.0.2。

// Logan.Li
This commit is contained in:
Logan.Li committed 2026-09-14 08:46:40 +00:00
1 parent 9360ebefd8
commit 7a96381dc7
7 files changed
+79 -6

No files matched your search

+2
View File
@@ -215,6 +215,8 @@ func main() {
systask.Init(db)
// 注册路由
// 把编译期注入的版本号透传给 router,供 /agent/arch 返回真实版本。 // Logan.Li
router.AppVersion = Version
router.Register(r, db, log, cfg, cache)
// 用户定时任务调度(Linux 5 段 crontab)// Logan.Li
+5 -1
View File
@@ -22,6 +22,10 @@ var agentBinaryFiles = map[string]string{
"windows-amd64": "aiops-agent-windows-amd64.exe",
}
// AppVersion 由 main 在启动时注入,用于 /agent/arch 返回真实版本号;
// 此前该字段硬编码为 "1.0.0",发版后接口版本与实际不符。 // Logan.Li
var AppVersion = "dev"
// registerAgentDownloads 注册 Agent 安装脚本和二进制下载路由,避免维护 backend/agent 重复目录。 // Logan.Li
func registerAgentDownloads(r *gin.Engine, log *zap.Logger) {
paths := resolveAgentStaticPaths(log)
@@ -34,7 +38,7 @@ func registerAgentDownloads(r *gin.Engine, log *zap.Logger) {
}
downloads := availableAgentDownloads(paths.binDir)
c.JSON(http.StatusOK, gin.H{
"version": "1.0.0",
"version": AppVersion,
"downloads": downloads,
"install": fmt.Sprintf("curl -fsSL %s/agent/install.sh | sudo bash -s -- --server %s --token <token>", base, base),
})