ZEIT NOW可变秘密

时间:2019-08-18 09:55:30

标签: next.js zeit-now

我正在寻找一种方法来引用另一个秘密(env变量)集,具体取决于另一个env变量的值。


if (process.env.STAGE === "test") return config = process.env.TEST_CONFIG

我知道在自动github部署中,有included env variables

但是如何正确引用它们?例如:

const config = process.env.NOW_GITHUB_COMMIT_REF === 'master' ? prod : dev;

对我不起作用。

({NOW_GITHUB_COMMIT_REF: 应用程序部署所使用的分支。)

1 个答案:

答案 0 :(得分:2)

我只是从Spectrum复制我的答案。

文件夹结构:

config/
    dev.json
    test.json
    prod.json
    index.js
api/
    search.js

config / index.js

const devConfig = require('../config/dev');
const testConfig = require('../config/test');
const prodConfig = require('../config/prod');

const { NOW_GITHUB_COMMIT_REF } = process.env;
if (NOW_GITHUB_COMMIT_REF === 'test') 
  return testConfig;
else if (NOW_GITHUB_COMMIT_REF === 'master') 
  return prodConfig;
else
  return devConfig;

api / search.js

const config = require('../config');

在这种情况下,master分支将获得prod配置,test分支-测试配置,所有其他分支-开发配置。