> Markdown version of [/videos/776-our-gitops-approach-for-deploying-an-identity-provider-and-an-api-gateway-in-a-saas-company](https://www.wearedevelopers.com/videos/776-our-gitops-approach-for-deploying-an-identity-provider-and-an-api-gateway-in-a-saas-company). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Our GitOps approach for deploying an Identity Provider and an API Gateway in a SaaS company Did microservices hyper-growth fracture your SaaS authentication? Discover how Power Cloud built an ETL-driven GitOps pipeline to dynamically generate unified API gateways directly from OpenAPI schemas. - **Speakers:** Axel Barbier - **Event:** World Congress 2023 - **Published:** October 23, 2023 - **Duration:** 17:31 - **URL:** https://www.wearedevelopers.com/videos/776-our-gitops-approach-for-deploying-an-identity-provider-and-an-api-gateway-in-a-saas-company ## Summary Power Cloud's rapid SaaS expansion transformed their stable, single-tenant monolith into a tangled web of microservices. Driven by hyper-growth and architectural hype, new development teams introduced fragmented authentication methods, exposing customers to varying API keys, JWTs, and basic auth mechanisms. This fractured the unified user experience across hundreds of AWS accounts, forcing the architecture team to implement a centralized API gateway and identity provider without slowing down feature-focused product teams. To resolve this complexity, the team adapted an ETL (Extract, Transform, Load) methodology for their GitOps deployment pipeline. During continuous integration, Jenkins extracts the OpenAPI schemas from individual microservices and stores them in AWS S3. A Go-based templating tool then transforms these schemas to automatically generate unified routing configurations, identity provider requirements, and consolidated markdown documentation. When deploying a specific customer environment, the system dynamically loads only the required pre-configured routing and authentication files, seamlessly restoring a cohesive entry point for end-users. The architectural journey illustrates a critical lesson: adopting microservices amidst aggressive scale-up phases introduces massive deployment and observability hurdles. Mitigating this sprawl requires robust infrastructure-as-code foundations—leveraging Terraform and Ansible—alongside automated schema management to maintain a uniform developer and customer experience. **Keywords:** gitops pipeline architecture, api gateway configuration, identity provider deployment, saas tenant infrastructure, microservices scaling challenges, extract transform load deployment, jenkins continuous integration, openapi schema extraction, aws s3 artifact storage, go templating automation, unified api authentication, jwt infrastructure standardization, terraform configuration templating, ansible provisioning, observability sprawl mitigation, infrastructure as code automation ## Chapters 1. **Introduction to the SaaS company and technical team** (00:00) — An overview of the company, its role as a billing software provider, and the mission of its technical services team. 1. **Evolution from manual setups to automated monolith deployments** (00:57) — The engineering team transitioned from manual server setups to deploying a centralized monolith per customer account. 1. **Microservices adoption and the resulting architectural fragmentation** (02:42) — Hypergrowth naturally leads to microservices orchestration, bringing disconnected systems and disjointed authentication experiences. 1. **Customer challenges with decentralized authentication and entry points** (04:40) — Transitioning to multiple services fragments authentication methods and causes friction for customers seeking a unified platform. 1. **Designing a centralized API gateway and identity provider** (07:07) — Deploying an API gateway architecture provides unified endpoints across environments without paralyzing product feature timelines. 1. **Applying an ETL methodology to infrastructure configuration management** (08:39) — Adapting the extract, transform, and load pattern provides a reliable way to manage gateway configurations using Jenkins. 1. **Extracting API schemas automatically during continuous integration builds** (09:42) — Jenkins pipelines act as build engines that extract OpenAPI schemas from individual services and store them centrally in cloud buckets. 1. **Transforming API definitions into functional routing configuration files** (10:39) — Automated templating efficiently converts raw JSON API definitions into deployable routing and authentication configurations. 1. **Loading pre-configured artifacts into targeted customer gateway environments** (11:33) — Retrieving generated configuration files directly enables rapid provisioning of targeted customer infrastructure without manual intervention. 1. **Summarizing the automated deployment pipeline and templating workflow** (12:26) — A full workflow walkthrough reveals how Go templates compile API schemas into deployable gateway routes and static web documentation. 1. **Evaluating the past decision to adopt microservices architecture** (14:00) — A candid retrospective illustrates the operational drag and organizational costs associated with moving to microservices during company scaling events. 1. **Generating API documentation and managing infrastructure as code** (16:19) — Transforming service schemas into markdown supports automated website generation while tools like Terraform handle downstream environment provisioning. ## Related Moments - [Designing a self-service internal developer platform with GitOps](https://www.wearedevelopers.com/videos/100137-building-a-cloud-platform-where-everything-is-just-another-kubernetes-resource) (from "Building a Cloud Platform Where Everything is Just Another Kubernetes Resource") - [Exploring the core benefits of adopting GitOps](https://www.wearedevelopers.com/videos/547-how-to-gitops-your-cluster-with-flux) (from "How to GitOps your cluster with Flux") - [Provisioning APIs through a GitOps workflow](https://www.wearedevelopers.com/videos/54-improving-developer-happiness-with-gitops) (from "Improving Developer Happiness with GitOps") - [Incorporating domain-driven design and declarative infrastructure](https://www.wearedevelopers.com/videos/511-our-journey-with-spring-boot-in-a-microservice-architecture) (from "Our journey with Spring Boot in a microservice architecture") - [Building automated continuous deployment pipelines and final architectural insights](https://www.wearedevelopers.com/videos/100111-5-years-in-cloud-native-the-good-the-bad-and-the-bill) (from "5 Years in Cloud Native: The Good, the Bad, and the Bill") - [Fostering team collaboration through common infrastructure abstractions](https://www.wearedevelopers.com/videos/182-gitops-keeps-focus-on-apps-not-on-infrastructure) (from "GitOps keeps focus on apps, not on infrastructure") ## Related Articles - [Stephan Gillich - Bringing AI Everywhere](https://www.wearedevelopers.com/magazine/489-stephan-gillich-bringing-ai-everywhere) - [How we Build The Software of Tomorrow](https://www.wearedevelopers.com/magazine/120-how-we-build-the-software-of-tomorrow) - [How Microsoft worked around a Git limitation to shrink a repository by 94%](https://www.wearedevelopers.com/magazine/499-how-microsoft-worked-around-a-git-limitation-to-shrink-a-repository-by-94) - [Navigating the AI Shift](https://www.wearedevelopers.com/magazine/629-navigating-the-ai-shift) ## Related Jobs - [Staff Software Engineer](https://www.wearedevelopers.com/jobs/ext/1425755-staff-software-engineer) at **GitHub** - [Devops Engineer](https://www.wearedevelopers.com/jobs/ext/1940926-devops-engineer) at **Bitpanda** - [Principal Software Engineer, Identity](https://www.wearedevelopers.com/jobs/ext/1469181-principal-software-engineer-identity) at **GitHub** - [GSI Solutions Engineer](https://www.wearedevelopers.com/jobs/ext/1961614-gsi-solutions-engineer) at **TeamViewer Germany GmbH** - [Cloud Foundations Team](https://www.wearedevelopers.com/jobs/ext/1483289-cloud-foundations-team) at **GitHub** - [Senior Software Engineer, Enterprise Products](https://www.wearedevelopers.com/jobs/ext/1841248-senior-software-engineer-enterprise-products) at **GitHub**