代码拉取完成,页面将自动刷新
同步操作将从 Gokins/Gokins 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
package main
import (
"flag"
"gokins/comm"
"gokins/core"
"gokins/mgr"
"gokins/route"
"gokins/service"
"gokins/service/dbService"
"os"
"path/filepath"
ruisIo "github.com/mgr9525/go-ruisutil/ruisio"
"github.com/gin-gonic/gin"
)
var (
clearPass = ""
mvData = ""
upgrade = false
)
func init() {
path, err := os.Executable()
if err != nil {
println("path err:" + err.Error())
return
}
println("path:" + path)
comm.Path = path
dir, err := filepath.Abs(filepath.Dir(path))
if err != nil {
println("dir err:" + err.Error())
return
}
println("dir:" + dir)
flag.StringVar(&comm.Dir, "d", dir, "数据目录")
flag.StringVar(&comm.Host, "bind", ":8030", "绑定地址")
flag.BoolVar(&comm.NoUppass, "nps", false, "是否禁止修改密码")
flag.IntVar(&comm.RunTaskLen, "rln", 5, "同时执行的流水线数量")
flag.StringVar(&clearPass, "clp", "", "清除某个用户密码(请先关闭服务在执行)")
flag.StringVar(&mvData, "mvdata", "", "转移某个库数据到本地(目前不转移运行日志记录)")
flag.BoolVar(&upgrade, "up", false, "升级数据库(迁移流水线,触发器)")
flag.Parse()
comm.Gin = gin.Default()
}
func main() {
if upgrade {
os.RemoveAll(comm.Dir + "/data/logs")
if !ruisIo.PathExists(comm.Dir + "/db.dat") {
println("未找到原有数据库")
return
}
os.Remove(comm.Dir + "/db.bak")
os.Rename(comm.Dir+"/db.dat", comm.Dir+"/db.bak")
}
if !ruisIo.PathExists(comm.Dir + "/data") {
err := os.MkdirAll(comm.Dir+"/data", 0755)
if err != nil {
println("Mkdir data err:" + err.Error())
return
}
}
err := comm.InitDb()
if err != nil {
println("InitDb err:" + err.Error())
return
}
if clearPass != "" {
service.ClearUPass(clearPass)
return
}
if mvData != "" {
service.MoveData(mvData)
return
}
if upgrade {
service.Upgrade()
return
}
runWeb()
}
func runWeb() {
jwtKey := dbService.GetParam("jwt-key")
jkey := jwtKey.GetString("key")
if jkey == "" {
jkey = core.RandomString(32)
jwtKey.Set("key", jkey)
dbService.SetParam("jwt-key", jwtKey)
}
core.JwtKey = jkey
route.Init()
mgr.ExecMgr.Start()
mgr.TriggerMgr.Start()
err := comm.Gin.Run(comm.Host)
if err != nil {
println("gin run err:" + err.Error())
}
mgr.Cancel()
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。