Golang library for reading configurations from JSON, YAML files, environment variables and command line.
cli | ||
env | ||
test | ||
utils | ||
.gitignore | ||
config_test.go | ||
config.go | ||
LICENSE | ||
README.md |
Introduction
config is a simple golang library and designed to read configurations from JSON, Yaml files, environment variables and command line. config depends on go-yaml to anlayze Yaml file and use built-in golang library to handle JSON file.
Installation
- Install Yaml library first:
go get gopkg.in/yaml.v2
- Install config library:
go get github.com/eschao/config
Usage
Defines default values
config library supports defining a default value for structure members by using default keyword in structure tags
type Database struct {
Username string `default:"admin"`
Password string `default:"admin"`
}
After specified default value in tags, calls config.ParseDefault(interface{})
to set it on structure instance, example codes as the below:
dbConfig := Database{}
config.ParseDefault(&dbConfig)