我已经从使用dotcloud切换到了heroku.我正在使用nconf进行配置.我设置它首先从环境变量中获取,如果没有,那么它从config.json文件中获取.在localhost上这很好用.对于我的内部版本号,我将它存储在配置文件中,而不是存储在环境变量中,以便我可以在推送时设置它,然后不必更改环境.
app.coffee
nconf.argv().env().file file: "./config.json"
Run Code Online (Sandbox Code Playgroud)
config.json
{
"APP_BUILD_NUMBER": "1.0.0"
}
Run Code Online (Sandbox Code Playgroud)
如果我在本地或在dotcloud上运行,如果我这样做,nconf正确传递1.0.0
nconf.get("APP_BUILD_NUMBER")
Run Code Online (Sandbox Code Playgroud)
但是,在heroku上,它返回undefined.如果我在环境变量中设置它,那么它确实有效.我想知道我做错了什么.
尝试删除路径的"./"部分:
nconf.argv().env().file file: "config.json"
Run Code Online (Sandbox Code Playgroud)
如果这不起作用,请尝试
nconf.argv().env().file file: __dirname + "/config.json"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1770 次 |
| 最近记录: |