出于不必要的原因,我需要更新运行Node 10的现有Google Cloud Function,以使用本地tgz文件作为其依赖项之一(通过public result = "Get Data by Id";
public getDataText(id) {
const reqObj = this.mydata.find(item => item.id === id);
this.result = reqObj ? reqObj.text : 'nothing found';
}
<button (click)="getDataText(11)">{{result})</button>
生成;在本地工作)。当我尝试在Cloud Function部署中包含存档文件和更新的package.json时,遇到以下错误:
错误:(gcloud.functions.deploy)OperationError:代码= 3,消息=构建 失败:{“错误”:{“ canonicalCode”:“ INVALID_ARGUMENT”, “ errorMessage”:“
npm pack
的输出为stderr:\ nnpm ERR!cb()从不 \ n \ nnpm错误!这是npm本身的错误。请举报 此错误位于:\ nnpm错误! https://npm.community \ n \ nnpm错误!一种 可以在以下位置找到该运行的完整日志:\ nnpm ERR!
/builder/home/.npm/_logs/2019-04-08T16_01_08_142Z-debug.log\nnpm错误! 代码ELIFECYCLE \ nnpm ERR! errno 1 \ nnpm错误! @预安装:npm_install
\ nnpm错误!退出状态1 \ nnpm错误! \ nnpm错误! @预安装脚本失败。\ nnpm ERR!这可能不是 npm有问题。可能还有其他日志记录输出 以上。\ n \ nnpm错误!可以在以下位置找到此运行的完整日志:\ nnpm 错误!
/builder/home/.npm/_logs/2019-04-08T16_01_08_171Z-debug.log\n\n错误:npm --prefix functions install
返回了代码:1“,” errorType“:” InternalError“, “ errorId”:“ C9487FAD”}}
不幸的是,我无法访问错误消息中引用的日志文件。不过,我会考虑向NPM提交票证。
我想知道是否有人知道解决此问题的方法,或者在将npm_install
的依赖项包含在Cloud Function中时是否应该使用其他策略。
环境:
节点v10.14.2
NPM 6.7.0
package.json:
pack
答案 0 :(得分:0)
我确定您现在已经找到了解决方案,但是对于那些遇到相同错误的人:
不要将 package-lock.json 保留在 functions 文件夹中,不应将其发送到安装了Cloud Functions的服务器上npm会自行打包。