ops0ops0

Variable Graph

Visualize Terraform variable and resource dependencies across your IaC projects as an interactive directed acyclic graph (DAG). The Variable Graph shows how outputs from one project feed into variables of another, helping you understand blast radius and dependency chains.

What It Shows

The graph renders each IaC project as a folder node with three key metrics:

MetricIconColorDescription
OutputsUploadGreenValues this project exports for other projects to consume
InputsDownloadBlueVariables this project consumes from other projects
ResourcesBoxOrangeTerraform resources defined in this project

Edges between nodes represent dependency relationships.


Dependency Types

TypeDescription
Remote StateProject reads outputs from another project's state via terraform_remote_state
ModuleProject consumes a module defined in another project
Data SourceProject references a data source that reads from another project's resources

Viewing the Graph

Organization-Wide Graph

See all projects and their dependencies across the entire organization:

Go to IaC → Variable Graph from the sidebar.

View the Full Graph

All projects appear as nodes with dependency edges between them.

Interact

  • Zoom — scroll to zoom in/out
  • Pan — drag the canvas to move around
  • Select — click a node to see its details

Project-Specific Graph

View a single project and its direct dependencies:

Open a Project

Navigate to any IaC project.

Click Variable Graph

Opens the graph filtered to this project and its connected projects.

Explore Dependencies

The current project is highlighted with a purple "Current" badge. Connected projects show upstream (providers) and downstream (consumers).


Node Details

Click any folder node to open the detail modal:

FieldDescription
Project NameThe IaC project name
PathFile path within the project
VariablesList of input variables with types and descriptions
OutputsList of exported outputs
ResourcesCount and types of Terraform resources
Impact LevelLow, Medium, or High based on downstream dependency count

Impact Levels

LevelCriteriaMeaning
Low0–1 downstream dependentsChanges affect few projects
Medium2–4 downstream dependentsChanges may cascade to several projects
High5+ downstream dependentsChanges have wide blast radius — review carefully

Scanning for Dependencies

ops0 can scan all IaC projects to discover cross-project dependencies:

Click Scan

On the Variable Graph page, click Scan Projects.

Wait for Analysis

ops0 analyzes all projects for terraform_remote_state blocks, module references, and data source dependencies.

View Updated Graph

The graph refreshes with all discovered dependencies.

Scanning is useful when:

  • New projects have been added since the last scan
  • Remote state references have changed
  • You want to verify the dependency map is current

Use Cases

Use CaseHow the Graph Helps
Blast radius analysisBefore modifying a project, see which downstream projects depend on its outputs
Debugging state issuesTrace which project provides a failing remote state reference
OnboardingNew team members can visualize how infrastructure projects connect
RefactoringIdentify tightly coupled projects that should be consolidated or decoupled
Change planningUnderstand the order of operations when updating shared infrastructure

Cross-Project References

The graph only shows projects that share compatible backends — projects must use the same state backend provider and cloud integration to reference each other's state.

BackendCross-Reference Support
S3Projects sharing the same S3 bucket/region can reference each other
GCSProjects in the same GCS bucket can reference each other
Azure BlobProjects in the same storage account can reference each other