github gruntwork-io/terragrunt v0.97.0

latest releases: v0.97.2, v0.97.1
5 days ago

⚒️ Breaking Changes

The --queue-strict-include flag is deprecated

Terragrunt no longer automatically includes dependencies of included units. As such the --queue-strict-include flag is no longer useful in the Terragrunt CLI.

The flag has been deprecated, and no longer does anything. This flag will not be removed before 2.0.

Run report no longer reports --queue-exclude-dir as a reason for exclusion

Run reports no longer report on units excluded from runs as a consequence of the --queue-exclude-dir flag.

The --units-that-include flag is deprecated

The --units-that-include flag is now an alias for the reading= attribute filter, just like the --queue-include-units-reading flag.

Given that the two flags no longer differ in functionality, and that the functionality of the --units-that-include is no longer strictly including units that are included, the flag has been deprecated.

The double-star strict control is complete

The globbing behavior of Terragrunt in CLI flags has been updated to match all paths when ending with a trailing ** .

🧪 Experiments Completed

The filter-flag experiment is completed

The filter-flag experiment is completed, and the --filter flag is now generally available.

You can use filter expressions as a single unified API for controlling the Run Queue, replacing the need to use the following CLI flags:

Legacy —queue flag Equivalent —filter expression
—-queue-include-dir=path —-filter='{./path}'
—-queue-exclude-dir=path —-filter='!{./path}'
--queue-include-units-reading=root.hcl --filter='reading=root.hcl'
--units-that-include=root.hcl --filter='reading=root.hcl'
--queue-include-external-dependencies --filter='{./**}...'
--queue-excludes-file=excludes.txt --filters-file='filters.txt' *
--graph --filter='...{.}'
  • Note that the file used for the --queue-excludes-file does not directly translate to the kind of file you can use for a --filters-file. To learn more, see the documentation.

The table above also explains the aliasing that has been done internally to replace queue flags with their filter equivalents. The aliasing for these queue flags is present purely for backwards compatibility purposes, but they are not going to emit deprecation warnings, and will not be removed before the Terragrunt 1.0 release.

You are heavily encouraged to adopt the new --filter flag for your infrastructure targeting needs as soon as feasible in your workflows. It will offer a significantly more flexible and powerful experience.

To learn more see the Filters feature documentation.

🐛 Bug Fixes

The get_original_terragrunt_dir() function is now supported in terragrunt.stack.hcl files

When authoring explicit stacks, using the get_original_terragrunt_dir() HCL function in terragrunt.stack.hcl files will now return the directory where the terragrunt.stack.hcl file lives, even when the configuration is read from another stack/unit using read_terragrunt_config().

Using Git-based expressions with the --out-dir flag is fixed

When using Git-based expressions using the --filter flag, the relative path of units relative to their respective Git worktree roots is used for determining where the plan file will be saved, rather than a path in the relevant Git worktree.

Color for output fetching is suppressed more reliably

Terragrunt will use tofu output -json / terraform output -json more reliably when users expect a lack of colors (like when colors are suppressed for Terragrunt).

What's Changed

New Contributors

Full Changelog: https://github.com/gruntwork-io/terragrunt/compare/v0.96.1..v.0.97.0

Don't miss a new terragrunt release

NewReleases is sending notifications on new releases.