增加edge-admin [dev|prod]两个命令

This commit is contained in:
GoEdgeLab
2022-05-11 21:39:31 +08:00
parent 98d65535a3
commit a0d2254545
3 changed files with 45 additions and 6 deletions

View File

@@ -18,14 +18,19 @@ func main() {
Version(teaconst.Version). Version(teaconst.Version).
Product(teaconst.ProductName). Product(teaconst.ProductName).
Usage(teaconst.ProcessName+" [-v|start|stop|restart|service|daemon|reset|recover|demo]"). Usage(teaconst.ProcessName+" [-v|start|stop|restart|service|daemon|reset|recover|demo]").
Usage(teaconst.ProcessName+" [dev|prod]").
Option("-h", "show this help"). Option("-h", "show this help").
Option("-v", "show version"). Option("-v", "show version").
Option("start", "start the service"). Option("start", "start the service").
Option("stop", "stop the service"). Option("stop", "stop the service").
Option("restart", "restart the service").
Option("service", "register service into systemd"). Option("service", "register service into systemd").
Option("daemon", "start the service with daemon"). Option("daemon", "start the service with daemon").
Option("reset", "reset configs"). Option("reset", "reset configs").
Option("recover", "enter recovery mode") Option("recover", "enter recovery mode").
Option("demo", "switch to demo mode").
Option("dev", "switch to 'dev' mode").
Option("prod", "switch to 'prod' mode")
app.On("daemon", func() { app.On("daemon", func() {
nodes.NewAdminNode().Daemon() nodes.NewAdminNode().Daemon()
@@ -84,6 +89,32 @@ func main() {
return return
} }
}) })
app.On("dev", func() {
var env = "dev"
var sock = gosock.NewTmpSock(teaconst.ProcessName)
_, err := sock.Send(&gosock.Command{
Code: env,
Params: nil,
})
if err != nil {
fmt.Println("failed to switch to '" + env + "': " + err.Error())
} else {
fmt.Println("switch to '" + env + "' ok")
}
})
app.On("prod", func() {
var env = "prod"
var sock = gosock.NewTmpSock(teaconst.ProcessName)
_, err := sock.Send(&gosock.Command{
Code: env,
Params: nil,
})
if err != nil {
fmt.Println("failed to switch to '" + env + "': " + err.Error())
} else {
fmt.Println("switch to '" + env + "' ok")
}
})
app.Run(func() { app.Run(func() {
adminNode := nodes.NewAdminNode() adminNode := nodes.NewAdminNode()
adminNode.Run() adminNode.Run()

View File

@@ -18,7 +18,7 @@ import (
type AppCmd struct { type AppCmd struct {
product string product string
version string version string
usage string usages []string
options []*CommandHelpOption options []*CommandHelpOption
appendStrings []string appendStrings []string
@@ -52,7 +52,7 @@ func (this *AppCmd) Version(version string) *AppCmd {
// Usage 使用方法 // Usage 使用方法
func (this *AppCmd) Usage(usage string) *AppCmd { func (this *AppCmd) Usage(usage string) *AppCmd {
this.usage = usage this.usages = append(this.usages, usage)
return this return this
} }
@@ -75,8 +75,10 @@ func (this *AppCmd) Append(appendString string) *AppCmd {
func (this *AppCmd) Print() { func (this *AppCmd) Print() {
fmt.Println(this.product + " v" + this.version) fmt.Println(this.product + " v" + this.version)
usage := this.usage fmt.Println("Usage:")
fmt.Println("Usage:", "\n "+usage) for _, usage := range this.usages {
fmt.Println(" " + usage)
}
if len(this.options) > 0 { if len(this.options) > 0 {
fmt.Println("") fmt.Println("")

View File

@@ -41,7 +41,7 @@ func (this *AdminNode) Run() {
SharedAdminNode = this SharedAdminNode = this
// 启动管理界面 // 启动管理界面
secret := this.genSecret() var secret = this.genSecret()
configs.Secret = secret configs.Secret = secret
// 本地Sock // 本地Sock
@@ -382,6 +382,12 @@ func (this *AdminNode) listenSock() error {
"path": exePath, "path": exePath,
}, },
}) })
case "dev": // 切换到dev
Tea.Env = Tea.EnvDev
_ = cmd.ReplyOk()
case "prod": // 切换到prod
Tea.Env = Tea.EnvProd
_ = cmd.ReplyOk()
} }
}) })