поправил флаги

This commit is contained in:
Alexander NeonXP Kiryukhin 2024-04-06 22:16:56 +03:00
parent 33f9af3918
commit fcb71b492a
Signed by: NeonXP
GPG key ID: 35E33E1AB7776B39

13
main.go
View file

@ -3,6 +3,7 @@ package main
import (
"context"
"encoding/json"
"flag"
"html/template"
"log/slog"
"net/http"
@ -15,19 +16,17 @@ import (
var (
templates = template.Must(template.ParseFS(tplFS, "tpl/*.gohtml"))
packages = Packages{}
bindAddr = flag.String("bind", ":8080", "Address to bind")
config = flag.String("config", "/etc/pkg/config.json", "Config file path")
)
func main() {
addr := os.Getenv("ADDR")
if addr == "" {
addr = ":8080"
}
ctx, cancel := signal.NotifyContext(context.Background(), os.Interrupt, os.Kill)
defer cancel()
cfg := &Config{}
fp, err := os.Open("./config.json")
fp, err := os.Open(*config)
if err != nil {
panic(err)
}
@ -73,14 +72,14 @@ func main() {
srv := &http.Server{
Handler: h,
Addr: addr,
Addr: *bindAddr,
}
go func() {
<-ctx.Done()
srv.Shutdown(context.Background())
}()
logger.Info("server started", slog.String("bind", addr))
logger.Info("server started", slog.String("bind", *bindAddr))
if err := srv.ListenAndServe(); err != http.ErrServerClosed {
panic(err)
}