Why Does Atmos Exist?
Atmos fills the gap for Terraform users by offering a proven framework complete with conventions, methodologies, design patterns, and best practices, ensuring teams succeed with Terraform from the start.
Every team progresses through a similar path when adopting Terraform, maturing over time.
Each advancement brings new challenges, adding complexities that are ultimately justified by the benefits. Often, the true value of these evolutions only becomes clear after we encounter and address these intricate challenges first-hand.
Most companies today wouldn't dream of starting a new product without using a mainstream framework like React or NextJS.
Despite Terraformโs HCL language being a decade old, many companies still begin their Terraform journey with a blank slate, oblivious to the existing tooling and frameworks like Atmos. This is reminiscent of the early days of the web, with languages like NodeJS, PHP, and Ruby, before the rise of modern frameworks like Rails and React revolutionized application design. However, it doesnโt have to be this way. It's no wonder some teams endure over 10 stages of evolution before reaching Terraform maturity.
From Cloud Posse's experience working with countless venture-backed startups all the up to Fortune 100 companies, here's the typical journey we see them take when using Terraform without a framework to guide them.
What stage are you at?
Let's explore the challenges and constraints we faced using Terraform without a framework.
๐๏ธ Stage 0: ClickOps
All infrastructure is manually provisioned using web interfaces.
๐๏ธ Stage 1: Hello World!
Exploration into Terraform begins with a simple example.
๐๏ธ Stage 2: Write Terraliths
Terraform code expands into a monolithic root module.
๐๏ธ Stage 3: Reinvent the Wheel
In-house modules are created to avoid code duplication.
๐๏ธ Stage 4: Discover Open Source
Open Source modules replace in-house modules.
๐๏ธ Stage 5: Refactor Root Modules
Root modules are refactored into smaller, more manageable units.
๐๏ธ Stage 6: DRY Configuration
Configuration management moves to `.tfvar` files.
๐๏ธ Stage 7: Bash Scripts & Makefiles
Scripts automate terraform to make it easier.
๐๏ธ Stage 8: Team Challenges
Team expands and begins to struggle with Terraform
๐๏ธ Stage 9: CI/CD Challenges
Terraform is deployed with a CI/CD pipeline
๐๏ธ Stage 10: Terraform Bankruptcy
Teams start looking for alternatives out of frustration.
๐๏ธ Nirvana
Teams who adopt Atmos have total clarity of their infrastructure.