设置构建环境变量(源代码部署)

构建环境变量是键值对,可让您在从源代码部署函数时将配置信息传递给 Buildpack。例如,在构建时,您可能想要自定义编译器选项、指定构建时证书、配置参数,等等。

本页介绍了如何设置构建时可用的构建环境变量,适用于在 Cloud Run 中部署函数的平台开发者。

准备工作

启用 Cloud Build API

gcloud services enable cloudbuild.googleapis.com

所需的角色

如需获得从源代码部署所需的权限,请让管理员向您授予项目的以下 IAM 角色:

如需查看与 Cloud Run 关联的 IAM 角色和权限的列表,请参阅 Cloud Run IAM 角色Cloud Run IAM 权限。如果您的 Cloud Run 服务与 Google Cloud API(例如 Cloud 客户端库)进行交互,请参阅服务身份配置指南。如需详细了解如何授予角色,请参阅部署权限管理访问权限

设置构建环境变量

您可以设置构建环境变量以建立新变量或完全替换现有构建变量。

gcloud

从源代码部署函数时,您可以设置构建环境变量:

gcloud beta run deploy SERVICE \
  --source . \
  --function FUNCTION_ENTRY_POINT \
  --set-build-env-vars KEY1=VALUE1,KEY2=VALUE2

您需要将其中的:

  • SERVICE 替换为 Cloud Run 函数的名称。
  • FUNCTION_ENTRY_POINT 替换为源代码中函数的入口点。
  • KEY1=VALUE1,KEY2=VALUE2 替换为与允许您将配置信息传递给 Buildpack 的函数一起部署的变量名称及其值的逗号分隔列表。

更新构建环境变量

您可以更新现有函数的构建环境变量。这种方法没有破坏性,也就是说,它只会更改或添加构建环境变量,但不会删除构建环境变量。

gcloud

如需更新现有函数的构建环境变量,请执行以下操作:

gcloud beta run deploy SERVICE \
  --source . \
  --function FUNCTION_ENTRY_POINT \
  --update-build-env-vars KEY1=VALUE1,KEY2=VALUE2

删除构建环境变量

您可以删除现有函数的构建环境变量。

gcloud

如需移除构建环境变量,请针对现有函数使用 --remove-build-env-vars

gcloud beta run deploy SERVICE \
  --source . \
  --function FUNCTION_ENTRY_POINT \
  --remove-build-env-vars KEY1=VALUE1,KEY2=VALUE2

或者,您也可以为现有函数使用 --clear-build-env-vars 来清除构建环境变量:

gcloud beta run deploy SERVICE \
  --source . \
  --function FUNCTION_ENTRY_POINT \
  --clear-build-env-vars KEY1=VALUE1,KEY2=VALUE2

构建环境变量文件

您可以使用构建环境变量文件来处理现有函数。

gcloud

如需从文件中设置构建环境变量,请执行以下操作:

gcloud beta run deploy SERVICE \
  --source . \
  --function FUNCTION_ENTRY_POINT \
  --build-env-vars-file FILE_NAME.yaml

替换 FILE_NAME.yaml,使其内容如下所示:

 KEY1: VALUE1
 KEY2: VALUE2