Eliminating Click-Ops & Deployments From Local Machines
The Challenge: Click-Ops, Bottlenecks, and Deployments to Prod from VSCode
Our client had recently begun their cloud migration journey but was encountering the growing pains common to organizations new to the cloud. Without established practices or guardrails, teams had adopted a click-ops approach to provisioning resources—manually configuring infrastructure through the Azure portal. Developers were deploying code to production directly from VS Code on their local machines. The result was an environment lacking consistent standards, limited visibility into what was running and why, and cloud costs that were climbing faster than expected.
The manual approach also created a significant bottleneck: all infrastructure changes had to flow through the operations team. Developers couldn't self-serve, and operations became a chokepoint for every environment request and configuration change.
The Solution: An Internal Developer Platform Built on IaC & CI/CD
-
Terraform Module Library We developed over 30 custom Terraform modules aligned with Azure Well-Architected Framework best practices. These modules encode the organization's standards and business requirements, enabling teams to provision compliant, cost-optimized infrastructure through code rather than portal clicks.
CI/CD Foundation We built a suite of CI/CD templates in GitLab to standardize how infrastructure, backend services, and frontend applications are built and deployed across environments. The templates introduced quality gates, static code analysis, and approval workflows—ensuring code meets defined standards before reaching production.
A Foundation for Future Growth
In the first year of the engagement, we migrated three major products to the new Infrastructure as Code and CI/CD workflow. Beyond direct implementation, we've collaborated with other development teams across the organization to adopt the new processes and standards. New infrastructure is now provisioned through code rather than manual portal configuration, and the client has reported zero outages since implementation. Looking ahead to year two, we'll continue building on the Internal Developer Platform—transitioning from GitLab to GitHub and expanding automation to cover additional systems like Auth0 and other cloud providers.
Want Similar Results for Your Business?
Let's discuss how we can help you achieve your goals with our proven expertise.