timoth-y/kicksware-api

View on GitHub
services/products/env/serviceConfig.go

Summary

Maintainability
A
0 mins
Test Coverage
package env

import (
    "io/ioutil"

    "go.kicksware.com/api/shared/config"
    "gopkg.in/yaml.v2"

    "github.com/golang/glog"
)

type ServiceConfig struct {
    Common   config.CommonConfig    `yaml:"commonConfig"`
    Security config.SecurityConfig  `yaml:"securityConfig"`
    Auth     config.AuthConfig      `yaml:"authConfig"`
    Mongo    config.DataStoreConfig `yaml:"mongoConfig"`
    Postgres config.DataStoreConfig `yaml:"postgresConfig"`
    Redis    config.DataStoreConfig `yaml:"redisConfig"`
}

func ReadServiceConfig(filename string) (sc ServiceConfig, err error) {
    file, err := ioutil.ReadFile(filename); if err != nil {
        glog.Fatalln(err)
        return
    }
    err = yaml.Unmarshal(file, &sc); if err != nil {
        glog.Fatalln(err)
        return
    }
    return
}