maingate 이전
This commit is contained in:
48
main.go
Normal file
48
main.go
Normal file
@ -0,0 +1,48 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"context"
|
||||
"flag"
|
||||
"math/rand"
|
||||
"net/http"
|
||||
"time"
|
||||
|
||||
"repositories.action2quare.com/ayo/maingate/core"
|
||||
|
||||
"repositories.action2quare.com/ayo/go-ayo/common"
|
||||
"repositories.action2quare.com/ayo/go-ayo/logger"
|
||||
)
|
||||
|
||||
// linux : go build --ldflags="-X 'main.revision=$(git rev-parse --short HEAD)'"
|
||||
// windows : for /f usebackq %F in (`git rev-parse --short HEAD`) do go build --ldflags="-X 'main.revision=%F'"
|
||||
var revision = "0000000"
|
||||
|
||||
func main() {
|
||||
if !flag.Parsed() {
|
||||
flag.Parse()
|
||||
}
|
||||
|
||||
logger.Println("build revision =", revision)
|
||||
rand.Seed(time.Now().UnixNano())
|
||||
|
||||
ctx, cancel := context.WithCancel(context.Background())
|
||||
mg, err := core.New(ctx)
|
||||
if err != nil {
|
||||
logger.Error("core.New failed :", err)
|
||||
panic(err)
|
||||
}
|
||||
|
||||
serveMux := http.NewServeMux()
|
||||
if err := mg.RegisterHandlers(ctx, serveMux, *common.PrefixPtr); err != nil {
|
||||
logger.Error("RegisterHandlers failed :", err)
|
||||
panic(err)
|
||||
}
|
||||
|
||||
server := common.NewHTTPServer(serveMux)
|
||||
logger.Println("maingate is started")
|
||||
if err := server.Start(); err != nil {
|
||||
logger.Error("maingate is stopped with error :", err)
|
||||
}
|
||||
cancel()
|
||||
mg.Destructor()
|
||||
}
|
||||
Reference in New Issue
Block a user