环回 - 设置特定于环境的配置

时间:2017-07-05 06:25:57

标签: loopbackjs loopback

您可以在设置特定于环境的配置方面获得一些帮助。 我有两个数据源文件

  1. 服务器/ datasources.json
  2. 服务器/ datasources.test.json
  3. 我在WIndows上使用脚本“SET NODE_ENV = test&& mocha test / ** / * .test.js”来运行我的测试用例并设置要测试的节点环境。 Loopback不会加载server / datasource.test.json,而是加载来自server / datasource.json的数据源。

    我已使用process.env.NODE_ENV确认环境,其中记录了“test

    我试图将server / datasource.json更改为server / datasource.local.json,但后来我收到错误 警告:缺少主配置文件“datasources.json”。

    我不明白我做错了什么。我应该为测试环境创建所有配置文件,如* .test.json。 或者是否有一个不同的配置文件,我必须定义环境特定文件。

    请检查此回购https://github.com/dhruv004/sample-loopback-example 从代码中运行npm run test它从local.json加载数据,local.json是开发环境的数据源。它应该从test.json加载数据(测试环境的数据源)

1 个答案:

答案 0 :(得分:2)

查看repository,我可以看到LoopBack documentation中与您相关的说明:

LoopBack应用程序可以加载多个配置文件,这些文件可能会相互冲突。具有最高优先级的文件设置的值将始终生效。优先事项是:

  1. 特定于环境的配置,基于NODE_ENV的值;例如,server/config.staging.json
  2. 本地配置文件;例如,server/config.local.json
  3. 默认配置文件;例如,server/config.json
  4. model-config.json中,所有模型都将数据源设置为db,因此在您的情况下,LoopBack应用程序首先加载datasources.test.json。它找不到数据源db(仅testdb),因此它会回退到datasources.json。它在那里找到数据源db并使用它。尝试将testdb中的datasources.test.json重命名为db,这需要先行。