Google Cloud Functions 部署失败,状态代码为 51

Cap*_*ael 0 google-cloud-functions

我的javascript云函数项目在部署时不断提示错误,状态代码为51。昨天之前也出现过同样的错误,只有重新运行几次部署脚本才能成功,但从昨天早上开始就再也没有成功过。我没有做任何修改我的项目。

以下都是启动和部署的脚本,start如果我运行yarn start或 ,则始终可以正确运行npm run start

"start": "rm -rf dist && prettier -w src && npm run build && cp env.yaml clearmylist-46738ea42bf9.json package.json dist/ && cd dist && npx @google-cloud/functions-framework --target=clearMyList",
"deploy": "rm -rf dist && prettier -w src && npm run build && cp env.yaml clearmylist-46738ea42bf9.json package.json dist/ && gcloud functions deploy clear-my-list-google-cloud-functions --gen2 --runtime=nodejs18 --region=us-central1 --source=dist --entry-point=clearMyList --trigger-http --env-vars-file env.yaml --allow-unauthenticated --project clearmylist && rm -rf dist"
Run Code Online (Sandbox Code Playgroud)

以下是最新的运行错误日志yarn deploy,有人有解决此问题的经验或给我一些线索吗?任何帮助将不胜感激!

{
  insertId: "1115fbbf-200b-4f2a-bef6-b9460b46d1de-509"
  labels: {
    build_step: "Step #1 - "build""
    build_tags: "p-gcf,r-nodejs18,v-nodejs18_20230416_18_15_0_RC00,b-nodejs_20230417_RC00"
  }
  logName: "projects/clearmylist/logs/cloudbuild"
  receiveTimestamp: "2023-04-27T11:01:53.867184869Z"
  resource: {
    labels: {
      build_id: "1115fbbf-200b-4f2a-bef6-b9460b46d1de"
      build_trigger_id: ""
      project_id: "clearmylist"
    }
    type: "build"
  }
  severity: "INFO"
  textPayload: "Step #1 - "build": ERROR: failed to build: exit status 1"
  timestamp: "2023-04-27T11:01:53.430315151Z"
}
Run Code Online (Sandbox Code Playgroud)
{
  insertId: "1115fbbf-200b-4f2a-bef6-b9460b46d1de-512"
  labels: {
    build_step: "MAIN"
    build_tags: "p-gcf,r-nodejs18,v-nodejs18_20230416_18_15_0_RC00,b-nodejs_20230417_RC00"
  }
  logName: "projects/clearmylist/logs/cloudbuild"
  receiveTimestamp: "2023-04-27T11:01:55.839983449Z"
  resource: {
    labels: {
      build_id: "1115fbbf-200b-4f2a-bef6-b9460b46d1de"
      build_trigger_id: ""
      project_id: "clearmylist"
    }
    type: "build"
  }
  severity: "INFO"
  textPayload: "ERROR: build step 1 "us-central1-docker.pkg.dev/gae-runtimes/gcp/buildpacks/google-gae-22/nodejs/builder:nodejs_20230417_RC00" failed: step exited with non-zero status: 51"
  timestamp: "2023-04-27T11:01:55.575842005Z"
}
Run Code Online (Sandbox Code Playgroud)

Google Cloud Functions 会在构建日志中提供更详细和准确的信息吗?

Leo*_*osa 5

谷歌最近对其构建流程进行了一些更改。从他们的话说:

\n
\n

有关此的更多背景信息,最近我们\xe2\x80\x99为我们的 NodeJS 用户对第一代和第二代 GCF 进行了更改(我\xe2\x80\x99ve注意到这是你的运行时,如果我\xe2\ x80\x99m 错误),如果您在 package.json 文件中定义了 npm 构建脚本,我们会在部署期间自动运行 npm run build 命令。您可以在我们 4 月 11 日的发行说明中找到更多相关信息 [1]。

\n
\n

这里的解决方法是执行以下两件事之一:

\n

1 - 添加--set-build-env-vars GOOGLE_NODE_RUN_SCRIPTS=""云功能的部署脚本:

\n
gcloud functions deploy <function-name> --set-build-env-vars GOOGLE_NODE_RUN_SCRIPTS=""\n
Run Code Online (Sandbox Code Playgroud)\n

或者...

\n

2 - 添加"gcp-build":""到您的package.json文件中:

\n
gcloud functions deploy <function-name> --set-build-env-vars GOOGLE_NODE_RUN_SCRIPTS=""\n
Run Code Online (Sandbox Code Playgroud)\n

  • 只是为了澄清一下,您将“gcp-build”添加为“package.json”中的“脚本”之一 (4认同)