Firebase 不部署新功能是因为它无法删除旧功能?我不能以某种方式忽略缺少的功能吗?
Firebase doesn't deploy new function because it can't delete old function? can't I somehow ignore missing functions?
我有一个基于节点的 rest api 应用程序 运行 正在关闭单个 firebase 函数,我正在尝试设置一个 CD 管道来部署一个暂存函数和另一个生产函数.
我发现让这个工作的唯一方法是有一个 'production.ts' 和 'staging.ts' 并在每个管道中将相关的重命名为 index.ts.
这行得通并且成功了,但是因为它没有在其中找到其他函数,所以它不会发布新函数,而是会还原所有内容?
这是我上次 运行 的控制台输出:
functions: creating Node.js 10 function StagingAPI (europe-west2)...
Error: The following functions are found in your project but do not exist in your local source code:
ProductionAPI (europe-west2)
Aborting because deletion cannot proceed in non-interactive mode. To fix, manually delete the functions by running:
firebase functions:delete ProductionAPI --region europe-west2
如果没有另一个完全独立的 firebase 项目,我怎么能以不同的方式实现这一点?
我可以看到在 github 上有一些关于它的讨论,甚至还有一个 pull request 试图通过提供一个标志来解决这个问题:--ignore-existing-functions
但它看起来不像要合并。
这一定是一个常见问题。
如果您想部署单个函数并忽略不属于部署集的现有函数,只需使用 --only
和以下语法:
firebase deploy --only functions:name-of-function
但是对于不同的环境有不同的项目总体上要好得多。
我有一个基于节点的 rest api 应用程序 运行 正在关闭单个 firebase 函数,我正在尝试设置一个 CD 管道来部署一个暂存函数和另一个生产函数.
我发现让这个工作的唯一方法是有一个 'production.ts' 和 'staging.ts' 并在每个管道中将相关的重命名为 index.ts.
这行得通并且成功了,但是因为它没有在其中找到其他函数,所以它不会发布新函数,而是会还原所有内容?
这是我上次 运行 的控制台输出:
functions: creating Node.js 10 function StagingAPI (europe-west2)...
Error: The following functions are found in your project but do not exist in your local source code:
ProductionAPI (europe-west2)
Aborting because deletion cannot proceed in non-interactive mode. To fix, manually delete the functions by running:
firebase functions:delete ProductionAPI --region europe-west2
如果没有另一个完全独立的 firebase 项目,我怎么能以不同的方式实现这一点?
我可以看到在 github 上有一些关于它的讨论,甚至还有一个 pull request 试图通过提供一个标志来解决这个问题:--ignore-existing-functions
但它看起来不像要合并。
这一定是一个常见问题。
如果您想部署单个函数并忽略不属于部署集的现有函数,只需使用 --only
和以下语法:
firebase deploy --only functions:name-of-function
但是对于不同的环境有不同的项目总体上要好得多。