如何在 'gcloud builds' 中使用 'gcloud deployment-manager deployments' 在 GCP 上是否有完整的 CI/CD 管道?

How to use 'gcloud deployment-manager deployments' within 'gcloud builds' do have a full CI/CD pipeline on GCP?

我正在尝试在 GCP 上设置 CI/CD 管道。我想要以下内容:

我已完成最后 2 个步骤的设置和工作(gcloudgcloud deployment-manager)。

我的问题是如何使用一个脚本来做到这一点?我希望管道完全自动化。我想实施的一些测试是测试 python 包是否正确安装将在部署后在容器上完成。

GCP 的最佳做法是什么?我在想我可以在 gcloud builds 中使用 gcloud deployment-manager 但并没有真正找到文档来知道如何做到这一点。对于部署,我有很多变量要传递给设置网络、机器类型和其他参数,我只能使用 jinja 脚本来完成。

What is the best practices on GCP ? I was thinking that I could use gcloud deployment-manager inside gcloud builds but didn't really find documentation up to know how to do that

Cloud Build 提供并维护 pre-built 个构建器图像,您可以在构建步骤中引用这些图像来执行任务。

您可以使用 gcr.io/cloud-builders/gcloud (doc) 构建器触发部署管理器:

# Build images
[...]

# Load/Generate your Jinja templates
[...]

# Deploy
- name: 'gcr.io/cloud-builders/gcloud'
  id: Deploy your application
  args: ['deployment-manager', 'deployments', 'create', 'your-template']

但是,还有更多常规 方法可以在 GKE 集群中部署容器化应用程序:

  • 通过 gcr.io/cloud-builders/kubectl 通过 well-defined Kubernetes 清单直接部署应用程序;
  • 通过Helm tool builder从自定义模板开始打包和部署 Kubernetes 应用程序。

免责声明:评论和意见是我自己的,而不是我雇主的观点。