最近用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()
原文地址:https://www.jb51.cc/go/189806.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。