M config/config.go => config/config.go +3 -5
@@ 7,8 7,6 @@ import (
"git.sr.ht/~emersion/go-scfg"
)
-var configPath string = "/etc/10man-api/config"
-
var Port string
// ConnectionString is used to connect to the database
@@ 19,10 17,10 @@ var Admins []string
var Maps []string
-func init() {
- cfg, err := scfg.Load(configPath)
+func ReadConfig(path string) {
+ cfg, err := scfg.Load(path)
if err != nil {
- log.Fatalf("could not read config file %q", configPath)
+ log.Fatalf("could not read config file %q", path)
}
for _, d := range cfg {
M server.go => server.go +6 -0
@@ 15,6 15,12 @@ import (
)
func main() {
+ var configPath string
+ flag.StringVar(&configPath, "config", "/etc/10man-api/config", "config file path")
+ flag.Parse()
+
+ config.ReadConfig(configPath)
+
port := os.Getenv("PORT")
if port == "" {
port = config.Port