github gruntwork-io/terragrunt v0.99.0-rc2026012301

pre-release12 hours ago

🛠️ Breaking Changes

Undocumented behavior removed

We have removed several undocumented features that served as temporary stop-gaps to facilitate experimentation.

The following environment variables no longer affect Terragrunt behavior:

  • TERRAGRUNT_TEMP_QUOTE_NULL
  • TMP_UNDOCUMENTED_REPORT_PADDER
  • TMP_UNDOCUMENTED_REPORT_UNIT_COLORIZE
  • TMP_UNDOCUMENTED_COLORIZE_DEFAULT_SUMMARY_PADDING

✨ New Features

Depth control for dependency traversal

Graph-based expressions in the --filter flag now support limiting the depth of graph traversal they perform when discovering units. You can now append/prepend a number to the end of a graph expression ellipsis to control how deep in graph traversal Terragrunt will look for dependents/dependencies.

e.g.

# Find 'service' and only its direct dependencies (1 level deep)
terragrunt find --filter 'service...1'

# Find 'vpc' and only components that directly depend on it (1 level)
terragrunt find --filter '1...vpc'

# Find 'db' with 2 levels of dependencies and 1 level of dependents
terragrunt find --filter '1...db...2'

This should result in significant performance and usability improvements for users with large dependency graphs.

Special thanks to @sofianedjerbi for contributing this feature!

🧪 Experiments Updated

IaC Engines Updated to use v0.1.0 of terragrunt-engine-go

The iac-engine experiment has been updated to use v0.1.0 of the terragrunt-engine-go library.

Given that this is still experimental functionality, no effort has been made to maintain backwards compatibility with existing engines. If you are currently using the OpenTofu engine, you will need to upgrade to v0.1.0 of the engine. The Terraform engine will be updated in the near future.

This update pulls in changes to the protobuf schema used in communication between Terragrunt and IaC engines to give engines the ability to log messages in Terragrunt and reduces the overall size of messages passed to Terragrunt for stdout/stderr messages.

⚙️ Process Updates

Curl to Bash script available

In addition to all the other installation mechanisms available to install Terragrunt, a convenient curl to bash script has been added to minimize the friction in installing and getting started with Terragrunt, and removing any dependency on third party tools if you don’t want to use them.

curl -sL https://terragrunt.gruntwork.io/install | bash

The installation can be customized, with full customization options available via the --help flag.

curl -sL https://terragrunt.gruntwork.io/install | bash -s -- --help

In addition to providing this script, the ASDF plugin for Terragrunthas been updated to automatically perform signature verification on an opt-out basis for any version of Terragrunt equal or newer to v0.98.0. The Terragrunt entry in the Aqua registryhas been updated to do the same, meaning mise users will automatically benefit from this as well.

If you don’t want to use the curl to bash script, or any of the other distribution methods available, the instructions for performing signature verification manually have been updated in the installation documentation as well.

📖 Documentation Updates

OpenTofu/Terraform compatibility matrix now available as API

In addition to providing a compatibility matrix in the Supported Versions documentation, compatibility verification is also available via an API endpoint here:

https://terragrunt.gruntwork.io/api/v1/compatibility

See the compatibility API documentation for more details, including availability of query string parameters for filtering responses.

🐛 Bug Fixes

Exit Codes for run --all more consistent

A bug in the logic for handling exit codes when any one unit failed in a run resulted in 0 exit codes being returned despite some failures in units. This bug has been fixed.

Automatic retry for provider queries

To address intermittent errors in queries to the OpenTofu/Terraform provider registries, the list of error messages that warrant an automatic retry has been extended with a match for timeouts from provider registries.

What's Changed

New Contributors

Full Changelog: v0.98.0...v0.99.0-rc2026012301

Don't miss a new terragrunt release

NewReleases is sending notifications on new releases.