What is the difference between Cloud Build and Cloud Deploy?

Viewed 59

They both seem to be recommended CI/CD tools within Google Cloud.. but with similar functionality. Would I use one over the other? Maybe together?

Cloud Build seems to be the de facto tool. While Cloud Deploy says that it can do "pipeline and promotion management."

1 Answers

Both of them are designed as serverless, meaning you don't have to manage the underlying infrastructure of your builds and defining delivery pipelines in a YAML configuration file. However, Cloud Deploy needs a configuration for Skaffold, which Google Cloud Deploy needs in order to perform render and deploy operations.

And according to this documentation,

Google Cloud Deploy is a service that automates delivery of your applications to a series of target environments in a defined sequence.

Cloud Deploy is an opinionated, continuous delivery system currently supporting Kubernetes clusters and Anthos. It picks up after the CI process has completed (i.e. the artifact/images are built) and is responsible for delivering the software to production via a progression sequence defined in a delivery pipeline.

While Google Cloud Build is a service that executes your builds on Google Cloud.

Cloud Build (GCB) is Google's cloud Continuous Integration/Continuous Development (CICD) solution. And takes users code stored in Cloud Source Repositories, GitHub, Bitbucket, or other solutions; builds it; runs tests; and saves the results to an artifact repository like Google Container Registry, Artifactory, or a Google Cloud Storage bucket. Also, supports complex builds with multiple steps, for example, testing and deployments. If you want to add your CI pipeline, it's as easy as adding an additional step to it. Take your Artifacts, either built or stored locally or at your destination and easily deploy it to many services with a deployment strategy of you choice.

Provide more details in order to choose between the two services and it will still depend on your use case. However, their objectives might help to make it easier for you to choose between the two services.

  • Cloud Build's mission is to help GCP users build better software faster, more securely by providing a CI/CD workflow automation product for developer teams and other GCP services.
  • Cloud Deploy's mission is to make it easier to set up and run continuous software delivery to a Google Kubernetes Engine environment.

In addtion, refer to this documentation for price information, Cloud Build pricing and Cloud Deploy pricing.

Related