firebase - Firebase 云功能部署 - 无效的内存属性
问题描述
我的 firebase 云函数(TypeScript)通过参考官方文档 https://firebase.google.com/docs/functions/manage-functions#set_timeout_and_memory_allocation包含了 runtimeOption
const runtimeOpts = {
timeoutSeconds: 540,
memory: "1GB"
}
..
export const GCPSpeech2TranscriptLRR = functions.runWith(runtimeOpts).https.onRequest((req, res) => {
它返回部署错误
src/index.ts:145:58 - error TS2345: Argument of type '{ timeoutSeconds: number; memory: string; }' is not assignable to parameter of type 'RuntimeOptions'.
Types of property 'memory' are incompatible.
Type 'string' is not assignable to type '"128MB" | "256MB" | "512MB" | "1GB" | "2GB" | undefined'.
145 export const GCPSpeech2TranscriptLRR = functions.runWith(runtimeOpts).https.onRequest((req, res) => {
我已经尝试了两个内存:“1GB”,内存:“1GB”,但我得到了同样的错误。如果我删除了“内存:...”行,它将正确部署。CF 部署成功后,2 分钟内仍会返回以下错误。据我所知,代码应该运行 9 分钟
Subscriber.js:192 Error: deadline-exceeded
at new HttpsErrorImpl (index.cjs.js:58)
at index.cjs.js:373
at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:421)
at Zone.push../node_modules/zone.js/dist/zone.js.Zone.runTask (zone.js:188)
at push../node_modules/zone.js/dist/zone.js.ZoneTask.invokeTask (zone.js:503)
at ZoneTask.invoke (zone.js:492)
at timer (zone.js:3034)
解决方案
这看起来像是 Typescript 编译器推断的问题。尝试:
memory: "1GB" as "1GB"
推荐阅读
- java - 从活动按钮打开片段
- python - OUTPUT_PATH 键和 sys.stdout 在 python 中是否具有相同的功能?
- amazon-redshift - RedShift - 为什么不应该压缩 sortykey 列?
- java - 订阅 Google Pub/Sub 主题 X 秒,如果没有收到消息则停止
- node.js - eslint 多配置注释
- pine-script - ORB 仅在第 1 根 4 根蜡烛在松树中的第 1 根蜡烛范围内
- javascript - 如何使用javascript从firebase中的child检索子值?
- c - 不同函数中的动态数组声明
- node.js - 已拒绝访问以解析属性“大小”,因为它不是其父级的“自己的属性”
- css - Material UI 和 React &hover 选择器不起作用