github.com/serge-v/zero@v1.0.2-0.20220911142406-af4b6a19e68a/cmd/zerosrv/main.go (about)

     1  package main
     2  
     3  import (
     4  	"flag"
     5  	"log"
     6  	"net/http"
     7  
     8  	"github.com/serge-v/zero/server"
     9  )
    10  
    11  var debug = flag.Bool("debug", false, "run in debug mode")
    12  
    13  func main() {
    14  	flag.Parse()
    15  
    16  	mux := &http.ServeMux{}
    17  	mux.HandleFunc("/email", server.EmailHandler)
    18  	go func() {
    19  		if err := http.ListenAndServe("127.0.0.1:8000", mux); err != nil {
    20  			log.Fatal("service endpoint error", err)
    21  		}
    22  	}()
    23  
    24  	http.HandleFunc("/deploy", server.HandleDeployRequest)
    25  	http.HandleFunc("/log", server.HandleLogRequest)
    26  	http.HandleFunc("/", server.HandleAppRequest)
    27  	addr := ":80"
    28  	if *debug {
    29  		addr = "127.0.0.1:8099"
    30  	}
    31  
    32  	log.Println("starting apps")
    33  	server.StartApps()
    34  
    35  	log.Println("starting http server on", addr)
    36  	if err := http.ListenAndServe(addr, nil); err != nil {
    37  		log.Fatal(err)
    38  	}
    39  }