1
0
mirror of https://github.com/mgerb/mywebsite synced 2026-01-09 01:12:52 +00:00
Files
mywebsite/server/utils/config.go
2017-07-25 18:28:20 -05:00

64 lines
939 B
Go

package utils
import (
"encoding/json"
"flag"
"io/ioutil"
"log"
"os"
"github.com/mgerb/mywebsite/server/controller/api"
"github.com/mgerb/mywebsite/server/db"
)
//structure for application configurations
type Config struct {
Database db.DatabaseInfo `json:"Database"`
Api api.ApiInfo `json:"Api"`
Address string `json:"Address"`
}
type Flags struct {
TLS bool
}
//read the config file and return JsonObject struct
func ReadConfig() Config {
log.Println("Reading config file...")
file, e := ioutil.ReadFile("./config.json")
if e != nil {
log.Printf("File error: %v\n", e)
os.Exit(1)
}
log.Printf("%s\n", string(file))
var result Config
err := json.Unmarshal(file, &result)
if err != nil {
log.Println(err)
}
return result
}
func ParseFlags() Flags {
flags := Flags{
TLS: false,
}
tls := flag.Bool("tls", false, "Use TLS")
flag.Parse()
flags.TLS = *tls
return flags
}