在 GCP cloudbuild.yaml

问题描述

如何在我的 cloudbuild.yaml 文件中指定与 GCP 中实际函数名称不同的“执行函数”?

例如:

  • 我有一个用 python 编写的云函数,名为 hello_world
  • 在我的 GCP 部署中,我想将函数 hello-world-devhello-world-prod 命名为在构建时动态传递到 Triggers 变量中。
  • 构建失败,因为它期望函数调用 hello-world-dev 或其他
  • 我确定有一个标志来指定执行函数,但我没有找到。

我的 cloudbuild.yaml 文件如下所示:

#hello-world
  - name: 'gcr.io/google.com/cloudsdktool/cloud-sdk'
    args:
      - gcloud
      - functions
      - deploy
      - hello-world-${_ENV}
      - --region=us-west2
      - --source=./demo/hello-world/
      - --trigger-http
      - --runtime=python39

我尝试过的步骤

我尝试了以下标志:

  • --function
  • --call
  • --deploy

查看此文档:https://cloud.google.com/functions/docs/deploying

enter image description here

解决方法

执行的函数是你代码中的函数名。默认情况下,这是您的错误,如果未指定,则执行的函数必须与函数名称相同。

如果您的函数名称与执行的函数名称不同,则需要指定函数的入口点(要在代码中运行的函数)。使用参数 --entry-point=

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...