Google 云:将静态文件从源存储库自动部署到云存储
Google Cloud: Auto-deploy static files from Source Repository to Cloud Storage
我正在构建一个无服务器 Web 应用程序,所有源代码都由 Google 的 Cloud Source Repository 管理。我的目录如下所示:
/webapp
/functions
*serverless functions*
/static
/css
app.css
/js
app.js
我在这个存储库上激活了构建触发器来监控无服务器功能,并在每次推送更改时将它们重新部署为 Google 云功能,这很棒。我现在的问题是,我似乎无法找到一种方法让我的 css 和 js 以同样的方式自动推送到云存储桶中以实现普遍可用性。
这通常是如何完成的?
您没有具体说明您是如何实现自动化部署的,但您可能已经在云功能持续部署中使用了 Cloud Build,如此 official doc 所示。
在此基础上,您只需添加一个构建步骤即可使用 gsutil tool 将静态文件部署到云存储。例如:
steps:
- name: 'gcr.io/cloud-builders/gcloud'
args: ['functions', 'deploy', '[YOUR_DEPLOYED_FUNCTION_NAME]', '[YOUR_FUNCTION_TRIGGER]', '--runtime', '[YOUR_RUNTIME]', '--entry-point', '[YOUR_FUNCTION_NAME_IN_CODE]']
dir: 'webapp/functions'
- name: gcr.io/cloud-builders/gsutil
args: ['rsync', '-R', 'webapp/static', 'gs://your_gcs_bucket/']
我正在构建一个无服务器 Web 应用程序,所有源代码都由 Google 的 Cloud Source Repository 管理。我的目录如下所示:
/webapp
/functions
*serverless functions*
/static
/css
app.css
/js
app.js
我在这个存储库上激活了构建触发器来监控无服务器功能,并在每次推送更改时将它们重新部署为 Google 云功能,这很棒。我现在的问题是,我似乎无法找到一种方法让我的 css 和 js 以同样的方式自动推送到云存储桶中以实现普遍可用性。
这通常是如何完成的?
您没有具体说明您是如何实现自动化部署的,但您可能已经在云功能持续部署中使用了 Cloud Build,如此 official doc 所示。
在此基础上,您只需添加一个构建步骤即可使用 gsutil tool 将静态文件部署到云存储。例如:
steps:
- name: 'gcr.io/cloud-builders/gcloud'
args: ['functions', 'deploy', '[YOUR_DEPLOYED_FUNCTION_NAME]', '[YOUR_FUNCTION_TRIGGER]', '--runtime', '[YOUR_RUNTIME]', '--entry-point', '[YOUR_FUNCTION_NAME_IN_CODE]']
dir: 'webapp/functions'
- name: gcr.io/cloud-builders/gsutil
args: ['rsync', '-R', 'webapp/static', 'gs://your_gcs_bucket/']