What’s the difference between Terraform Plan and Overmind Blast Radius?
Tags: terraform, aws, cloud
Published: 2023-05-31 16:19:12

### Blast radius is not another Terraform plan visualisation tool

If you’re familiar with Terraform then there’s a good chance you’ve used the Terraform plan command. It compares your current state to your desired state. Building a ‘plan’ that contains a ‘diff’ between both. The output gives us what resources will be created and destroyed along with any modifications before then executing the apply command.

Within the Terraform CLI you’ll see a plan output looking something like this:

![Terraform plan output](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/va3k6rdjeqpd7o9rm02n.png)

And there’s some great tools out there to help you both format and visualise the output so that it is easier to interpret:

![Terraform Plan visualization tools](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tcyzx5irtcjxm9b10g7j.png)

[Pluralith](https://www.pluralith.com/), [Runalantis](https://www.runatlantis.io/) & [Scenery](https://github.com/dmlittle/scenery) are just some of the great tools out there you can use.

## So what’s the problem? 

Terraform plan will tell you about the things it’s going to change:

![Single Jenga Block](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5zt9fyabfs6lucvpupxp.png)

It’ll even tell you if it’s going to change multiple things:

![Multiple Jenga Blocks](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uvmvv8zacg813hvv6423.png)

But it won’t tell you the context of those things within the wider application/infrastructure:

![Jenga tower showing the difference between blocks](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5gbkw6zgar75krajw3m0.png)

You need to be told which pieces you’re touching, sure, and terraform plan is a brilliant way to do that. But you also need to know where those pieces sit in the Jenga tower that is your infrastructure, and what effect removing them might have. That’s what Overmind’s blast radius does.

## Overmind blast radius

Overmind understands all of the dependencies within your AWS infrastructure, so we can calculate the blast radius of a change, even for those resources outside of Terraform. Showing you the consequences of your changes, not just the changes themselves.

![Overmind and github change](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nuv0fmiei9ks7fs8w76f.png)

Start by opening a Terraform pull request and Overmind will discover the dependencies of the things you’re going to change.

![Blast Radius](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x1gkwdm01oeru7hyuqg3.png)

Based on what you're changing, Overmind will calculate blast radius of the affected items. Use the graph to explore relationships and dependencies between these items.

The blast radius contains:

1. What infrastructure will be affected.
2. What applications rely on that infrastructure.
4. What health checks those applications have.

![Comparing the Diff](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/l0kriguhdis1m2bouw4s.png)

After Merging the PR, you’ll automatically get alerted if your change breaks something, Including a diff of exactly what changed, how it's related, and how to change it back.

### We need your help

After a successful early access program where we discovered over 600k AWS resources and mapped 1.7 million dependencies. We are now looking for innovators to join our design partner program to help test impact analysis (only for AWS infrastructure at the moment).

If you're interested in getting access before anyone else and influencing the direction of what we're building register [here](https://app.reclaim.ai/m/dylan-overmind/design-partner-chat).

Or if you want to be notified the minute we go live join our waiting list [here](https://overmind.tech/).