繁体   English   中英

如何使用云构建将环境变量传递给app.yaml

[英]How to pass environment variables to the app.yaml using cloud build

CI / CD的最后一步是使用gcloud应用程序部署进行部署,但是我无法使用环境变量来提交app.yaml,那么如何通过传递env变量的云构建来部署app.yaml?

这是我的cloudbuild.yaml

steps:
- name: "gcr.io/cloud-builders/gcloud"
  args: ["app", "deploy"]
timeout: "1800s"

一种简单的选择是将您的环境变量列在Cloud Storage的文件(甚至是app.yaml文件本身)中。 然后,您可以使用cloud-builders / gsutil在如下构建步骤中检索此文件:

steps:
- name: gcr.io/cloud-builders/gsutil
  args: ['cp', 'gs://mybucket/env_vars.txt', 'env_vars.txt']

这会将文件复制到/ workspace目录。 然后,下一步构建步骤可以使用环境变量填充app.yaml文件(甚至只是将检索到的app.yaml文件复制到正确的路径)。 下一步也是最后一步,即您提到的部署应用程序的步骤。

请注意,在Cloud Build环境中执行时,将使用项目的构建器服务帐户的凭据执行命令。 您需要向该服务帐户授予对Cloud Storage上文件的访问权限。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM