117 lines
2.9 KiB
Go
117 lines
2.9 KiB
Go
package main
|
|
|
|
import (
|
|
"flag"
|
|
"fmt"
|
|
"net/http"
|
|
_ "net/http/pprof"
|
|
"os"
|
|
|
|
"github.com/astaxie/beego"
|
|
|
|
_ "git.rosy.net.cn/jx-callback/globals/api/apimanager"
|
|
|
|
// 导入缺省订单调度器
|
|
|
|
"git.rosy.net.cn/jx-callback/business/jxutils/tasks"
|
|
"git.rosy.net.cn/jx-callback/globals"
|
|
"git.rosy.net.cn/jx-callback/globals/beegodb"
|
|
|
|
_ "git.rosy.net.cn/jx-callback/business/auth2/authprovider/alipay"
|
|
_ "git.rosy.net.cn/jx-callback/business/auth2/authprovider/dingding"
|
|
_ "git.rosy.net.cn/jx-callback/business/auth2/authprovider/mobile"
|
|
_ "git.rosy.net.cn/jx-callback/business/auth2/authprovider/password"
|
|
_ "git.rosy.net.cn/jx-callback/business/auth2/authprovider/weixin"
|
|
|
|
_ "git.rosy.net.cn/jx-callback/routers"
|
|
)
|
|
|
|
var (
|
|
GitCommit string
|
|
GitBranch string
|
|
GitState string
|
|
GitSummary string
|
|
BuildDate string
|
|
Version string
|
|
)
|
|
|
|
func Init() {
|
|
beegodb.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() {
|
|
Init()
|
|
if err := tasks.RefreshWeixinToken(); err != nil {
|
|
globals.SugarLogger.Errorf("RefreshWeixinToken failed with error:%s", err)
|
|
return
|
|
}
|
|
if err := tasks.RefreshWeixin2Token(); err != nil {
|
|
globals.SugarLogger.Errorf("RefreshWeixin2Token failed with error:%s", err)
|
|
return
|
|
}
|
|
if err := tasks.RefreshWeixin3Token(); err != nil {
|
|
globals.SugarLogger.Errorf("RefreshWeixin3Token failed with error:%s", err)
|
|
return
|
|
}
|
|
if err := tasks.RefreshPushToken(); err != nil {
|
|
globals.SugarLogger.Errorf("RefreshPushToken failed with error:%s", err)
|
|
return
|
|
}
|
|
|
|
if beego.BConfig.RunMode != "prod" {
|
|
beego.BConfig.WebConfig.DirectoryIndex = true
|
|
beego.BConfig.WebConfig.StaticDir["/swagger"] = "swagger"
|
|
}
|
|
go func() {
|
|
if globals.IsMainProductEnv() {
|
|
http.ListenAndServe("0.0.0.0:6061", nil)
|
|
} else {
|
|
http.ListenAndServe("0.0.0.0:6060", nil)
|
|
}
|
|
}()
|
|
beego.Run()
|
|
}
|
|
}
|