Files
VLoop/internal/config/loadconfig.go

39 lines
663 B
Go

package config
import (
"io/ioutil"
"gopkg.in/yaml.v3"
)
type Config struct {
Server ServerConfig `yaml:"server"`
Database DatabaseConfig `yaml:"database"`
}
type ServerConfig struct {
Port string `yaml:"port"`
}
type DatabaseConfig struct {
Host string `yaml:"host"`
Port string `yaml:"port"`
User string `yaml:"user"`
Password string `yaml:"password"`
DBName string `yaml:"dbname"`
}
func Load(filename string) (Config, error) {
data, err := ioutil.ReadFile(filename)
if err != nil {
return Config{}, err
}
var cfg Config
if err := yaml.Unmarshal(data, &cfg); err != nil {
return Config{}, err
}
return cfg, nil
}