Cloud Native with Google Cloud CI/CD: GitOps Workflow

google-cloud-container-solutions

What problem are we solving?

  • Remove blockers of software delivery excellence.
  • Slow delivery: Your software team can’t respond swiftly to customer needs.
  • Manual deployment errors: Your delivery performance is exposed by error-prone and time-consuming manual deployments.
  • Lack of auditability: Your software development processes don’t provide a clear audit trail for compliance purposes.
  • Difficulty rolling back changes: Your team is reluctant to deploy because it is risky and hard to recover from problems.
  • Lack of collaboration: Your team members don’t see what changes have been made, by whom, and when.

When we’re done, you get:

Faster delivery with streamlined internal delivery processes.

  • Rapid deployments: You deploy changes quickly with Git-triggered workflows.
  • Cost-effective delivery: You’re super-powering your GKE setup with open-source technologies like Argo or Flux.
  • Stability and Reliability: Your team delivers confidently through repeatability (Git code) and the elimination of human (related) errors.
  • Scalability: Your teams will scale their operations as they grow. Adding new team members and managing deployments across multiple environments is easy.
  • Developer experience: The automated deployment process eliminates tedious manual tasks. Your team concentrates on developing important features.
  • Better collaboration: Your teams work together more effectively. They use a centralised source of truth for code and infrastructure.

Who benefits the most?

  • Teams that currently have multiple barriers to deploying and want to remove these hurdles and empower their developers to own their deployments.
  • Teams that actively use Kubernetes for their infrastructure and aspire to adopt a cloud-native approach to engineering.
  • Teams that are already using DevOps practices with focused dev teams and want modern and functional CI/CD that is easier to work with.
  • Teams that have a mindset of automation and strive to eliminate human error in their processes.
  • Teams that use version control systems and want to take advantage of it rather than using commercial change management tools.

Let’s get solving!

Step 1: GAP analysis on current CI/CD pipelines and infrastructure

You work with a balanced team of engineers, architects and consultants to plot where you are, define your desired end state and methodologically plan the path to achieve them.

  • Readiness assessment of the source control repositories and recent release and branch strategy.
  • Understand the environments and the deployment lifecycle of your applications.
  • Measure the divergence between running applications and the configuration/documentation.
  • Investigate present secrets management/lifecycle and the current state of your Kubernetes definitions.
  • Storage of infrastructure logic on Git version control
  • Build a prioritised backlog for improvements.

Step 2: Design a GitOps approach that works for you

This is where the change begins. It includes a multifunctional team of engineers to implement the designed solutions, integrations, and architectures together with your team.

  • Design a GitOps solution based on your needs and iterate to implement state-of-the-art solutions.
  • Define a branching strategy for seamless developer workflow, separation of duties, and protection of production-level code.
  • Define the tools to be used to power your solution.
  • Develop a customised MVP that fits your architecture for optimal performance and results.

Step  3: Implementation of the pipeline We implement the designed solutions, integrations, and architecture together with your team

  • CI/CD pipeline, ready to build, test, and apps to a cluster-builds.
  • Tests are triggered automatically by commits landing in the main branch of the app's source-code repository.
  • Deployments to GKE clusters are triggered by commits in the app's deploy repository (GitOps) and executed by ArgoCD.
  • Knowledge sharing: Practical walk-through session to demo the sample microservice pipeline, documentation, and instructions to configure new pipelines for other apps
  • Provide a single source of truth on the state of the environment.
  • Create a monitoring system, a GitOps controller (e.g. ArgoCD), and a defined matrix of metrics to track your environment (e.g. Prometheus ).
  • Enforce access management policies via Pull Requests.
  • Initiate a secrets management process for protecting production-level secrets and credentials.
  • Implement code control versioning tools, cloud providers, and DevOps tools based on the defined strategy.

Phase 4: Completion and handover

We implement the designed solutions, integrations, and architecture together with your team.

  • Full overview of solution and demo..
  • Documentation
  • Complete knowledge transfer and handover.
  • Delivery review: What did we achieve together?
  • Discuss further improvements.

The world is changing fast.
The only way to survive it is to build for it.

Talk to our Experts

Book your 15 min 1:1 with:

felix_round

Felix Evert
Global Partnerships Manager

Book a meeting

Let’s take the next step together

 

Fill in the form to request a detailed quotation