Files
OpenList/bootstrap/cmd.go

79 lines
1.7 KiB
Go
Raw Normal View History

2020-12-24 01:39:45 +08:00
package bootstrap
import (
"flag"
2021-01-19 17:19:48 +08:00
"fmt"
2020-12-24 01:39:45 +08:00
"github.com/Xhofe/alist/conf"
serv "github.com/Xhofe/alist/server"
"github.com/gin-gonic/gin"
log "github.com/sirupsen/logrus"
)
func init() {
flag.BoolVar(&conf.Debug,"debug",false,"use debug mode")
flag.BoolVar(&conf.Help,"help",false,"show usage help")
2021-01-19 17:19:48 +08:00
flag.BoolVar(&conf.Version,"version",false,"show version info")
2020-12-24 01:39:45 +08:00
flag.StringVar(&conf.Con,"conf","conf.yml","config file")
2021-02-27 20:06:09 +08:00
flag.BoolVar(&conf.SkipUpdate,"skip-update",false,"skip update")
2020-12-24 01:39:45 +08:00
}
2021-02-04 10:02:34 +08:00
// bootstrap run
2020-12-24 01:39:45 +08:00
func Run() {
flag.Parse()
if conf.Help {
flag.Usage()
return
}
2021-01-19 17:19:48 +08:00
if conf.Version {
fmt.Println("Current version:"+conf.VERSION)
return
}
2020-12-24 01:39:45 +08:00
start()
}
2021-02-04 10:02:34 +08:00
// print asc
2020-12-24 01:39:45 +08:00
func printASC() {
log.Info(`
________ ___ ___ ________ _________
|\ __ \|\ \ |\ \|\ ____\|\___ ___\
\ \ \|\ \ \ \ \ \ \ \ \___|\|___ \ \_|
\ \ __ \ \ \ \ \ \ \_____ \ \ \ \
\ \ \ \ \ \ \____\ \ \|____|\ \ \ \ \
\ \__\ \__\ \_______\ \__\____\_\ \ \ \__\
\|__|\|__|\|_______|\|__|\_________\ \|__|
\|_________|
`)
}
2021-02-04 10:02:34 +08:00
// start server
2020-12-24 01:39:45 +08:00
func start() {
InitLog()
printASC()
2021-02-27 20:06:09 +08:00
if !conf.SkipUpdate {
CheckUpdate()
}
2020-12-24 01:39:45 +08:00
if !ReadConf(conf.Con) {
log.Errorf("读取配置文件时出现错误,启动失败.")
return
}
2020-12-26 18:11:17 +08:00
InitClient()
2020-12-24 01:39:45 +08:00
if !InitAliDrive() {
log.Errorf("初始化阿里云盘出现错误,启动失败.")
return
}
2020-12-29 13:37:58 +08:00
InitCache()
2020-12-24 01:39:45 +08:00
InitCron()
server()
}
2021-02-04 10:02:34 +08:00
// start http server
2020-12-24 01:39:45 +08:00
func server() {
baseServer:="0.0.0.0:"+conf.Conf.Server.Port
r:=gin.Default()
serv.InitRouter(r)
2020-12-26 18:11:17 +08:00
log.Infof("Starting server @ %s",baseServer)
2020-12-24 01:39:45 +08:00
err:=r.Run(baseServer)
if err!=nil {
log.Errorf("Server failed start:%s",err.Error())
}
}