Module 5: Build, Test, & Deploy (Outer-Loop)

Overview

With the development inner-loop complete, the code running in the ephemeral environment’s feature branch namespace is now ready for deployment to Dev, Staging, and Production environments.

  • Platform Engineers set up production-grade pipelines to handle merge requests from Developer. Tekton makes it really easy to build cloud-native pipelines that can be tailored to organizational needs.

  • When a developer submits a merge request from the feature branch to the main branch, a peer review process ensures code quality before merging.

  • Once merged, the pipeline updates manifests in the Dev and Staging environments. Additionally, it raises a merge request for the Production manifest.

  • Manifest updates and Deployments to the Production environment require explicit approvals. In this case, production updates are triggered only by manually merging the PR raised by the post-merge pipeline.

Module objectives

  • To handle the outer-loop, Platform Engineer has built a production-level pipelines (pre and post merge) based on org needs via Tekton.

  • When a developer creates a new merge request, the pre-merge pipeline is triggered via a GitLab webhook, initiating the image build process.

  • An application owner/team member reviews and approves the merge request.

  • This approval triggers a post-merge pipeline that updates manifests in the Dev and Staging environments.

  • The pipeline also generates a merge request for deploying to the Production environment.

  • Once this production merge request is accepted, the application is deployed to production through GitOps/Argo CD.