Armory and Spinnaker on AWS bring scalable CD pipeline to Glovo hero graphic

Armory and Spinnaker on AWS bring scalable CD pipeline to Glovo

Jan 12, 2021 by Ryan Cartwright

Executive Summary

Glovo, a Barcelona, Spain-based startup began its journey in 2015 to become the globe’s on-demand marketplace that can deliver anything to their customers ordered through its mobile application. The three-sided marketplace serves customers, couriers, and vendors, which means there are a lot of moving pieces to it. As the company grew from serving three countries and eight cities to 22+ countries and 300+ cities, Glovo’s application development team could no longer manually keep up with their monolithic application’s updates. The team partnered with Armory to support their transition to a true Continuous Deployment (CD) pipeline via Spinnaker and AWS, increasing successful deployments to 2,000 per year.

Manual deployment led to high error rates and low confidence

Before the adoption of Spinnaker, Glovo’s engineering team used a manual deployment process to make changes to their monolithic application. They ran Jenkins for application artifact deployment which pushed to Amazon Simple Storage Service (Amazon S3) buckets. From there, engineers manually deployed to a new cluster, monitored for errors, and then manually destroyed the old cluster.

The team experienced a 20-percent change failure rate using this process—with each error initiating a rollback that led to lengthy, manual root-cause analysis. It got to the point where the development team was not allowed to deploy on Fridays and weekends. The team also had to introduce code freeze for up to three weeks around the holiday season to ensure the stability of the platform during the holiday periods.

Trading manual deployment processes for CD automation

As Glovo’s development team grew from 45 to 300 engineers, leadership decided to adopt a CD pipeline in lieu of deploying manually. After contemplating the options, they chose Spinnaker, an open-source CD platform created by Netflix, to run on Amazon Elastic Kubernetes Services (Amazon EKS) and Amazon Simple Storage Service (Amazon S3) deploying to both Amazon EKS and Amazon Elastic Compute Cloud (Amazon EC2). Armory assisted Glovo with its solution implementation, including Armory’s Pipeline as Code which enabled the Glovo engineering team to easily implement a declarative GitOps model for its Spinnaker pipelines. The model allows them to store Spinnaker pipelines in their source control, in this case GitHub, and manage them as they would manage code, including version control, templatization, and modularization. Furthermore, Amory’s service, Dinghy, automatically keeps the pipeline in sync with what is defined in the source code repo. The result is the ability to rapidly and repeatably scale pipelines in their Spinnaker deployment. Today, Amory continues to provide ongoing management and monitoring of the platform using Armory Cloud Enterprise.

Reducing change failure rate from 20% to 5.4%

As part of implementing Spinnaker and continuous deployment (CD), Armory supported Glovo’s move to trunk-based development with pull requests workflow. This enabled automated production upon pull request mergers for a single source of truth with the master and production. It also simplified the rollback process while making the master more stable and transparent. As a result, the change failure rate dropped from 20 percent to 5.4 percent, making for a massive jump in successful independent deployments to the monolith backend system.

Increasing successful deployments to 2,000 in one year

Using Spinnaker for CD, each pull request gets automatically deployed to production which gives Glovo unprecedented speed and accuracy. As a result, deployment frequency has increased to eight times per day with a milestone of 2,000 successful deployments in the first year. Other Armory benefits include reduced recovery time from hours to two minutes on average, a 90-minute feature turnaround time, and single-sign-on integration.

Improving transparency, agility, and confidence with automation

The move to CD provides transparency, agility, and confidence to Glovo’s engineers and decision makers. “Our engineers now know immediately if the release, deployment, or feature is successful, which gives them greater autonomy through transparent monitoring,” said Haroon Rasheed, Engineering Manager for Glovo. “We’ve gained deeper confidence in peak weekend production deployments and reduced our former holiday ban on commits from three weeks to three days.”

Smoothing the way to a future of DevOps growth

Glovo, Armory, and AWS have a clear picture of the future with plans to transition from a monolithic application structure to microservices running on container-based architecture. This will provide the boundless flexibility and control to accommodate the growth of Glovo and its engineering team as it grows to over 300.

The next stage will build on the setup of the first Kubernetes cluster in partnership with Armory’s CD pipeline support and AWS providing Elastic Kubernetes Services (EKS) to a more global Kubernetes cluster strategy. “Armory became a true partner for us in the adoption of Spinnaker. From installing and maximizing Spinnaker to establishing an infrastructure, engineering organization, and DevOps team culture,” Haroon Rasheed said.

Share this post:

Recently Published Posts

Argo + Armory: Cross-environment orchestration made easy

Feb 1, 2023

Cross-environment orchestration that you don’t have to spend time building At Armory, our goal is software innovation, whether that’s our own Continuous Deployment solutions, or being able to help our customers reach higher innovation peaks within their software development. We’ve taken deliberate steps to make sure our products play well with others, with a focus […]

Read more

Navigating AWS Deployment Targets with Armory

Jan 20, 2023

Many organizations look to Amazon Web Services (AWS) to host and deploy their applications in the cloud. However, they’re finding that their deployment tooling, often built as an extension of their legacy continuous integration (CI), is one of the main impediments to adopting cloud services.  Custom-scripted production pipelines built with in-house tooling need to be […]

Read more

Release Roundup – January 2023

Jan 11, 2023

Get the latest product news on Continuous Deployment-as-a-Service and the most recent release for Continuous Deployment Self Hosted, 2.28.2. Welcome to 2023!  Just like every organization, Armory is looking for ways to improve our practices and deliver more value (and faster!) to you, our customers. That’s why our engineering team is working to deliver features, […]

Read more