知道index.js firebase函数中的部署目标

时间:2018-05-08 08:00:43

标签: firebase deployment

我的Cloud Functions中有两个部署目标。我使用命令行来确定我部署的项目。 firebase use myTestAppfirebase use myLiveApp

我可以告诉我在index.js代码中使用的目标吗?

我希望有类似的东西

// change baseURLs and other keys
if (Target == live) {
    const baseURL = 'myLiveApp';
    const stripekey= 'secreteLivekey';
} else {
    const baseURL = 'myTestApp';
    const stripekey= 'secreteTestkey';
};

目前我通过评论测试或实时密钥来解决这个问题,这非常烦人且很容易出错。

1 个答案:

答案 0 :(得分:1)

您可以在每个项目的功能配置中设置必要的变量。

CLI:

firebase use <live_project>
firebase functions:config:set stripe.key="secreteLivekey"
firebase functions:config:set baseURL="myLiveApp"
firebase use <non_live_project>
firebase functions:config:set stripe.key="secreteTestkey"
firebase functions:config:set baseURL="myTestApp"

在代码中:

import * as functions from 'firebase-functions'
const baseURL = functions.config().baseURL
const stripekey = functions.config().stripe.key

编辑:

由于你的问题在技术上是“你能知道你的部署目标吗?”,答案是肯定的。

const config = JSON.parse(process.env.FIREBASE_CONFIG)
const projectId = config.projectId