GitHub CI/CD pipeline design choices for deploying Terraform code to GCP data domain

Click for: original source

We have built our GCP data platform using Data Mesh principles. Each line-of-business (LoB) roughly translates to a domain on GCP. Each domain will have 3 environments, Dev, Non-Prod and Prod, and each environment will have 3 GCP projects/zones. By Bharath N.

Author has come up with multiple designs for CI/CD deployment pipelines:

  • Design 1: 3 environments, 3 branches and 3 code bases in GitHub
  • Design 2: 3 environments, 1 branch and 1 code base in GitHub
  • Design 3: 3 environments, 2 branches and 2 code bases in GitHub
  • Design 4: 3 environments, 1 branch and 1 code base in GitHub

Each designed solution contains explanation about advantages and downsides. Good read!

[Read More]

Tags devops cicd kubernetes containers