hozonsite/config.go

47 行
910 B
Go
Raw 通常表示 履歴

2023-05-10 22:47:27 +09:00
package main
import (
"os"
2023-05-10 22:47:27 +09:00
"fmt"
"runtime"
"encoding/json"
)
type Config struct {
configpath string
webpath string
datapath string
domain string
}
func getconf () Config {
var payload map[string]interface{}
var cnf Config
prefix := "/usr"
if runtime.GOOS == "freebsd" || runtime.GOOS == "openbsd" {
prefix += "/local"
2023-06-23 12:43:13 +09:00
} else if runtime.GOOS == "netbsd" {
prefix += "/pkg"
2023-05-10 22:47:27 +09:00
}
2023-05-14 11:44:09 +09:00
cnf.configpath = "/etc/hozonsite/config.json"
2023-05-10 22:47:27 +09:00
//_, err = os.Stat(cnf.configpath)
cnf.datapath = prefix + "/share/hozonsite"
2023-06-23 12:43:13 +09:00
if runtime.GOOS == "freebsd" || runtime.GOOS == "netbsd" {
2023-05-10 22:47:27 +09:00
cnf.configpath = prefix + cnf.configpath
}
data, err := os.ReadFile(cnf.configpath)
2023-05-10 22:47:27 +09:00
if err != nil {
fmt.Println("エラー:", err)
}
json.Unmarshal(data, &payload)
cnf.webpath = payload["webpath"].(string)
cnf.domain = payload["domain"].(string)
payload = nil
return cnf
}