From e50ddb95f34bc156b32dc3b7fa0eebb500e05328 Mon Sep 17 00:00:00 2001 From: GoEdgeLab Date: Tue, 24 Nov 2020 08:38:19 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=89=E8=A3=85=E6=97=B6=E6=A3=80=E6=9F=A5?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/setup/utils.go | 2 +- internal/tasks/task_sync_cluster.go | 6 ++++++ internal/web/actions/default/setup/validateDb.go | 14 ++++++++++++++ 3 files changed, 21 insertions(+), 1 deletion(-) diff --git a/internal/setup/utils.go b/internal/setup/utils.go index 31dcdd34..2a899da8 100644 --- a/internal/setup/utils.go +++ b/internal/setup/utils.go @@ -7,8 +7,8 @@ import ( var isConfigured bool // 判断系统是否已经配置过 -// TODO 检查节点版本和数据库版本是否一致,如果不一致则跳转到升级页面 func IsConfigured() bool { + return false//TODO if isConfigured { return true } diff --git a/internal/tasks/task_sync_cluster.go b/internal/tasks/task_sync_cluster.go index df4f22b3..d2ac2ff5 100644 --- a/internal/tasks/task_sync_cluster.go +++ b/internal/tasks/task_sync_cluster.go @@ -3,6 +3,7 @@ package tasks import ( "github.com/TeaOSLab/EdgeAdmin/internal/events" "github.com/TeaOSLab/EdgeAdmin/internal/rpc" + "github.com/TeaOSLab/EdgeAdmin/internal/setup" "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/default/nodes/nodeutils" "github.com/TeaOSLab/EdgeCommon/pkg/messageconfigs" "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb" @@ -37,6 +38,11 @@ func (this *SyncClusterTask) Start() { } func (this *SyncClusterTask) loop() error { + // 如果还没有安装直接返回 + if !setup.IsConfigured() { + return nil + } + rpcClient, err := rpc.SharedRPC() if err != nil { return err diff --git a/internal/web/actions/default/setup/validateDb.go b/internal/web/actions/default/setup/validateDb.go index da078462..f5df5f19 100644 --- a/internal/web/actions/default/setup/validateDb.go +++ b/internal/web/actions/default/setup/validateDb.go @@ -6,6 +6,7 @@ import ( "github.com/iwind/TeaGo/actions" "github.com/iwind/TeaGo/dbs" "github.com/iwind/TeaGo/maps" + stringutil "github.com/iwind/TeaGo/utils/string" "strings" ) @@ -65,6 +66,19 @@ func (this *ValidateDbAction) RunPost(params struct { } } + // 检查数据库版本 + one, err := db.FindOne("SELECT VERSION() AS v") + if err != nil { + this.Fail("检查数据库版本时出错:" + err.Error()) + } + if one == nil { + this.Fail("检查数据库版本时出错:无法获取数据库版本") + } + version := one.GetString("v") + if stringutil.VersionCompare(version, "5.7.8") < 0 { + this.Fail("数据库版本至少在v5.7.8以上,你现在使用的是v" + version) + } + this.Data["db"] = maps.Map{ "host": params.Host, "port": params.Port,