NodeJS 错误:(gcloud.functions.deploy)消息=构建失败:页面不存在

ee7vknir  于 2022-12-22  发布在  Node.js
关注(0)|答案(2)|浏览(128)

我尝试通过yaml文件在Cloud Build中部署一个简单函数。此函数位于Github中,Cloud Build触发点位于我的存储库中,以便部署它。Cloud Build调用我的yaml文件时没有问题,但突然出现此错误

ERROR: (gcloud.functions.deploy) OperationError: code=3, message=Build failed: function.js does not exist; Error ID: 7485c5b6

我不知道为什么gcloud function deploy要查找function.js文件,而据我所知,它只是查找index.js文件。

  • index.js
  • cloudbuild.yaml
  • package.json
  • package-lock.json

该函数通过gcloud cli成功部署,所以我打赌错误存在于yaml文件中,但也可能是Cloud Build中的一些配置。

steps:
  - name: "gcr.io/cloud-builders/gcloud"
    args:
      - functions
      - deploy
      - webhook
      - --source=.
      - --trigger-http
      - --runtime=nodejs12
      - --region=europe-west2
      - --allow-unauthenticated

有人知道会发生什么吗?谢谢!

qncylg1j

qncylg1j1#

安装npm时错误已解决。将此添加到yaml文件:

steps:
  - name: "gcr.io/cloud-builders/npm"
    args: ["install"]
    dir: "YOUR_PATH"
cs7cruho

cs7cruho2#

我遇到了同样的问题-这里有很好的文档-https://cloud.google.com/build/docs/deploying-builds/deploy-functions#yaml
我的错误是将源作为源标志,例如,如果您的目录结构类似。

- test
- deploy
- mint

并且在每个目录中都有一个cloudbuild.yaml,您必须将其指定为源

steps:
 - name: 'gcr.io/google.com/cloudsdktool/cloud-sdk'
  args:
 - gcloud
 - functions
 - deploy
 - repo-config-test
 - --region=us-central1
 - --source=./test
 - --trigger-http
 - --runtime=nodejs16
 - --entry-point=test
 - --allow-unauthenticated

相关问题