40 lines
884 B
Go
40 lines
884 B
Go
package main
|
|
|
|
import (
|
|
"log"
|
|
"net/http"
|
|
"os"
|
|
"time"
|
|
)
|
|
|
|
func main() {
|
|
addr := envOr("LISTEN_ADDR", ":8084")
|
|
handler, err := newHandler(
|
|
envOr("CORE_RUNTIME_URL", "http://core-runtime:8080"),
|
|
envOr("CONTINUITY_RUNTIME_URL", "http://continuity-runtime:8081"),
|
|
envOr("COMMIT_RUNTIME_URL", "http://commit-runtime:8082"),
|
|
&http.Client{Timeout: 10 * time.Second},
|
|
envOr("COGNITIVE_RUNTIME_URL", "http://cognitive-worker:8083"),
|
|
)
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
server := &http.Server{
|
|
Addr: addr,
|
|
Handler: handler,
|
|
ReadHeaderTimeout: 5 * time.Second,
|
|
IdleTimeout: 60 * time.Second,
|
|
}
|
|
log.Printf("creator-web listening on %s", addr)
|
|
if err := server.ListenAndServe(); err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
}
|
|
|
|
func envOr(name, fallback string) string {
|
|
if value := os.Getenv(name); value != "" {
|
|
return value
|
|
}
|
|
return fallback
|
|
}
|