If you're using Atlantis to automate your Terraform deployments through pull requests, you've probably experienced that moment of uncertainty right before merging. The terraform plan output shows what's changing, but it doesn't simulate what might break. You're left making educated guesses about whether that "simple" security group change will actually take down your production database connections.
This is the gap that most teams fill with tribal knowledge and manual review. Senior engineers spend hours reviewing terraform plans not because they don't trust the code, but because they're the only ones who understand all the hidden dependencies in the infrastructure. That AMI update might be routine, or it might be the thing that breaks your entire application stack because of an obscure compatibility issue with your load balancer configuration.
What Atlantis Doesn't Tell You
Atlantis does an excellent job of automating the terraform workflow. It runs your plans, shows you the output, and manages the apply process through pull request comments. But here's what it can't show you: everything else that might be affected by your change.
When you modify a security group, Atlantis shows you the before and after of that security group resource. What it doesn't show you is the mesh of EC2 instances, RDS databases, load balancers, and Lambda functions that all depend on that security group. It can't tell you that your change will affect 47 other resources across three AWS accounts, or that you're about to break a critical data pipeline that only runs at 3am.
The terraform plan output is precise about what you're changing, but completely silent about the blast radius. And that's where most production incidents come from—not from the thing you changed, but from the thing you didn't realize depended on it.
Adding the Missing Context
Overmind's Atlantis integration fills exactly this gap. When you run atlantis plan
on a pull request, Overmind automatically simulates your terraform change against live infrastructure data to show you the complete picture of what could be affected.
The integration works by taking the terraform plan that Atlantis generates and running it through Overmind's infrastructure discovery engine. By connecting it to your AWS accounts (read-only, using the same kind of IAM role you'd use for monitoring) it can map out all the actual relationships between your resources. Not just the ones defined in your terraform code but everything. Including resources created through the console, CloudFormation, or by other teams.
What you get back is a blast radius analysis that shows you every resource that could potentially be impacted by your change. That simple EC2 instance modification? Overmind shows you it's part of an Auto Scaling group that feeds into a load balancer that's serving traffic to your API, which connects to three different databases and a Redis cluster. Now you can make an informed decision about whether Friday afternoon is really the right time to deploy this.
How It Actually Works
You add a workflow configuration to your repository that tells Atlantis to submit the terraform plan to Overmind after it's generated. Overmind analyses it in parallel with your normal Atlantis workflow, so there's no waiting around. By the time you're looking at the plan output in your pull request, the blast radius analysis is ready.
To run through what it would look like in practice: A developer opens a pull request with some infrastructure changes. They comment atlantis plan
like they normally would. Atlantis runs the plan and shows the output in the PR. Behind the scenes, that plan also gets submitted to Overmind, which returns a change ID and a link to the full analysis.
The developer can click through to see an interactive graph of all the affected resources. They can also see a risk assessment that explains potential issues in plain English. Not "resource aws_security_group_rule.allow_mysql failed validation" but "This security group change might block database connections from your application servers because you're removing port 3306 access from the 10.0.0.0/16 CIDR range."
When they're ready to apply the changes, they comment atlantis apply
as usual. The integration tracks the full lifecycle by marking the change as starting, lets Atlantis run the apply normally, then marks it as complete and captures before/after snapshots of the infrastructure. This gives you a complete audit trail of what actually changed, which is invaluable when you're debugging an issue three weeks later.
Under the Hood
Atlantis generates your terraform plan as a binary file, which gets converted to JSON using terraform show -json
. That JSON is piped to the Overmind CLI, which strips any sensitive values and sends it to the Overmind API.
Overmind then simulates your change against live infrastructure data by doing three things in parallel: maps your terraform resources to actual AWS resource IDs, queries your AWS accounts to discover current state and relationships, and runs the blast radius calculation. The whole process typically completes in 1-3 minutes, and you get back a change UUID and a link to the full analysis.
The apply tracking works similarly - when you run atlantis apply
, the integration calls overmind changes start-change
before the apply, then end-change
after. This captures before/after snapshots by querying AWS state at each point.
Why This Matters for Teams
The real value isn't just in having more information. It's in what that information lets your team do differently. Junior engineers can make infrastructure changes confidently without needing a senior engineer to review every single PR. Senior engineers can focus their time on genuinely complex changes instead of reviewing routine updates. And everyone can move faster because they're not paralysed by uncertainty about what might break.
We've seen teams cut their infrastructure change review time by 60-70% after adding this integration. Not because they're being less careful, but because they're being more efficiently careful. When you can see at a glance that a change only affects three resources in a development environment, you don't need a 30-minute architecture discussion. But when you see that a change touches 50 resources including your production database, you know exactly where to focus your attention.
The blast radius view also surfaces dependencies that teams often don't discover until something breaks. That test environment that's been stable for months? Turns out it's using the same KMS key as production, and your planned key rotation is going to affect both. That's the kind of thing that's almost impossible to catch by reading terraform code, but immediately obvious when you can see the actual resource relationships.
Getting Started
Setting up the integration takes about ten minutes if you already have Atlantis running. You add an atlantis.yaml
file to your repository (or update your existing one) with a workflow that submits plans to Overmind. You'll need an Overmind API key, which you can generate from the settings page after signing up. The API key goes into your Atlantis environment variables, and that's basically it.
The free plan gives you unlimited usage for one repository, which is perfect for trying this out on a single project. If it works well and you want to expand to more repositories, that's when you'd need to talk to us about pricing. But there's no time limit or feature restrictions on the free tier. It's the full product, just scoped to one repo.
For the initial setup, you can use either repository-specific configuration (recommended) or post-workflow hooks. The repository configuration gives you full lifecycle tracking with before/after snapshots, while hooks are good for a quick test to see if you like the blast radius analysis before committing to the full setup.
The integration is designed to be non-blocking. If Overmind is having issues or can't reach your infrastructure for some reason, your Atlantis workflow continues normally. We don't want to become a bottleneck in your deployment pipeline. The analysis is there to help when it's available, not to slow you down when it's not.
If you're interested in trying this out, the integration repository has complete setup instructions and example configurations: github.com/overmindtech/atlantis-example. Or you can start by just signing up and running the CLI locally on your terraform projects to see what the blast radius analysis looks like before you commit to the full CI/CD integration.