在 sails.js 中处理生产/开发/测试配置

2024-04-28

有谁知道在 sails 中处理生产/开发/测试配置切换的最佳方法?我真的很喜欢 actionhero.js 如何根据 NODE_ENV 的内容自动加载 config/environment/{env}.js,但我没有看到在 sails 中执行类似操作的内置方法。我注意到 sails 会在服务器引导期间加载 config/ 中的任何文件,所以我现在的黑客解决方案是设置以下内容:

config/
|-- local.js
|-- environment/
|---- production.js
|---- staging.js
|---- development.js
|---- testing.js

然后在每个 {env}.js 文件中,我只是像这样扩展配置:

if (process.env.NODE_ENV === 'production') {
  // Enter any environment specific config changes
  config.db = {
    db_host: foo,
    db_port: bar
  }
  config.otherThing = {
    somevar: 'someval'
  }

从 Sails 0.10-rc6 开始,这得到了改进,您现在可以添加env子文件夹中config更改不同环境的设置。

所以你可以简单地添加一个文件/config/env/development.js or /config/env/production.js可以覆盖所有必要的设置

See https://github.com/balderdashy/sails/pull/1638 https://github.com/balderdashy/sails/pull/1638更多细节。

更改端口和数据库适配器的示例,例如为了production你的环境production.js:

module.exports = {
  port: 80
};

module.exports.models = {

  // Your app's default connection.
  // i.e. the name of one of your app's connections (see `config/connections.js`)
  //
  // (defaults to localDiskDb)
  connection: 'someMongodbServer'
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 sails.js 中处理生产/开发/测试配置 的相关文章

随机推荐