Files
jx-callback/main.go
2018-07-29 20:43:25 +08:00

98 lines
2.3 KiB
Go

package main
import (
"flag"
"fmt"
"os"
bzcon "git.rosy.net.cn/jx-callback/business/controller"
"git.rosy.net.cn/jx-callback/globals"
"git.rosy.net.cn/jx-callback/globals/api"
"git.rosy.net.cn/jx-callback/globals/db"
"git.rosy.net.cn/jx-callback/legacy/jd/controller"
"git.rosy.net.cn/jx-callback/legacy/tasks"
_ "git.rosy.net.cn/jx-callback/routers"
"github.com/astaxie/beego"
)
var (
GitCommit string
GitBranch string
GitState string
GitSummary string
BuildDate string
Version string
)
func init() {
// globals.Init()
db.Init()
api.Init()
}
// 返回true表示非运行服务
func checkCmdFlags() bool {
var flagGitCommit bool
var flagGitBranch bool
var flagGitState bool
var flagGitSummary bool
var flagBuildDate bool
var flagVersion bool
var flagFullInfo bool
flag.BoolVar(&flagGitCommit, "gitcommit", false, "get gitcommit info")
flag.BoolVar(&flagGitBranch, "gitbranch", false, "get gitbranch info")
flag.BoolVar(&flagGitState, "gitstate", false, "get gitstate info")
flag.BoolVar(&flagGitSummary, "gitsummary", false, "get gitsummary info")
flag.BoolVar(&flagBuildDate, "builddate", false, "get builddate info")
flag.BoolVar(&flagVersion, "version", false, "get version info")
flag.BoolVar(&flagFullInfo, "fullinfo", false, "get fullinfo info")
flag.Parse()
if flagGitCommit || flagFullInfo {
fmt.Println(GitCommit)
}
if flagGitBranch || flagFullInfo {
fmt.Println(GitBranch)
}
if flagGitState || flagFullInfo {
fmt.Println(GitState)
}
if flagGitSummary || flagFullInfo {
fmt.Println(GitSummary)
}
if flagBuildDate || flagFullInfo {
fmt.Println(BuildDate)
}
if flagVersion || flagFullInfo {
fmt.Println(Version)
}
return len(os.Args) > 1
}
func main() {
if !checkCmdFlags() {
if beego.BConfig.RunMode == "prod" {
if err := tasks.RefreshWeixinToken(); err != nil {
globals.SugarLogger.Errorf("RefreshWeixinToken failed with error:%s", err)
return
}
if err := tasks.RefreshElmToken(); err != nil {
globals.SugarLogger.Errorf("RefreshElmToken failed with error:%s", err)
return
}
if globals.CallLegacyMsgHandler {
controller.InitOrder()
}
}
bzcon.LoadPendingOrders()
if beego.BConfig.RunMode == "dev" {
beego.BConfig.WebConfig.DirectoryIndex = true
beego.BConfig.WebConfig.StaticDir["/swagger"] = "swagger"
}
beego.Run()
}
}