如何将变量传递给firebase serve –仅用于切换数据库以进行测试的函数?

时间:2018-07-26 19:22:34

标签: firebase google-cloud-functions firebase-cli

我正在使用firebase serve --only functions在本地模拟我的云功能。

我的云功能可以连接到不同的Firebase实时数据库。一种用于生产,一种用于测试。现在,我正在手动更改数据库以进行测试。这是一种不好的做法,因为我可能会意外地使用错误的数据库来提交或部署功能。

const mainDb = admin.database();
const testDb = admin.database(testApp);
var currentDb = mainDb;

// Used for testing locally
exports.switchTest = function() {
  currentDb = testDb;
};

// Uncomment this line to use test db
// exports.switchTest();

在不修改我必须切换的文件的情况下触发数据库切换的最佳方法是什么?我可以传入诸如firebase deploy --only functions --options=test之类的变量吗?

1 个答案:

答案 0 :(得分:1)

通常,开发人员可以利用firebase use命令利用Firebase CLI在dev / stage / prod项目之间进行切换。您可以为每个项目set up aliases

如果出于某种原因(也许不是最好的主意)需要将所有内容包含在一个项目中,则可以使用environment variables来配置模拟器的运行时属性,并将其从{{1}中拉出}。