diff --git a/machines/app/cfg/config.go b/machines/app/cfg/config.go new file mode 100644 index 0000000..b6b3f26 --- /dev/null +++ b/machines/app/cfg/config.go @@ -0,0 +1,24 @@ +package cfg + +import ( + "github.com/kelseyhightower/envconfig" +) + +type configStruct struct { + DbHost string `default:"localhost"` + DbPort int `default:"55432"` + DbName string `default:"komponiranje"` + DbUser string `default:"pero"` + DbPassword string `default:"pero.000"` +} + +const ENV_PREFIX = "" + +var Config configStruct + +func init() { + err := envconfig.Process(ENV_PREFIX, &Config) + if err != nil { + panic(err) + } +} diff --git a/machines/app/db/db.go b/machines/app/db/db.go index 651ffd7..499599b 100644 --- a/machines/app/db/db.go +++ b/machines/app/db/db.go @@ -2,25 +2,20 @@ package db import ( "fmt" + "machines/app/cfg" "gorm.io/driver/postgres" "gorm.io/gorm" gormLogger "gorm.io/gorm/logger" ) -var dbHost = "localhost" -var dbPort = 55432 -var dbUser = "pero" -var dbPassword = "pero.000" -var dbName = "komponiranje" - func ConnectDb() *gorm.DB { var connectionString = fmt.Sprintf("postgres://%s:%s@%s:%d/%s?sslmode=disable", - dbUser, - dbPassword, - dbHost, - dbPort, - dbName, + cfg.Config.DbUser, + cfg.Config.DbPassword, + cfg.Config.DbHost, + cfg.Config.DbPort, + cfg.Config.DbName, ) var err error diff --git a/machines/go.mod b/machines/go.mod index 372ce57..015cdc4 100644 --- a/machines/go.mod +++ b/machines/go.mod @@ -24,6 +24,7 @@ require ( github.com/jinzhu/inflection v1.0.0 // indirect github.com/jinzhu/now v1.1.5 // indirect github.com/json-iterator/go v1.1.12 // indirect + github.com/kelseyhightower/envconfig v1.4.0 // indirect github.com/klauspost/cpuid/v2 v2.2.4 // indirect github.com/kr/text v0.2.0 // indirect github.com/leodido/go-urn v1.2.4 // indirect diff --git a/machines/go.sum b/machines/go.sum index 0eff026..a0ac002 100644 --- a/machines/go.sum +++ b/machines/go.sum @@ -42,6 +42,8 @@ github.com/jinzhu/now v1.1.5 h1:/o9tlHleP7gOFmsnYNz3RGnqzefHA47wQpKrrdTIwXQ= github.com/jinzhu/now v1.1.5/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= +github.com/kelseyhightower/envconfig v1.4.0 h1:Im6hONhd3pLkfDFsbRgu68RDNkGF1r3dvMUtDTo2cv8= +github.com/kelseyhightower/envconfig v1.4.0/go.mod h1:cccZRl6mQpaq41TPp5QxidR+Sa3axMbJDNb//FQX6Gg= github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg= github.com/klauspost/cpuid/v2 v2.2.4 h1:acbojRNwl3o09bUq+yDCtZFc1aiwaAAxtcn8YkZXnvk= github.com/klauspost/cpuid/v2 v2.2.4/go.mod h1:RVVoqg1df56z8g3pUjL/3lE5UfnlrJX8tyFgg4nqhuY=