Added server to config
This commit is contained in:
parent
949d691ef7
commit
0fbf41968b
@ -1,3 +1,8 @@
|
|||||||
|
[server]
|
||||||
|
address = "127.0.0.1:8080"
|
||||||
|
read_timeout = 10
|
||||||
|
write_timeout = 10
|
||||||
|
|
||||||
[database]
|
[database]
|
||||||
driver = "sqlite3"
|
driver = "sqlite3"
|
||||||
url = "gopay.db"
|
url = "gopay.db"
|
||||||
|
19
cmd/main.go
19
cmd/main.go
@ -2,10 +2,13 @@ package main
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
_ "embed"
|
_ "embed"
|
||||||
|
"net/http"
|
||||||
|
"time"
|
||||||
|
|
||||||
"git.supernets.org/perp/gopay/internal/config"
|
"git.supernets.org/perp/gopay/internal/config"
|
||||||
"git.supernets.org/perp/gopay/internal/context"
|
"git.supernets.org/perp/gopay/internal/context"
|
||||||
"git.supernets.org/perp/gopay/internal/router"
|
"git.supernets.org/perp/gopay/internal/router"
|
||||||
|
"github.com/rs/zerolog/log"
|
||||||
)
|
)
|
||||||
|
|
||||||
//go:embed config.toml
|
//go:embed config.toml
|
||||||
@ -15,9 +18,25 @@ var content []byte
|
|||||||
const version = "0.0.0"
|
const version = "0.0.0"
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
|
// Parse config
|
||||||
cfg := config.Parse(content)
|
cfg := config.Parse(content)
|
||||||
config.SetupLogger(cfg)
|
config.SetupLogger(cfg)
|
||||||
|
|
||||||
|
// Create context & router
|
||||||
ctx := context.New(cfg)
|
ctx := context.New(cfg)
|
||||||
router.New(ctx)
|
router.New(ctx)
|
||||||
|
|
||||||
|
// Create server
|
||||||
|
server := &http.Server{
|
||||||
|
Handler: ctx.Engine,
|
||||||
|
Addr: cfg.Server.Address,
|
||||||
|
ReadTimeout: time.Second * time.Duration(cfg.Server.ReadTimeout),
|
||||||
|
WriteTimeout: time.Second * time.Duration(cfg.Server.WriteTimeout),
|
||||||
|
}
|
||||||
|
|
||||||
|
// Start server
|
||||||
|
err := server.ListenAndServe()
|
||||||
|
if err != nil {
|
||||||
|
log.Panic().Msg(err.Error())
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,10 +2,18 @@ package config
|
|||||||
|
|
||||||
// Configuration
|
// Configuration
|
||||||
type Config struct {
|
type Config struct {
|
||||||
|
Server *Server
|
||||||
Database *Database
|
Database *Database
|
||||||
Log *Log
|
Log *Log
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Server configuration
|
||||||
|
type Server struct {
|
||||||
|
Address string `toml:"address"`
|
||||||
|
ReadTimeout int `toml:"read_timeout"`
|
||||||
|
WriteTimeout int `toml:"write_timeout"`
|
||||||
|
}
|
||||||
|
|
||||||
// Database configuration
|
// Database configuration
|
||||||
type Database struct {
|
type Database struct {
|
||||||
Driver string `toml:"driver"`
|
Driver string `toml:"driver"`
|
||||||
|
Loading…
Reference in New Issue
Block a user