chore(deps): update dependency terragrunt to v1.0.7#64
Merged
Conversation
Preview Deployments (75accc8)
|
danieldietzler
approved these changes
Jun 9, 2026
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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:
1.0.6→1.0.7Release Notes
gruntwork-io/terragrunt (terragrunt)
v1.0.7Compare Source
✨ New Features
tfr://source URLs accept an optionalversionThe
versionquery parameter ontfr://source URLs is now optional. When omitted, Terragrunt queries the registry's list-versions endpoint and downloads the latest stable version, matching how OpenTofu and Terraform resolve a module reference that has no version constraint.Prereleases are excluded from resolution, so a registry that only publishes
4.0.0-rc1alongside3.3.0will pin to3.3.0. Pin a version explicitly with?version=when you need reproducible builds or want to opt into a prerelease.Thanks to @raman1236 for contributing this feature!
🐛 Bug Fixes
update_source_with_cas: preserve//subdiron a unit'sterraform.sourceWhen a unit's
terraform.sourceused the//subdir convention (for example,source = "../..//modules/foo") and opted intoupdate_source_with_cas, the rewritten source dropped the//subdirtail and the synthetic tree contained only the leaf module's files. A module that referenced a sibling via a relative path (source = "../bar") could not resolve that reference after materialization.Rewrites now preserve the original
//subdir(for example,cas::sha1:<hash>//modules/foo), and the synthetic tree is rooted at the path before//, so sibling files reachable via relative paths land in the materialized working directory.Sources without
//are unchanged: the tree stays scoped to the leaf module, and the rewritten reference has no//subdirtail.--filternow detects affected units on WindowsOn Windows,
terragrunt find --filter '[origin/main...HEAD]'(and its variants) returned no affected units even whengit diffreported changed files. Thesource=andreading=filters were affected by the same problem.Filter glob patterns are always written with forward slashes, but the affected-unit comparison was being made with Windows backslash separators, so nothing matched. Terragrunt now compares paths consistently with forward slashes on every platform, and the filter detects changed units on Windows as it already did on Linux and macOS.
Reported in #6214.
startswith,endswith,strcontains, andrun_cmdno longer panic on malformed callsCalling
startswith,endswith, orstrcontainswith the wrong number of arguments (for example a single argument instead of two) crashed Terragrunt instead of reporting a configuration error. Callingrun_cmdwith only option flags and no command (for examplerun_cmd("--terragrunt-quiet")) crashed the same way.These calls now return a clear error: a wrong-number-of-parameters error for the string functions, and an empty-command error for
run_cmd.The
--parallelismflag no longer accepts non-positive numbersPreviously, terragrunt commands that accept the --parallelism flag (or equivalently the
$TG_PARALLELISMenvironment variable) used to hang indefinitely when invoked with--parallelism=0.Terragrunt now validates that the value is positive and exits with an error otherwise.
Reported in #6211
🧪 Experiments Updated
cas— content-addressing for non-git sourcesCAS now covers module sources beyond git:
http(s), Amazon S3, Google Cloud Storage, and Mercurial. Repeat runs against an unchanged remote reuse the cached tree instead of downloading the bytes again.Before fetching, CAS issues a cheap remote probe (an HTTP
HEAD, an S3 object-attributes lookup, a GCS metadata read, orhg identify) to derive a cache key without pulling the source. On a hit, the cached tree is linked directly; on a miss, or when the remote exposes no usable signal, CAS downloads the source, ingests it, and keys the resulting tree by its content hash. A remote that publishes a new version under the same address pins to a new entry, so a stale cache cannot serve outdated bytes.cas— OpenTofu/Terraform registry sourcesModule sources of the form
tfr://...are now content-addressed in CAS. Repeat runs against the same pinned registry version reuse the cached module instead of re-downloading the archive from the registry.CAS resolves a
tfr://source by asking the registry where the underlying archive lives and uses that resolved URL as the cache key. Two runs that pin the same version share one entry; a republish under the same version pins to a new entry, so a stale cache cannot serve outdated bytes.stack-dependencies:unit.<name>.pathandstack.<name>.pathresolve invaluesThe
stack-dependenciesexperiment now exposesunit.<name>.pathandstack.<name>.pathwhen evaluating thevaluesattribute of aunitorstackblock, not only insideautoincludeblocks. A parent stack can pass the generated path of a sibling component down into a child stack, so a unit nested in that child stack can depend on a unit that lives at a different level of the hierarchy.A unit inside the
appstack readsvalues.vpc_pathand uses it as theconfig_pathof anautoincludedependency, wiring the cross-level relationship at generation time. Paths follow the same layout the generator produces, includingno_dot_terragrunt_stackon the referenced block.stack-dependencies: simplifiedunit.*/stack.*ref shapeThe
stack-dependenciesexperiment no longer resolvesstack.<name>.<unit_name>.pathorstack.<name>.<nested_stack>.path. Only the top-levelstack.<name>.pathandunit.<name>.pathforms remain.stack.<name>.nameandunit.<name>.nameare gone too; both only ever echoed the label that the reference already had to spell out.Nested references required parsing every nested catalog up front and conflicted with the reserved
nameandpathattributes on each ref: a nested unit namednameorpathcould not be addressed.To depend on a generated unit inside a stack, compute the path as
${stack.<name>.path}/<unit-relative-path>directly. The layout under a stack's generated directory followsno_dot_terragrunt_stackon the parent stack and on each unit, so hand-computed paths must mirror that resolution.stack-dependencies:.terragrunt-stack-originno longer writtenTerragrunt no longer writes the
.terragrunt-stack-originfile when generating nested stacks. Setupdate_source_with_cas = trueon yourunitandstackblocks if you would like relative paths in your catalog to resolve correctly instead.Pull Requests
✨ Features
tfr://module registry URLs by @yhakbar in #6112🐛 Bug Fixes
cas.WithFSby @yhakbar in #6195terragrunt.stack.hcl, includingautoincludeby @yhakbar in #6166terraform.sourceURLs with//by @yhakbar in #6218//by @yhakbar in #6234--parallelismvalue is positive by @ccmtaylor in #6212📖 Documentation
🧹 Chores
fatih/structsdependency by @yhakbar in #6186go-homedirdirect dependency by @yhakbar in #6184go-errorsas a dependency by @yhakbar in #6182//path test for source with CAS by @yhakbar in #6239Configuration
📅 Schedule: (UTC)
🚦 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.