diff options
| author | xengineering <me@xengineering.eu> | 2026-05-23 21:22:35 +0200 |
|---|---|---|
| committer | xengineering <me@xengineering.eu> | 2026-05-23 21:22:35 +0200 |
| commit | c6f5cf08563fed28c3cdcf79b0136a4038a02242 (patch) | |
| tree | 88da98af90d95717038050c4f716306722d0ce88 | |
| parent | 1307addddf61c7f811e8f4d360e2368ec7b4b2da (diff) | |
| download | finserv-c6f5cf08563fed28c3cdcf79b0136a4038a02242.tar finserv-c6f5cf08563fed28c3cdcf79b0136a4038a02242.tar.zst finserv-c6f5cf08563fed28c3cdcf79b0136a4038a02242.zip | |
Make run fully configurable
This makes the run() function compared to main() useful at all since all
parameters can be changed to test e.g. with unit tests.
| -rw-r--r-- | main.go | 14 |
1 files changed, 7 insertions, 7 deletions
@@ -23,24 +23,24 @@ var versionTxt string var router *mux.Router = mux.NewRouter() func main() { - run() + run(router, Addr, WriteTimeout, ReadTimeout, []syscall.Signal{syscall.SIGTERM, syscall.SIGINT}) } -func run() { +func run(handler http.Handler, addr string, wTimeout time.Duration, rTimeout time.Duration, signals []syscall.Signal) { log.Println("finserv finance server was started.") defer log.Println("finserv finance server was stopped.") server := &http.Server{ - Handler: router, - Addr: Addr, - WriteTimeout: WriteTimeout, - ReadTimeout: ReadTimeout, + Handler: handler, + Addr: addr, + WriteTimeout: wTimeout, + ReadTimeout: rTimeout, } go server.ListenAndServe() log.Printf("Serving at http://%s\n", Addr) - await(syscall.SIGTERM, syscall.SIGINT) + await(signals...) } func await(signals ...syscall.Signal) { |
