123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- package config
- import (
- "io/ioutil"
- yaml "gopkg.in/yaml.v2"
- )
- const (
- LOG_LEVEL_OFF = iota
- LOG_LEVEL_INFO
- LOG_LEVEL_DEBUG
- )
- type ConfigT struct {
- // Domain
- Domain string
- // Logging
- LogLevel int `yaml:"log_level"`
- // Admin credentials
- Admin struct {
- Username string
- Password string
- }
- // Database
- Orm struct {
- Connection string
- Options string
- Reset bool
- AutoMigrate bool
- Regenerate bool
- }
- // LDAP
- Ldap struct {
- Host string
- Port string
- BindPassword string `yaml:"bind_password"`
- BindUser string `yaml:"bind_user"`
- RootDN string `yaml:"root_dn"`
- OuPeople string `yaml:"ou_people"`
- OuTeacher string `yaml:"ou_teacher"`
- OuGroup string `yaml:"ou_group"`
- OuTeachersGroup string `yaml:"ou_teachers_group"`
- }
- // LimeSurvey Remote Control URL
- Limesurvey struct {
- Url string
- Username string
- Password string
- }
- // Cloud
- Cloud struct {
- Url string
- Username string
- Password string
- }
- }
- var Config *ConfigT
- func init() {
- Config = new(ConfigT)
- }
- // Load loads the config file placed at the given path.
- func Load(path string, config *ConfigT) error {
- cf, err := ioutil.ReadFile(path)
- if err != nil {
- return err
- }
- if err := yaml.Unmarshal(cf, config); err != nil {
- return err
- }
- return nil
- }
|