38 lines
550 B
Go
38 lines
550 B
Go
package config
|
|
|
|
import (
|
|
"os"
|
|
|
|
"gopkg.in/yaml.v3"
|
|
)
|
|
|
|
var ConfigManager = &configManager{}
|
|
|
|
func init() {
|
|
err := ConfigManager.LoadConfig("config.yml")
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
}
|
|
|
|
type configManager struct {
|
|
propertys map[string]string
|
|
}
|
|
|
|
func (cm *configManager) LoadConfig(path string) error {
|
|
data, err := os.ReadFile(path)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
err = yaml.Unmarshal(data, &cm.propertys)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (cm *configManager) GetProperty(key string) string {
|
|
return cm.propertys[key]
|
|
}
|