在不更改 Terraform 的情况下将新的容器修订版部署到 Cloud Run

gal*_*h92 4 google-cloud-platform terraform terraform-provider-gcp google-cloud-run

我正在为涉及 Cloud Run 的 GCP 项目设置 CI&CD 环境。虽然通过 Terraform 设置一切都非常简单,但我不知道如何在代码更改时更新环境。

文档

  1. 更改配置文件。

但这将应用程序部署与 terraform 配置耦合在一起,而 terraform 配置应该只负责基础设施部署。

理想情况下,我使用 terraform 来配置基础设施,并使用另一个 CI 步骤来构建和部署容器。

这里有最佳实践吗?

相关来源:1

gal*_*h92 5

我最终将 Cloud Run 服务创建(仍然在 Terraform 中完成)和部署分离到两个不同的工作流程。

关键组件是让 terraform 忽略实际部署的映像,以便当代码部署工作流程完成时,terraform 不会抱怨 Cloud Run 映像与其管理的映像不同。我通过设置资源来实现这ignore_changes = [template[0].spec[0].containers[0].image]一点google_cloud_run_service