Skip to content

Commit f0ff9a8

Browse files
committed
style: 代码格式化
1 parent 21028ec commit f0ff9a8

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+3551
-3598
lines changed

cmd/web.go

+156-158
Original file line numberDiff line numberDiff line change
@@ -1,194 +1,192 @@
11
package cmd
22

33
import (
4-
"github.com/ouqiang/gocron/modules/app"
5-
"github.com/ouqiang/gocron/routers"
6-
"github.com/urfave/cli"
7-
"gopkg.in/macaron.v1"
8-
"os"
9-
"os/signal"
10-
"syscall"
11-
"github.com/ouqiang/gocron/modules/logger"
12-
"github.com/ouqiang/gocron/service"
13-
"github.com/ouqiang/gocron/models"
14-
"github.com/ouqiang/gocron/modules/setting"
15-
"time"
16-
"github.com/ouqiang/gocron/modules/rpc/grpcpool"
4+
"github.com/ouqiang/gocron/models"
5+
"github.com/ouqiang/gocron/modules/app"
6+
"github.com/ouqiang/gocron/modules/logger"
7+
"github.com/ouqiang/gocron/modules/rpc/grpcpool"
8+
"github.com/ouqiang/gocron/modules/setting"
9+
"github.com/ouqiang/gocron/routers"
10+
"github.com/ouqiang/gocron/service"
11+
"github.com/urfave/cli"
12+
"gopkg.in/macaron.v1"
13+
"os"
14+
"os/signal"
15+
"syscall"
16+
"time"
1717
)
1818

1919
// web服务器默认端口
2020
const DefaultPort = 5920
2121

22-
2322
var CmdWeb = cli.Command{
24-
Name: "web",
25-
Usage: "run web server",
26-
Action: runWeb,
27-
Flags: []cli.Flag{
28-
cli.StringFlag{
29-
Name: "host",
30-
Value: "0.0.0.0",
31-
Usage: "bind host",
32-
},
33-
cli.IntFlag{
34-
Name: "port,p",
35-
Value: DefaultPort,
36-
Usage: "bind port",
37-
},
38-
cli.StringFlag{
39-
Name: "env,e",
40-
Value: "prod",
41-
Usage: "runtime environment, dev|test|prod",
42-
},
43-
},
23+
Name: "web",
24+
Usage: "run web server",
25+
Action: runWeb,
26+
Flags: []cli.Flag{
27+
cli.StringFlag{
28+
Name: "host",
29+
Value: "0.0.0.0",
30+
Usage: "bind host",
31+
},
32+
cli.IntFlag{
33+
Name: "port,p",
34+
Value: DefaultPort,
35+
Usage: "bind port",
36+
},
37+
cli.StringFlag{
38+
Name: "env,e",
39+
Value: "prod",
40+
Usage: "runtime environment, dev|test|prod",
41+
},
42+
},
4443
}
4544

4645
func runWeb(ctx *cli.Context) {
47-
// 设置运行环境
48-
setEnvironment(ctx)
49-
// 初始化应用
50-
app.InitEnv(ctx.App.Version)
51-
// 初始化模块 DB、定时任务等
52-
initModule()
53-
// 捕捉信号,配置热更新等
54-
go catchSignal()
55-
m := macaron.Classic()
56-
57-
// 注册路由
58-
routers.Register(m)
59-
// 注册中间件.
60-
routers.RegisterMiddleware(m)
61-
host := parseHost(ctx)
62-
port := parsePort(ctx)
63-
m.Run(host, port)
46+
// 设置运行环境
47+
setEnvironment(ctx)
48+
// 初始化应用
49+
app.InitEnv(ctx.App.Version)
50+
// 初始化模块 DB、定时任务等
51+
initModule()
52+
// 捕捉信号,配置热更新等
53+
go catchSignal()
54+
m := macaron.Classic()
55+
56+
// 注册路由
57+
routers.Register(m)
58+
// 注册中间件.
59+
routers.RegisterMiddleware(m)
60+
host := parseHost(ctx)
61+
port := parsePort(ctx)
62+
m.Run(host, port)
6463
}
6564

66-
func initModule() {
67-
if !app.Installed {
68-
return
69-
}
65+
func initModule() {
66+
if !app.Installed {
67+
return
68+
}
7069

71-
config, err := setting.Read(app.AppConfig)
72-
if err != nil {
73-
logger.Fatal("读取应用配置失败", err)
74-
}
75-
app.Setting = config
70+
config, err := setting.Read(app.AppConfig)
71+
if err != nil {
72+
logger.Fatal("读取应用配置失败", err)
73+
}
74+
app.Setting = config
7675

77-
// 初始化DB
78-
models.Db = models.CreateDb()
76+
// 初始化DB
77+
models.Db = models.CreateDb()
7978

80-
// 版本升级
81-
upgradeIfNeed()
79+
// 版本升级
80+
upgradeIfNeed()
8281

83-
// 初始化定时任务
84-
serviceTask := new(service.Task)
85-
serviceTask.Initialize()
82+
// 初始化定时任务
83+
serviceTask := new(service.Task)
84+
serviceTask.Initialize()
8685
}
8786

8887
// 解析端口
8988
func parsePort(ctx *cli.Context) int {
90-
var port int = DefaultPort
91-
if ctx.IsSet("port") {
92-
port = ctx.Int("port")
93-
}
94-
if port <= 0 || port >= 65535 {
95-
port = DefaultPort
96-
}
97-
98-
return port
89+
var port int = DefaultPort
90+
if ctx.IsSet("port") {
91+
port = ctx.Int("port")
92+
}
93+
if port <= 0 || port >= 65535 {
94+
port = DefaultPort
95+
}
96+
97+
return port
9998
}
10099

101-
func parseHost(ctx *cli.Context) string {
102-
if ctx.IsSet("host") {
103-
return ctx.String("host")
104-
}
100+
func parseHost(ctx *cli.Context) string {
101+
if ctx.IsSet("host") {
102+
return ctx.String("host")
103+
}
105104

106-
return "0.0.0.0"
105+
return "0.0.0.0"
107106
}
108107

109-
func setEnvironment(ctx *cli.Context) {
110-
var env string = "prod"
111-
if ctx.IsSet("env") {
112-
env = ctx.String("env")
113-
}
114-
115-
switch env {
116-
case "test":
117-
macaron.Env = macaron.TEST
118-
case "dev":
119-
macaron.Env = macaron.DEV
120-
default:
121-
macaron.Env = macaron.PROD
122-
}
108+
func setEnvironment(ctx *cli.Context) {
109+
var env string = "prod"
110+
if ctx.IsSet("env") {
111+
env = ctx.String("env")
112+
}
113+
114+
switch env {
115+
case "test":
116+
macaron.Env = macaron.TEST
117+
case "dev":
118+
macaron.Env = macaron.DEV
119+
default:
120+
macaron.Env = macaron.PROD
121+
}
123122
}
124123

125124
// 捕捉信号
126-
func catchSignal() {
127-
c := make(chan os.Signal)
128-
// todo 配置热更新, windows 不支持 syscall.SIGUSR1, syscall.SIGUSR2
129-
signal.Notify(c, syscall.SIGHUP, syscall.SIGINT, syscall.SIGTERM)
130-
for {
131-
s := <- c
132-
logger.Info("收到信号 -- ", s)
133-
switch s {
134-
case syscall.SIGHUP:
135-
logger.Info("收到终端断开信号, 忽略")
136-
case syscall.SIGINT, syscall.SIGTERM:
137-
shutdown()
138-
}
139-
}
125+
func catchSignal() {
126+
c := make(chan os.Signal)
127+
// todo 配置热更新, windows 不支持 syscall.SIGUSR1, syscall.SIGUSR2
128+
signal.Notify(c, syscall.SIGHUP, syscall.SIGINT, syscall.SIGTERM)
129+
for {
130+
s := <-c
131+
logger.Info("收到信号 -- ", s)
132+
switch s {
133+
case syscall.SIGHUP:
134+
logger.Info("收到终端断开信号, 忽略")
135+
case syscall.SIGINT, syscall.SIGTERM:
136+
shutdown()
137+
}
138+
}
140139
}
141140

142-
143141
// 应用退出
144-
func shutdown() {
145-
defer func() {
146-
logger.Info("已退出")
147-
os.Exit(0)
148-
}()
149-
150-
if !app.Installed {
151-
return
152-
}
153-
logger.Info("应用准备退出")
154-
serviceTask := new(service.Task)
155-
// 停止所有任务调度
156-
logger.Info("停止定时任务调度")
157-
serviceTask.StopAll()
158-
159-
taskNumInRunning := service.TaskNum.Num()
160-
logger.Infof("正在运行的任务有%d个", taskNumInRunning)
161-
if taskNumInRunning > 0 {
162-
logger.Info("等待所有任务执行完成后退出")
163-
}
164-
for {
165-
if taskNumInRunning <= 0 {
166-
break
167-
}
168-
time.Sleep(3 * time.Second)
169-
taskNumInRunning = service.TaskNum.Num()
170-
}
171-
172-
// 释放gRPC连接池
173-
grpcpool.Pool.ReleaseAll()
142+
func shutdown() {
143+
defer func() {
144+
logger.Info("已退出")
145+
os.Exit(0)
146+
}()
147+
148+
if !app.Installed {
149+
return
150+
}
151+
logger.Info("应用准备退出")
152+
serviceTask := new(service.Task)
153+
// 停止所有任务调度
154+
logger.Info("停止定时任务调度")
155+
serviceTask.StopAll()
156+
157+
taskNumInRunning := service.TaskNum.Num()
158+
logger.Infof("正在运行的任务有%d个", taskNumInRunning)
159+
if taskNumInRunning > 0 {
160+
logger.Info("等待所有任务执行完成后退出")
161+
}
162+
for {
163+
if taskNumInRunning <= 0 {
164+
break
165+
}
166+
time.Sleep(3 * time.Second)
167+
taskNumInRunning = service.TaskNum.Num()
168+
}
169+
170+
// 释放gRPC连接池
171+
grpcpool.Pool.ReleaseAll()
174172
}
175173

176174
// 判断应用是否需要升级, 当存在版本号文件且版本小于app.VersionId时升级
177-
func upgradeIfNeed() {
178-
currentVersionId := app.GetCurrentVersionId()
179-
// 没有版本号文件
180-
if currentVersionId == 0 {
181-
return;
182-
}
183-
if currentVersionId >= app.VersionId {
184-
return
185-
}
186-
187-
migration := new(models.Migration)
188-
logger.Infof("版本升级开始, 当前版本号%d", currentVersionId)
189-
190-
migration.Upgrade(currentVersionId)
191-
app.UpdateVersionFile()
192-
193-
logger.Infof("已升级到最新版本%d", app.VersionId)
194-
}
175+
func upgradeIfNeed() {
176+
currentVersionId := app.GetCurrentVersionId()
177+
// 没有版本号文件
178+
if currentVersionId == 0 {
179+
return
180+
}
181+
if currentVersionId >= app.VersionId {
182+
return
183+
}
184+
185+
migration := new(models.Migration)
186+
logger.Infof("版本升级开始, 当前版本号%d", currentVersionId)
187+
188+
migration.Upgrade(currentVersionId)
189+
app.UpdateVersionFile()
190+
191+
logger.Infof("已升级到最新版本%d", app.VersionId)
192+
}

0 commit comments

Comments
 (0)