我可以在 Heroku 暂存中忽略部分代码吗

Can I have part of code ignored in Heroku staging

我想通过将我的应用程序推送到 Heroku 上的登台应用程序来测试它的行为。有一个部分将信息保存到 s3,我希望应用程序在生产时执行,但在暂存测试时跳过。有没有办法做到这一点?我一直在手动评论它,但如果它能自动完成就好了。 如果有帮助,我正在使用 node 和 express。

你可以feature base your code。只需添加一个环境变量并在您的代码中检查该变量的值。如果值为 true 则执行代码,否则不执行。当我们发布新功能以减少可能的影响时,我们一直在不同的环境中做这些事情。

  1. 在本地修改您的 .env 以获得这个新变量。
  2. 将变量添加到 app.json(最佳做法)。这将强制应用程序在启动之前拥有此变量,因此,没有人会忘记添加它。 { "name": "my app", "description": "My super app", "scripts": {}, "env": { "MY_ENV_VAR": { "required": true } }

3.Check 代码中变量的值:

if (process.env.MY_ENV_VAR === 'true') { //keep in mind these will be strings //do your logic }

  1. 确保环境变量存在于您的 heroku 仪表板应用程序设置中。

此致