@@ -2,14 +2,15 @@ package router
22
33import (
44 "fmt"
5+ "net/http"
6+ "os"
7+ "time"
8+
59 "github.com/yezihack/github-webhook/config"
610 "github.com/yezihack/github-webhook/internal"
711 "github.com/yezihack/github-webhook/logger"
812 "github.com/yezihack/github-webhook/util"
913 "github.com/yezihack/gorestful"
10- "net/http"
11- "os"
12- "time"
1314)
1415
1516var (
@@ -23,18 +24,25 @@ func New(cfg config.Config) error {
2324 }
2425 log = logger .NewLogger (cfg .Quiet , cfg .Verbose )
2526 router := gorestful .New ()
27+ router .GET ("/" , pong )
2628 router .GET ("/ping" , pong )
2729 router .POST ("/web-hook" , webHookLog (cfg ))
2830 addr := fmt .Sprintf (":%d" , cfg .Port )
29- go func () {
30- log .Printf ("%s %d %s\n " , time .Now ().Format ("2006/01/02 15:04:05" ), os .Getpid (), addr )
31- }()
31+ go log .Printf ("%s %d %s\n " , time .Now ().Format ("2006/01/02 15:04:05" ), os .Getpid (), addr )
3232 if err := http .ListenAndServe (addr , router ); err != nil {
3333 return err
3434 }
3535 return nil
3636}
3737
38+ func version (w http.ResponseWriter , r * http.Request ) {
39+ if r .Method != "GET" {
40+ util .Response (w , 405 , "Method Not Allowed" )
41+ return
42+ }
43+ util .Response (w , 200 , config .Version )
44+ }
45+
3846func pong (w http.ResponseWriter , r * http.Request ) {
3947 if r .Method != "GET" {
4048 util .Response (w , 405 , "Method Not Allowed" )
@@ -54,12 +62,15 @@ func webHookLog(conf config.Config) http.HandlerFunc {
5462 payload .CommitName , payload .CommitEmail , payload .BranchName , payload .CommitID , payload .CommitAt )
5563 log .Printf ("script filename:%s\n " , conf .ScriptBash )
5664 // All is good (return an error to fail)
57- str , err := util .CallScript (conf .ScriptBash )
58- if err != nil {
59- log .Println (err )
60- return err
61- }
62- log .Println (str )
65+ internal .NewBackend (true ).Add (func () {
66+ str , err := util .CallScript (conf .ScriptBash )
67+ if err != nil {
68+ fmt .Println ("backend-err:" , err )
69+ return
70+ }
71+ fmt .Println ("backend-result:" , str )
72+ })
73+ fmt .Println ("exec end" )
6374 return nil
6475 })
6576}
0 commit comments