-
Notifications
You must be signed in to change notification settings - Fork 3
Update dependency gruntwork-io/terragrunt to v0.96.0 #451
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
renovate
wants to merge
1
commit into
main
Choose a base branch
from
renovate/gruntwork-io-terragrunt-0.x
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
9895e30 to
ba46cce
Compare
ba46cce to
e4fd59e
Compare
e4fd59e to
cc2e9c9
Compare
cc2e9c9 to
cfe31bf
Compare
99a33da to
573f069
Compare
9d5f81c to
6351ff1
Compare
6351ff1 to
2c6e382
Compare
2c6e382 to
09bf67d
Compare
09bf67d to
c2d09e2
Compare
c2d09e2 to
5098d62
Compare
5098d62 to
66cda26
Compare
66cda26 to
943fa91
Compare
943fa91 to
6d67f74
Compare
6d67f74 to
8960132
Compare
8960132 to
2e21e7a
Compare
2e21e7a to
861c60f
Compare
861c60f to
e343930
Compare
e343930 to
a41cd94
Compare
ae4ad19 to
dd8571a
Compare
dd8571a to
be704ed
Compare
be704ed to
a8948f1
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
None yet
0 participants
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.89.3->0.96.0Release Notes
gruntwork-io/terragrunt (gruntwork-io/terragrunt)
v0.96.0Compare Source
🛠️ Breaking Changes
The
--no-destroy-dependencies-checkflag has been deprecatedThe default behavior of Terragrunt with respect to checking dependents during destroys has been inverted. As a consequence the
--no-destroy-dependencies-checkhas been deprecated, and a new--destroy-dependencies-checkflag has been introduced.Previously, Terragrunt would automatically parse all configurations that might depend on a unit being destroyed to warn users that the destroyed configuration might orphan other units that depend on it. This was frequently undesirable behavior due to the fact that it introduced additional unnecessary work (parsing all HCL configurations unnecessarily), and could introduce errors if users had unrelated invalid HCL configurations.
Terragrunt now requires that users opt-in to this behavior via the new
--destroy-dependencies-checkflag, which enables the destroy check, and will not perform the destroy check by default.To learn more, see the no-destroy-dependencies-check strict control.
The
--disable-command-validationflag has been deprecatedTerragrunt no longer performs command name validation when passing commands to OpenTofu/Terraform from Terragrunt when using the
runcommand. This makes the--disable-command-validationflag unnecessary, as the lack of validation is now the default behavior.Previously, Terragrunt had no way to explicitly indicate that a command being used on the Terragrunt CLI was intended as a passthrough to the OpenTofu/Terraform CLI, so it was important that validation be done on the command being supplied on the Terragrunt CLI.
Since completion of the CLI Redesign, this has changed significantly. Users now have explicit shortcuts on the Terragrunt CLI for common OpenTofu/Terraform commands and an explicit interface for passing through OpenTofu/Terraform commands to the OpenTofu/Terraform CLIs using the
runcommand. By removing this validation, Terragrunt will now automatically support new OpenTofu/Terraform commands in future versions of the tools and allow for greater flexibility in IaC Engines, as novel commands can be introduced.To learn more, see the disable-command-validation strict control.
The
--experimental-engineflag now enables theiac-engineexperimentThe experimental IaC Engine feature was introduced in Terragrunt prior to the introduction of the experiment system. As such, it wasn’t enabled when users enabled experiment mode, and didn’t have a dedicated section in the experiments docs.
The
--experimental-engineflag is now an alias for explicitly enabling theiac-engineexperiment, and using IaC Engines will be allowed when using Terragrunt in experiment mode. This increases consistency with how experimental features are managed in Terragrunt, and reduces the surface area users have to be aware of in the Terragrunt CLI.Note that you can explicitly disable usage of engines now with the
--no-engineflag, even when the experiment is active.To learn more, see the iac-engine experiment.
The
--dependency-fetch-output-from-stateflag now enables thedependency-fetch-output-from-stateexperimentThe experimental —dependency-fetch-output-from-state flag was introduced in Terragrunt prior to the introduction of the experiment system. As such, it wasn’t enabled when users enabled experiment mode, and didn’t have a dedicated section in the experiments docs.
The
--dependency-fetch-output-from-stateflag is now an alias for explicitly enabling thedependency-fetch-output-from-stateexperiment, and Terragrunt will automatically attempt to fetch outputs from backend state when in experiment mode. This increases consistency with how experimental features are managed in Terragrunt, and reduces the surface area users have to be aware of in the Terragrunt CLI.Note that you can explicitly disable fetching output from state with the
--no-dependency-fetch-output-from-stateflag, even when the experiment is active.To learn more, see the dependency-fetch-output-from-state experiment.
🧪 Experiments Updated
The
filter-flagexperiment now supports the--filters-fileflagThe
--filters-fileflag has been introduced to allow for the application of multiple filters as defined in a newline-delimited text file, similar to the existing--excludes-fileflag (remember that you must use the filter-flag experiment to try this).$ terragrunt find --filters-file custom-filters.txt # No results in `./unstable` discovered.When the
filter-flagexperiment is active, Terragrunt will automatically parse and apply filters found in a.terragrunt-filtersfile, similar to how it automatically parses and applies excludes found in a.terragrunt-excludesfile.To explicitly disable usage of filter files (including the automatic
.terragrunt-filtersfile), use the--no-filters-fileflag.Unlike the
--excludes-file, usage of the--filters-fileflag also allows for always filtering for particular configurations.To learn more, see the filters file documentation.
🐛 Bug Fixes
Unnecessary
.terragrunt-cachedirectory no longer generated inrun --allrunsFixed a regression where
run --allwould create empty.terragrunt-cachedirectories in the current working directory, even when not needed.What's Changed
--destroy-dependencies-checkby @yhakbar in #5204--filters-fileflag by @yhakbar in #5111--disable-command-validationby @yhakbar in #5189iac-engineexperiment by @yhakbar in #5203dependency-fetch-output-from-stateexperiment by @yhakbar in #5201.terragrunt-cachedir at the stack level by @yhakbar in #5231--filters-fileflag by @yhakbar in #5112New Contributors
Full Changelog: gruntwork-io/terragrunt@v0.95.1...v0.96.0
v0.95.1Compare Source
🧪 Experiments Updated
The
filter-flagexperiment now supports the--filter-affectedflagThe
--filter-affectedflag has been introduced as an convenience alias for--filter [main...HEAD](remember that you must use the filter-flag experiment to try this).Note that if you have local Git configurations that results in a different branch being your default branch, that branch will be used instead of
main.🐛 Bug Fixes
Integration of
--queue-strict-includewith--queue-include-units-readingfixedA regression in
--queue-strict-includeresulted in empty run queues when using a combination of--queue-strict-includewith--queue-include-units-reading. That bug has been resolved.Integration of
--sourcewithrun --allfixedA regression in
--sourceprevented it from working correctly in combination withrun --all, resulting in empty run queues. That bug has been resolved.Integration of Git-expressions with explicit stacks
A bug in the implementation of explicit stack generation for Git-expressions prevented stacks from being generated in Git worktrees when using Git-expressions in the
filter-flagexperiment. That bug has been resolved.🧹 Chores
Dependencies updates
What's Changed
--filter-affectedflag by @yhakbar in #5109TestExcludeDirstests by @yhakbar in #5215TestAwsDocsTerralithToTerragruntGuidetest by @yhakbar in #5220run --allwith--sourceby @yhakbar in #5209--queue-strict-includeintegration with--queue-include-units-readingby @yhakbar in #5222--filter-affectedby @yhakbar in #5110Full Changelog: gruntwork-io/terragrunt@v0.95.0...v0.95.1
v0.95.0Compare Source
🛠️ Breaking Changes
The
--queue-exclude-externalflag has been deprecatedPreviously, Terragrunt would automatically pull in external dependencies (dependencies outside the current working directory when running
terragrunt run --all) into the run queue.To prevent this behavior, users had to manually supply the
--queue-exclude-externalflag. This has caused significant confusion and unexpected behavior for users over the duration of it’s existence in the Terragrunt CLI. To prevent this unexpected behavior for users and follow the principle of least surprise, this flag has been deprecated and its behavior is now the default in Terragrunt.To explicitly request inclusion of external dependencies in the run queue, use the —queue-include-external flag.
⚙️ Process Updates
OpenTofu 1.11.x added to compatibility matrix
We are now continuously testing against OpenTofu 1.11.1 in our Continuous Integration testing, and have updated the compatibility matrix to reflect that.
🧪 Updated Experiments
The
filter-flagexperiment now supports Git-based expressionsThe
--filterflag can now be used to filter units based on changes in Git history (remember that you must use the filter-flag experiment to try this).For more information, see the dedicated documentation on Git-Based Filtering.
🐛 Bug Fixes
Units now properly flush stdout in
run --allA regression in unit stdout flushing caused stdout for unit logs to hang pending resolution of
run --allruns. This regression has been fixed to ensure that logs are streamed in real time again.Queue entries now properly run, even if dependent units are excluded
A bug in run queue optimization made it so that excluding the dependent of a unit within a multi-unit run queue would incorrectly exclude the dependency unit from the run queue. This bug has been resolved, and units are now properly included, even if their dependents are excluded.
Provider cache server only contacts relevant registries
The provider cache server was incorrectly establishing a connection with multiple registries even though only one registry for a given IaC tool run by Terragrunt. For users with network-restricted environments, this could cause problems. Terragrunt will now only contact the relevant registry for a given IaC tool unless users explicitly request for usage of multiple registries.
📖 Documentation Updates
Provider cache server no longer documented as experimental
The Provider Cache Server has been used in production by a good portion of the Terragrunt community based on voluntary community reporting. The need for the feature is also mitigated by advances in OpenTofu that makes the Automatic Provider Cache Dir the default solution all Terragrunt users using OpenTofu ≥ v1.10.0.
As such, the Provider Cache Server has been promoted to a generally available feature that is exclusively opt-in for users that cannot benefit from the Automatic Provider Cache Dir feature, or are better served by the Provider Cache Server due to scale or platform limitations.
What's Changed
--filter-allow-destroyflag by @yhakbar in #5210TestAwsDocsTerralithToTerragruntGuideuntil we get a new release by @yhakbar in #5208--filterGit support by @yhakbar in #5108--queue-exclude-dir/--filterequivalence test by @yhakbar in #5078Full Changelog: gruntwork-io/terragrunt@v0.94.0...v0.95.0
v0.94.0Compare Source
✨ Features
NOTE: Although this release is marked as backward incompatible, it is functionally compatible as nothing has been changed in Terragrunt internals. The minor version release is useful to mark the change in Terraform version that is being tested.
What's Changed
Full Changelog: gruntwork-io/terragrunt@v0.93.13...v0.94.0
v0.93.13Compare Source
🐛 Bug Fixes
Catalog module source URL construction
Fixed malformed version-pinned catalog module URLs where
TerraformSourcePath()incorrectly placed//moduleDirafter?ref=, ensuring correct root and submodule URL formatting.What's Changed
Full Changelog: gruntwork-io/terragrunt@v0.93.12...v0.93.13
v0.93.12Compare Source
🐛 Bug Fixes
False positive errors during dependent units discovery
Reduced false-positive log messages emitted while discovering dependent units during destroy operations.
What's Changed
Full Changelog: gruntwork-io/terragrunt@v0.93.11...v0.93.12
v0.93.11Compare Source
🐛 Bug Fixes
Stack files matching
Fixed stack detection so only files whose base name exactly matches the default stack name are treated as stack files.
What's Changed
Full Changelog: gruntwork-io/terragrunt@v0.93.10...v0.93.11
v0.93.10Compare Source
🐛 Bug Fixes
Handling of disabled units in discovery
Discovery now skips units that are marked as disabled.
What's Changed
Full Changelog: gruntwork-io/terragrunt@v0.93.9...v0.93.10
v0.93.9Compare Source
✨ New Features
Added support for Openbao encryption provider
Key provider now supports
openbao🐛 Bug Fixes
Fixed error in calling sensitive() function in HCL
HCL sensitive() function now correctly handles values and calls without errors.
What's Changed
Full Changelog: gruntwork-io/terragrunt@v0.93.8...v0.93.9
v0.93.8Compare Source
⚙️ Process Improvements
Terragrunt static executables
What's Changed
Full Changelog: gruntwork-io/terragrunt@v0.93.7...v0.93.8
v0.93.7Compare Source
What's Changed
OriginalTerragruntConfigPathto parse options by @kazsakke in #5090New Contributors
Full Changelog: gruntwork-io/terragrunt@v0.93.6...v0.93.7
v0.93.6Compare Source
⚙️ Process Improvements
Terragrunt release automation moved to GitHub Actions
The release automation for Terragrunt has moved to GitHub Actions. With this move, Terragrunt releases now support:
.zipand.tar.gzrelease artifacts)You can still download standalone executables from release assets for backward compatibility.
🧪 Experiments Updated
The
filter-flagexperiment now supports thesource=attributeThe
--filterflag can now be used to filter units by their usage of particular OpenTofu/Terraform modules in theirterraformsourceblocks (remember that you must use thefilter-flagexperiment to try this).For more information, see the filter feature documentation.
What's Changed
--filtersource=support by @yhakbar in #5075--filterforsource=attribute by @yhakbar in #5076Full Changelog: gruntwork-io/terragrunt@v0.93.5...v0.93.6
v0.93.5Compare Source
🧪 Experiments Updated
The
filter-flagexperiment now supports--filterinstack generateThe
--filterflag can now be used in thestack generatecommand, and any command that performs stack generation, e.g.run --all(remember that you must use thefilter-flagexperiment to try this).The
--filterflag works in a slightly unique way when used to control stack generation in that it needs to be explicitly restricted to stacks for it to impact stack generation using thetype=stackattribute filter.e.g.
The reason for this is that stack generation can also be done automatically as part of other commands, like
run, and thus we need to make it clear that we’re trying to control stack generation rather than run behavior.For more information, see the filter feature documentation
What's Changed
-filterinstack generateby @yhakbar in #5073-filterforstack generateby @yhakbar in #5084Full Changelog: gruntwork-io/terragrunt@v0.93.4...v0.93.5
v0.93.4Compare Source
🧪 Updated Experiments
The
filter-flagexperiment now supports graph expressionsThe
--filterflag now supports usage of graph expressions, allowing users to filter based on the dependency relationship of units discovered by Terragrunt (remember that you must use thefilter-flagexperiment to try this).e.g.
You can learn more about graph-based filtering in the filter feature documentation.
What's Changed
--filterby @yhakbar in #5049if_existsby @yhakbar in #5072runinto dedicated internal package by @yhakbar in #5060runcommand flags to access insharedpackage by @yhakbar in #5062Full Changelog: gruntwork-io/terragrunt@v0.93.3...v0.93.4
v0.93.3Compare Source
🐛 Bug Fixes
hcl validate --inputsregression onvalidationblocks resolvedA bug introduced in
v0.93.1preventinghcl validate --inputsfrom succeeding on OpenTofu/Terraform modules with variables containingvalidationblocks. This was caused by an error in the update to OpenTofu/Terraform.tffile parsing by Terragrunt in thehcl validatecommand.That bug has been resolved.
What's Changed
v0.93.2for remote references by @yhakbar in #5058Full Changelog: gruntwork-io/terragrunt@v0.93.2...v0.93.3
v0.93.2Compare Source
✨ New Features
The
listcommand now supports thedotfomatThe
listcommand can now render its output in the Graphviz DOT language:$ terragrunt list --format=dot --dependencies digraph { "live/dev/vpc" ; "live/dev/db" ; "live/dev/ec2" ; "live/dev/db" -> "live/dev/vpc"; "live/dev/ec2" -> "live/dev/db"; "live/dev/ec2" -> "live/dev/vpc"; "live/prod/vpc" ; "live/prod/db" ; "live/prod/ec2" ; "live/prod/db" -> "live/prod/vpc"; "live/prod/ec2" -> "live/prod/db"; "live/prod/ec2" -> "live/prod/vpc"; }This was previously only possible using the
dag graphcommand, but that command has been refactored to be an alias for thelist --format=dot --dependenciescommand, to provide greater flexibility in how graphs are rendered in the DOT language. This includes integration with the experimental Filter feature.You can learn more about this in the
listcommand documentationWhat's Changed
dag graphcommand tolist --format=dotby @yhakbar in #5013dotformat for thelistcommand by @yhakbar in #5042find&listso that they use a single write instead of intermediate writes by @yhakbar in #5027Full Changelog: gruntwork-io/terragrunt@v0.93.1...v0.93.2
v0.93.1Compare Source
🏎️ Performance Improvements
--auth-provider-cmdinvocations duringrun-allterragrunt.hcl.In our internal “Run all with Auth Provider” benchmark (10 runs, ~10 ms on auth command), these changes reduced average runtime from ~235 ms to ~213 ms (about 9% faster) compared to v0.93.0.
Benchmarks of "BenchmarkDependencyPairwiseOddDependsOnPrevEvenRandomWait" release changes vs main
What's Changed
hcl fmtoptimization by @yhakbhttps://github.com/gruntwork-io/terragrunt/pull/5026l/5026New Contributors
Full Changelog: gruntwork-io/terragrunt@v0.93.0...v0.93.1
v0.93.0Compare Source
🛠️ Breaking Changes
Removal of deprecated HCL attributes
The
skip,retryable_errors,retry_max_attemptsandretry_sleep_interval_sechave all been removed from Terragrunt.This is the final planned breaking change on the road to Terragrunt 1.0 related to removal of deprecated functionality. Breaking changes will be minimized before Terragrunt 1.0, but may still occur based on user feedback, or based on the need to stabilize parts of Terragrunt before 1.0.
If you are currently using the
skipattribute, you'll want to adjust your usage to leverage theexcludeblock instead:Before:
After:
If you are currently using the
retryable_errorsattribute, you'll want to adjust your usage to leverage theerrorsblock instead:Before:
After:
Read the detailed migration guide for more information.
What's Changed
Full Changelog: gruntwork-io/terragrunt@v0.92.1...v0.93.0
v0.92.1Compare Source
✨ New Features
hcl fmtsupports--parallelismfor controlling concurrencyThe
hcl fmtcommand now supports the--parallelismflag for controlling the number of concurrent files getting formatted. By default, the number of concurrent file formats will be determined by the number of CPU cores detected on the system running Terragrunt.See
hcl fmtdocumentation for more information.What's Changed
--parallelismtohcl fmtby @yhakbar in #5020--parallelismflag inhcl fmtby @yhakbar in #5031Full Changelog: gruntwork-io/terragrunt@v0.92.0...v0.92.1
v0.92.0Compare Source
🛠️ Breaking Changes
Internal
boilerplatedependency upgraded to v0.10.1The templating engine (Boilerplate) used by the Terragrunt
catalogandscaffoldcommands has been upgraded tov0.10.1.As a consequence, the default behavior of scaffolding when using the
catalogandscaffoldcommands has changed to allow for the use of Boilerplate hooks and shell commands (see hooks and helpers in Boilerplate documentation) by default.Note that Boilerplate will ask for permission interactively by default to run said hooks and shell commands, and that the interactive prompt will propagate to Terragrunt users.
e.g.
When using the
--non-interactiveflag, Terragrunt will skip prompts and allow hooks and shell commands automatically by default.If you would like to explicitly prevent this behavior, you can use the
--no-hooksand--no-shellflags added tocatalogandscaffoldto explicitly prevent usage of these features:$ terragrunt scaffold github.com/gruntwork-io/terragrunt//test/fixtures/scaffold/with-hooks --non-interactive --no-hooks --no-shell ... [boilerplate] 2025/10/24 13:53:40 Hooks are disabled, skipping 1 hook(s) ... [boilerplate] 2025/10/24 13:53:40 Hooks are disabled, skipping 1 hook(s) 13:53:40.141 INFO Running fmt on generated code . 13:53:40.143 INFO Scaffolding completedYou can also set the
no_hooksandno_shellattributes in yourcatalogconfig to have these set by default for all users of your project:🧪 Experiments Updated
filter-flagexperiment now supported inhclcommandsThe
--filterflag is now supported inhclcommands (validateandfmt) (remember that you must use thefilter-flagexperiment to try this).e.g.
When using the
--filterflag forhcl fmt, filtering applies to files instead of units / stacks. Only file path filters are supported for thehcl fmtcommand.🏎️ Performance Improvements
hcl fmtPerformance ImprovedThe performance of the
hcl fmtcommand has been improved substantially.Formatting files is now roughly twice as fast due to parallelization of file formatting, and optimizations used in file exclusion.
What's Changed
--filterinhclcommands by @yhakbar in #5006--externaland--dependenciesby @yhakbar in #5014--filterinhclcommands by @yhakbar in #5010Full Changelog: gruntwork-io/terragrunt@v0.91.5...v0.92.0
v0.91.5Compare Source
🧪 Experiments Updated
filter-flagupdated withrunsupportThe
--filterflag is now supported on theruncommand (remember that you must use thefilter-flagexperiment to try this).e.g.
For more information, see the documentation on Filtering Units.
If you give this feature a try, make sure to share your feedback on the Filter Flag RFC
What's Changed
--filterflag inrunby @yhakbar in #4981--filterin theruncommand by @yhakbar in #5015Full Changelog: gruntwork-io/terragrunt@v0.91.4...v0.91.5
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.