🔧 close #519 customize temp dir

pull/548/head
Xhofe 2022-02-14 15:06:57 +08:00
parent e90b979d15
commit 228e6d10e7
2 changed files with 24 additions and 22 deletions

View File

@ -10,10 +10,6 @@ import (
// InitConf init config
func InitConf() {
err := os.MkdirAll("data/temp", 0700)
if err != nil {
log.Fatalf("create temp dir error: %s", err.Error())
}
log.Infof("reading config file: %s", conf.ConfigFile)
if !utils.Exists(conf.ConfigFile) {
log.Infof("config file not exists, creating default config file")
@ -25,25 +21,29 @@ func InitConf() {
if !utils.WriteToJson(conf.ConfigFile, conf.Conf) {
log.Fatalf("failed to create default config file")
}
return
} else {
config, err := ioutil.ReadFile(conf.ConfigFile)
if err != nil {
log.Fatalf("reading config file error:%s", err.Error())
}
conf.Conf = new(conf.Config)
err = utils.Json.Unmarshal(config, conf.Conf)
if err != nil {
log.Fatalf("load config error: %s", err.Error())
}
log.Debugf("config:%+v", conf.Conf)
// update config.json struct
confBody, err := utils.Json.MarshalIndent(conf.Conf, "", " ")
if err != nil {
log.Fatalf("marshal config error:%s", err.Error())
}
err = ioutil.WriteFile(conf.ConfigFile, confBody, 0777)
if err != nil {
log.Fatalf("update config struct error: %s", err.Error())
}
}
config, err := ioutil.ReadFile(conf.ConfigFile)
err := os.MkdirAll(conf.Conf.TempDir, 0700)
if err != nil {
log.Fatalf("reading config file error:%s", err.Error())
}
conf.Conf = new(conf.Config)
err = utils.Json.Unmarshal(config, conf.Conf)
if err != nil {
log.Fatalf("load config error: %s", err.Error())
}
log.Debugf("config:%+v", conf.Conf)
// update config.json struct
confBody, err := utils.Json.MarshalIndent(conf.Conf, "", " ")
if err != nil {
log.Fatalf("marshal config error:%s", err.Error())
}
err = ioutil.WriteFile(conf.ConfigFile, confBody, 0777)
if err != nil {
log.Fatalf("update config struct error: %s", err.Error())
log.Fatalf("create temp dir error: %s", err.Error())
}
}

View File

@ -30,6 +30,7 @@ type Config struct {
Database Database `json:"database"`
Scheme Scheme `json:"scheme"`
Cache CacheConfig `json:"cache"`
TempDir string `json:"temp_dir"`
}
func DefaultConfig() *Config {
@ -37,6 +38,7 @@ func DefaultConfig() *Config {
Address: "0.0.0.0",
Port: 5244,
Assets: "jsdelivr",
TempDir: "data/temp",
Database: Database{
Type: "sqlite3",
Port: 0,