1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- package config
- import (
- "fmt"
- "github.com/spf13/cast"
- "os"
- "sync"
- "time"
- "github.com/joho/godotenv"
- "github.com/sirupsen/logrus"
- )
- var initOnce sync.Once
- var SystemId int64
- func Init(cfgfile string) {
- initOnce.Do(func() {
- envFilename := cfgfile
- // if SysType == "windows" {
- // envFilename = "local.env"
- // // go run main.go -c local67.env
- // flag.StringVar(&envFilename, "c", "local.env", "配置环境")
- // flag.Parse()
- // }
- fmt.Printf("当前运行环境为:%v, 加载的环境变量路径为:%v, 运行路径为:%v \r\n", SysType, envFilename, RootPtah)
- if err := godotenv.Load(envFilename); err != nil {
- logrus.Panic("本地环境加载失败", err)
- return
- }
- // 全局修改为上海时区
- time.Local, _ = time.LoadLocation("Asia/Shanghai")
- // 读取翻译文件
- if err := LoadLocales("manifest/locales/zh-cn.yaml"); err != nil {
- logrus.Panic("翻译文件加载失败", err)
- }
- BuildLogger()
- InitDatabase()
- InitRedis()
- InitCache()
- InitNats()
- InitEtcd()
- InitElastic()
- InitCOSClient()
- InitEntranceIamClient()
- // 初始化系统id
- SystemId = cast.ToInt64(os.Getenv("SYSTEM_ID"))
- })
- }
|