Browse Source

update command

pull/25/head
yedf2 5 years ago
parent
commit
57fa97e942
  1. 4
      Dockerfile
  2. 33
      app/main.go
  3. 2
      examples/data.go

4
Dockerfile

@ -1,6 +1,6 @@
FROM daocloud.io/atsctoo/golang:1.15
WORKDIR /app/dtm
RUN go env -w GO111MODULE=on
RUN go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct
RUN go env -w GOPROXY=https://goproxy.io,direct
EXPOSE 8080
CMD [ "/bin/bash", "-c", "go build app/main.go && /app/dtm/main" ]
CMD [ "/bin/bash", "-c", "go build app/main.go && /app/dtm/main dev"]

33
app/main.go

@ -28,7 +28,8 @@ func main() {
"dtm [command]",
"",
"Available Commands:",
"dtmsvr run dtm as a server. ",
"dtmsvr run dtm as a server.",
"dev create all needed table and run dtm as a server.",
"",
"quick_start run quick start example. dtm will create all needed table",
"qs same as quick_start",
@ -40,32 +41,26 @@ func main() {
}
return
}
onlyServer := len(os.Args) > 1 && os.Args[1] == "dtmsvr"
if !onlyServer { // 实际线上运行,只启动dtmsvr,不准备table相关的数据
if os.Args[1] != "dtmsvr" { // 实际线上运行,只启动dtmsvr,不准备table相关的数据
dtmsvr.PopulateDB(true)
examples.PopulateDB(true)
}
dtmsvr.StartSvr() // 启动dtmsvr的api服务
go dtmsvr.CronExpiredTrans(-1) // 启动dtmsvr的定时过期查询
if onlyServer || len(os.Args) == 1 { // 没有参数,或者参数为dtmsvr,则不运行例子
wait()
}
examples.PopulateDB(true)
// quick_start 比较独立,单独作为一个例子运行,方便新人上手
if len(os.Args) > 1 && (os.Args[1] == "quick_start" || os.Args[1] == "qs") {
if os.Args[1] == "quick_start" || os.Args[1] == "qs" {
examples.QsStartSvr()
examples.QsFireRequest()
wait()
}
// 下面是各类的例子
examples.GrpcStartup()
examples.BaseAppStartup()
} else if os.Args[1] == "dev" {
} else {
// 下面是各类的例子
examples.GrpcStartup()
examples.BaseAppStartup()
sample := examples.Samples[os.Args[1]]
dtmcli.LogIfFatalf(sample == nil, "no sample name for %s", os.Args[1])
sample.Action()
sample := examples.Samples[os.Args[1]]
dtmcli.LogIfFatalf(sample == nil, "no sample name for %s", os.Args[1])
sample.Action()
}
wait()
}

2
examples/data.go

@ -47,6 +47,6 @@ type sampleInfo struct {
var Samples = map[string]*sampleInfo{}
func addSample(name string, fn func() string) {
dtmcli.LogIfFatalf(Samples[name] != nil, "%s already exists")
dtmcli.LogIfFatalf(Samples[name] != nil, "%s already exists", name)
Samples[name] = &sampleInfo{Arg: name, Action: fn}
}

Loading…
Cancel
Save