Organising Your Code and State for Governance and Self-Service
summary
Company moves from monorepo to a three-tier git repo layout: a seeding repo (initial state committed to git with a bucket and DynamoDB), a shared/platform repo for environment-level providers, and team/application repos that generate deployments. Uses OpenTofu, Atlantis, central testing for provider version bumps, and templated “golden path” modules so developers get secrets and DBs automatically. Result: decoupled state, true self‑service, handles ~100 releases/day and can apply 100 parallel changes in ~5 seconds.
AI-written summary · about
chapters (19)
- 0:00Introduction
- 1:02Company context
- 2:28Infrastructure as code
- 4:51Monolithic state problems
- 6:14Initial plan insights
- 8:00Scopes and concerns
- 10:06Organizational roles
- 11:29Risk and change balance
- 13:56Governance policies
- 16:23Policy enforcement with OPA
- 17:05Implementation strategy
- 20:55Root resources seeding
- 23:04Multi-cloud shared stage
- 25:56Team directory structure
- 28:02Microservices and Conway's Law
- 29:03Developer experience path
- 30:48Provider upgrades handling
- 32:12OpenTofu migration
- 32:33Q&A
related talks
08mLightning Talk: Managing the ‘Git’ Half of ‘GitOps’: How to Structure...
31mTerraform Practices to Enable Infrastructure Scaling
25mMicroservices, Monorepos, and the Efficient Build Processes
59mManaging Terraform modules at scale
30mOrganizing Teams for GitOps and Cloud Native Deployments
01h 01mRethinking the “Sec” in DevSecOps for modern architectures
24mRe-potting Overgrown Terraform Repositories
40mMonorepo or Polyrepo: What's the Right Choice for You?
