Skip to content

Commit

Permalink
Add a couple of log lines and some argument parsing
Browse files Browse the repository at this point in the history
  • Loading branch information
pcarranza committed Sep 18, 2018
1 parent 746dbef commit 93c679e
Showing 1 changed file with 22 additions and 4 deletions.
26 changes: 22 additions & 4 deletions main.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package main

import (
"flag"
"fmt"
"net/http"

Expand All @@ -11,28 +12,31 @@ import (
func main() {
setupLogger()

args := parseArgs()

http.HandleFunc("/github", handleGithub)

logrus.Fatal(http.ListenAndServe(":9999", nil))
logrus.Infof("listening on %s", args.Address)
logrus.Fatal(http.ListenAndServe(args.Address, nil))
}

func handleGithub(w http.ResponseWriter, r *http.Request) {
if err := r.ParseForm(); err != nil {
logrus.Debugf("Failed to parse form on request %s: %#v", r, err)
logrus.Debugf("failed to parse form on request %s: %#v", r, err)
http.Error(w, fmt.Sprintf("bad request: %s", err), http.StatusBadRequest)
return
}

payload := r.FormValue("payload")
if payload == "" {
logrus.Debugf("No payload in form %#v", r.Form)
logrus.Debugf("no payload in form %#v", r.Form)
http.Error(w, "no payload in form", http.StatusBadRequest)
return
}

w.WriteHeader(http.StatusAccepted)

logrus.Println("Received Webhook payload: %s", payload)
logrus.Println("received Webhook payload: %s", payload)
}

func setupLogger() {
Expand All @@ -42,3 +46,17 @@ func setupLogger() {
})
logrus.SetLevel(logrus.DebugLevel)
}

// Args represents the commandline arguments
type Args struct {
Address string
}

func parseArgs() Args {
var args Args

flag.StringVar(&args.Address, "address", ":9092", "listening address")
flag.Parse()

return args
}

0 comments on commit 93c679e

Please sign in to comment.