在 Google 构建期间在 app.yaml 文件中添加环境变量
Add environment variable in app.yaml file during Google Build
我正在使用 Google Cloud Build 和 cloudbuild.yaml
下载 app.yaml
文件,其中包含我基于 Python
的应用程序的环境变量。初始部署使用的app.yaml
版本没有包含安全保护的环境变量
但是,这似乎不起作用并且未检测到环境变量 - 因为 app.yaml
似乎没有被覆盖。
以下是我的cloudbuild.yaml
配置:
steps:
- name: gcr.io/cloud-builders/gsutil
args:
[
"cp",
"gs://<path to bucket>/app.yaml",
"app.yaml",
]
我了解 App Engine
上的应用程序入口点是通过 app.yaml
,但我认为如果包含 cloudBuild.yaml
,将首先调用它,然后再调用 app.yaml
.
如果这不正确,我还能如何将环境变量附加到我的 app.yaml 文件中?
谢谢!
当您 运行 gcloud app deploy
时,部署过程将不会考虑 cloudbuild.yaml
文件,并且会将您的应用程序与您的 未填充 app.yaml
文件.
要 运行 自定义构建步骤,您需要像以前一样创建 cloudbuild.yaml 文件,定义自定义构建步骤,然后将构建步骤添加到 运行部署命令。应该是这样的:
steps:
- name: gcr.io/cloud-builders/gsutil
args:
[
"cp",
"gs://<path to bucket>/app.yaml",
"app.yaml",
]
- name: 'gcr.io/cloud-builders/gcloud'
args: ['app', 'deploy']
然后您将通过发出以下命令来 运行 构建(在您拥有 运行 和 gcloud app deploy
的同一目录中):
gcloud builds submit --config cloudbuild.yaml .
这将:
- 上传当前目录到Cloud Build实例
- 运行 CB 实例上该目录中的 gsutil 命令,用于检索填充有环境变量的
app.yaml
文件
- 从 Cloud Build 实例将您的代码部署到 App Engine
我正在使用 Google Cloud Build 和 cloudbuild.yaml
下载 app.yaml
文件,其中包含我基于 Python
的应用程序的环境变量。初始部署使用的app.yaml
版本没有包含安全保护的环境变量
但是,这似乎不起作用并且未检测到环境变量 - 因为 app.yaml
似乎没有被覆盖。
以下是我的cloudbuild.yaml
配置:
steps:
- name: gcr.io/cloud-builders/gsutil
args:
[
"cp",
"gs://<path to bucket>/app.yaml",
"app.yaml",
]
我了解 App Engine
上的应用程序入口点是通过 app.yaml
,但我认为如果包含 cloudBuild.yaml
,将首先调用它,然后再调用 app.yaml
.
如果这不正确,我还能如何将环境变量附加到我的 app.yaml 文件中?
谢谢!
当您 运行 gcloud app deploy
时,部署过程将不会考虑 cloudbuild.yaml
文件,并且会将您的应用程序与您的 未填充 app.yaml
文件.
要 运行 自定义构建步骤,您需要像以前一样创建 cloudbuild.yaml 文件,定义自定义构建步骤,然后将构建步骤添加到 运行部署命令。应该是这样的:
steps:
- name: gcr.io/cloud-builders/gsutil
args:
[
"cp",
"gs://<path to bucket>/app.yaml",
"app.yaml",
]
- name: 'gcr.io/cloud-builders/gcloud'
args: ['app', 'deploy']
然后您将通过发出以下命令来 运行 构建(在您拥有 运行 和 gcloud app deploy
的同一目录中):
gcloud builds submit --config cloudbuild.yaml .
这将:
- 上传当前目录到Cloud Build实例
- 运行 CB 实例上该目录中的 gsutil 命令,用于检索填充有环境变量的
app.yaml
文件 - 从 Cloud Build 实例将您的代码部署到 App Engine