beego下根据部署环境加载相应配置文件

EndlessIdea · · 2783 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

最近用beego开发的项目频繁的要部署到测试环境提测,然后部署到线上发布,由于两种环境下配置文件中某些配置参数不同,每次手动修改很是麻烦,故而想有没有办法能根据部署环境的不同加载相应环境的配置变量。
幸而得同事告知,两种环境下都会注入ENV_CLUSTER这个系统环境变量,且变量值不同。于是,在main函数beego.Run()执行前,我创建了一个预先执行的init文件,将自适应环境加载配置文件的代码逻辑放在了这里。
具体代码如下:

    env := os.Getenv("ENV_CLUSTER")
    if env == "online" {
        beego.AppConfigPath = "./conf/online.conf"
    } else if env == "beta" {
        beego.AppConfigPath = "./conf/beta.conf"
    } else {
        beego.AppConfigPath = "./conf/dev.conf"
    }
    beego.ParseConfig()

有疑问加站长微信联系(非本文作者)

本文来自:Segmentfault

感谢作者:EndlessIdea

查看原文:beego下根据部署环境加载相应配置文件

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

2783 次点击  
加入收藏 微博
1 回复  |  直到 2018-09-21 15:53:10
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传