我正在尝试使用firebase函数环境的functions.config()变量,以便能够根据此变量是否设置为true / false来打开/关闭日志。我已经创建了它,但是它似乎基于来自以下链接(https://firebase.google.com/docs/functions/config-env#additional_environment_commands)的信息,使用firebase functions:config:set命令更改后,只有重新部署函数后才能更改它环境变量优先。
但是,似乎可以通过使用--set-env-vars命令(以及用于访问env。变量的不同语法)使用gcloud functions命令来部署功能(gcloud部署而不是firebase部署)来实现。 )。然后,只需在GCP控制台上导航至特定功能,然后转到EDIT-> MORE并更改底部的Environment变量,即可轻松更改此环境变量。
来源:
https://cloud.google.com/functions/docs/env-var
所以我的问题是:是否有类似的方法来更改firebase functions.config()变量而无需从cli重新部署该函数?
答案 0 :(得分:1)
更新:(提供给道格·史蒂文森) 显然,更改环境变量的唯一方法是进行部署。
原始答案: 您可以用相同的方法进行操作。 基本上每个Firebase Cloud Function都是Google Cloud Function,可以从GCP控制台以相同的方式访问。 GCP控制台中还提供了每个Firebase Cloud Function,您可以在其中轻松编辑环境变量,就像您在问题中所描述的那样。
答案 1 :(得分:0)
Andrii 是完全正确的 - 您必须部署函数才能更新环境变量。
但是,我只是想发布一个快速的技巧,以防您有一些 CI/CD 作业并且您没有真正手动部署您的功能。
在这种情况下,我所做的虽然有点乏味,但如下:
exports.helloWorld = functions
.https.onRequest((req, res) => res.status(200).json({ message: 'Great success!' }))
firebase deploy --only functions:helloWorld
以确保我仅部署此函数以防止破坏当前在生产中使用的函数。helloWorld
。