Bol's Journey in Shifting Left and Shifting Right: Canary Releases
The Imperative of Canary Releases
In a world where staging or development environments often fall short of accurately representing the complexities of the production environment, every software deployment can feel like a leap of faith—a venture into the unknown, fraught with uncertainties and potential pitfalls. Despite investing heavily in validating changes in isolation (Shifting Left), we are constantly reminded of the stark reality that awaits us in the live environment. This is where Canary Releases emerge as a lifeline, offering a structured approach to testing and validation that minimizes risk and maximizes impact, bridging the gap between controlled environments and the unpredictable nature of reality.
Here are just a few ways how canary releases will help our teams:
1. Risk Mitigation: In the highly distributed and fast-paced world of software development, risk is inevitable. Canary Releases allow us to mitigate this risk by gradually rolling out, closely monitoring performance metrics and user feedback along the way. This iterative approach enables us to identify and address potential unforeseen issues before they escalate, ensuring a smooth and seamless experience for our customers.
2. Enhanced Quality Assurance: Quality is the cornerstone of everything we do at bol. Canary Releases serve as an additional layer of quality assurance, enabling us to validate changes in a real-world environment before full-scale deployment. By proactively identifying and addressing issues during the Canary phase, we ensure that only the highest quality features make their way to our customers.
3. Optimized Resource Utilization: Canary Releases automate deployment, significantly reducing manual monitoring and rollback efforts. By introducing incremental updates and automated validation processes, teams can allocate resources efficiently, alleviating the intensive manual effort traditionally required for monitoring and reverting based on identified issues.
Envisioned by the Road to Pro Initiative
At bol, we thrive on innovation, constantly seeking out new ways to push the boundaries of what's possible. Recently, we embarked on a journey with the Road to Pro initiative—a pioneering endeavor that will revolutionize the way we approach software development. Powered by the combination of minds and streamlined in several Horizontal Tech Initiatives, Road to Pro has envisioned how to simplify our deployment processes, empowering us to deliver value to our customers with unprecedented speed and efficiency.
Simplicity Redefined: Enabling Canary Releases at bol
Gone are the days of complex deployment processes and cumbersome configurations. Thanks to the collaborative efforts of the Horizontal Tech Initiative - 146 - Testing in Production with team Bifrost, bol's now has a new approach to Canary Releases by trusting in the power of Argo Rollouts. Now enabling this powerful feature is as simple as flipping a switch on your Infrastructure-as-code configuration and describing the rollout steps and validation process, making it easier than ever for our teams to embrace Canary Releases as a standard practice.
Validation and Rollout Steps Made Easy
Once the canary flow is enabled, our teams follow a straightforward validation and rollout process supplied by Argo Rollouts in combination with our standard monitoring tools:
1. Define Validations Criteria: Clearly define the success criteria for your Canary rollout, that may have from technical criteria to key performance indicators (KPIs) and user experience metrics. The sky is the limit!
2. Gradual Rollout: Gradually release the new feature, automatically monitoring the performance metrics and trusting on configurable thresholds to automatically decide if the rollout should continue or to be reverted.
3. Real-Time Monitoring: Leverage bol's robust monitoring and observability tools to track the performance of the Canary release in real-time, identifying any issues or anomalies as they arise.
The Road Ahead
As bol continues its journey of transformation, Canary Releases will become a cornerstone of our deployment strategy. And with the support of the Road to Pro initiative, we are poised to unlock new levels of agility, resilience, and innovation.
Just remember to embrace change, iterate often, and always prioritize the customer experience. Together, we'll shape the future of software delivery at bol.