package main
import (
"race-history-3/libs"
"race-history-3/pages"
)
var Config libs.AppConfig
func main() {
Config = libs.ReadConfig()
pages.Init(/*Config*/)
}
package libs
import (
// "encoding/json"
"fmt"
// "io/ioutil"
)
type AppConfig interface {
GetHttpServerUrl() string
}
func (c Config) GetHttpServerUrl() string {
return fmt.Sprintf("%s:%d",
"127.0.0.1",
8080)
}
func ReadConfig() Config {
//чтение с диска json-конфига и возврат его в виде структуры Config
}
type Config struct {
//структура конфига, скучная ;)
}
package pages
import (
"github.com/gin-gonic/gin"
)
//var Conf libs.AppConfig
func Init(/*Config libs.AppConfig*/) {
//Conf = Config
r := gin.Default()
// всякая скучная ерунда с описанием маршрутов
err := r.Run(Config.GetHttpServerUrl())
if err != nil {
panic(err.Error())
}
}