Home / Case Studies / Delivery automation
Delivery automation

From one test cycle a week to ten a day.

Self-service, multi-region test environments on Amazon EKS for a workplace-management SaaS used by large enterprises, provisioned on request with Flux CD.

Workplace management SaaS · Client name withheld under NDA

10/day

Test cycles: up from one per week.

5,000+

Pods: across production and UAT on Amazon EKS.

3 weeks

Multi-account automation: from start to provisioning by code.

AWSAmazon EKSFluxTerraformTerragruntAmazon RDSAmazon ElastiCacheDatadogNGINX

The challenge

Release testing was the bottleneck. Test environments were scarce and shared, so the team managed one test cycle per week, and the core product was a legacy Tomcat application deployed to single-tenant virtual machines.

The constraints

  • Customers include Fortune 100 companies, so production stability came first.
  • Environments had to exist in several regions.
  • Sign-in had to keep working with customers' Azure AD.

Decisions & tradeoffs

  • A Flux CD platform that gives teams on-demand UAT environments and continuously deploys production.
  • Multi-account, multi-region Terraform and Terragrunt provisioning, automated in three weeks, with cost estimates on every change.
  • The monolith moved from single-tenant VMs to a multi-tenant, containerised, GitOps-driven Kubernetes platform.

The implementation

Amazon EKS clusters run production and UAT with more than 5,000 highly available pods, backed by Amazon RDS for PostgreSQL and ElastiCache for Redis. Datadog covers the whole platform, and single sign-on between Azure AD and the NGINX Ingress Controller is automated.

QA and engineers request an environment; Flux CD provisions a UAT environment on Amazon EKS and continuously deploys production, which uses RDS PostgreSQL and ElastiCache Redis; Terraform and Terragrunt build the accounts, regions, and clusters; Datadog monitors.
Self-service test environments. Highlighted: the request-to-environment path.

Outcomes

Testing capacity went from one cycle per week to ten per day, because an environment is now something a team requests rather than waits for.

Handover & ongoing ownership

Self-service documentation for engineers and QA, and the provisioning code owned by the platform team.

Planning something similar? Talk to an AWS partner in Armenia that has built it before.

What’s next for
your business?

Let’s talk