v1.0.0-rc3 #5657
yhakbar
announced in
Pre-release Feedback
v1.0.0-rc3
#5657
Replies: 1 comment
-
|
Just test-drove v1.0.0-rc3 on my Windows DevBox: No major issues just two questions/remarks:
generate "backend_local" {
path = "backend.tf"
if_exists = "overwrite_terragrunt"
contents = <<-EOF
terraform {
backend "local" {
# replace here is for v1.0.0 compatibility (on Windows, double quotes are needed by terraform)
path = "${replace(get_terragrunt_dir(), "\\", "\\\\")}/terraform.tfstate"
}
}
EOF
}
However, unfortunately even RC3 maintains the bug that started with v0.99.4 that breaks our use-case on specific, layered |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
🎉 v1.0.0 Release Candidate
This is the third, and final release candidate for Terragrunt v1.0.
This release introduces bug fixes, documentation updates, some final breaking changes, and some internal housekeeping since RC2. With the release of 1.0 in March, you can expect many stability guarantees from Terragrunt, which are documented here. You have roughly 2-3 weeks to influence the final 1.0 release, so make sure you try this release candidate out and share your feedback. If you have tried this release, make sure to share your feedback with an emoji or a comment on the associated GitHub Discussion.
You can learn more about the release candidate process in The Road to 1.0: Release Schedule blog post.
🛠️ Breaking Changes
Windows compatibility in file paths improved
All HCL functions now return operating system native file paths without forward slash normalization.
get_terragrunt_dir()get_original_terragrunt_dir()get_parent_terragrunt_dir()get_path_from_repo_root()get_path_to_repo_root()find_in_parent_folders()path_relative_to_include()path_relative_from_include()If you and your team do not work in Windows environments, you are unlikely to see any change as a consequence of this. If you do use Terragrunt in a Windows environment, Terragrunt will now return appropriate Windows file paths, with backslashes as file path separators instead of Unix-like forward slashes.
If you need to normalize paths, you can use the
replacefunction to achieve this.e.g.
📖 Documentation Updates
New Home for the Terragrunt website!
The Terragrunt website is now hosted at https://terragrunt.com and https://docs.terragrunt.com for marketing and documentation purposes, respectively.
Existing links to https://terragrunt.gruntwork.io should seamlessly redirect to the new domain that hosts the content for that URI.
🐛 Bug Fixes
Improved Error messages for undefined flags
Detection has been added for scenarios when a user is using a flag that might be meant to be passed to OpenTofu/Terraform in the
runcommand, and suggests using the--argument to pass it through.As an example:
Improved log messages for hooks with errors
Hooks encountering errors will now return errors that better communicate whether an error was caused by failure to execute an external process or successfully running an external process, but receiving a non-zero exit code.
e.g.
vs
More accurate matching of retryable errors
Fixes a bug where retries were triggered when an expected error is matched against non-stderr output from external process errors.
Duplicate error reporting fixed
Fixes a bug where duplicate errors were reported when running units through the worker pool subsystem.
Interaction between
--working-dirand-detailed-exitcodefixedFixes a bug where the wrong cache key was used for storing exit codes for OpenTofu/Terraform runs in units when the
--working-dirflag was also used.Variable sanitization via escaping added
Escaping added for interpolation expressions (e.g.
${foo}that are unlikely to be desired by users).Removing usage of
filepath.Absand reducing usage offilepath.ToSlashUsage of the Golang
filepath.Absandfilepath.ToSlashstandard library functions significantly reduced. Overly broad application of these functions to file paths caused subtle operating system compatibility issues and incompatibility with the--working-dirflag.The codebase has been updated to only use
filepath.Absearly on in initialization of the CLI prior to setting the value of--working-dir(after which, working dir is considered the source of truth for file path canonicalization) and tests. The codebase has been updated to usefilepath.ToSlashonly where unix-style forward slash normalization is a requirement (e.g. when used in file path globs).Handling of backend init when
disable_init=trueFixes a bug where
disable_init = trueaffected behavior beyond Terragrunt’s bootstrap operations.disable_initnow correctly limits its scope to Terragrunt bootstrap steps only.Fix detection of offline usage in Provider Cache Server
A bug in the detection of offline usage in the Provider Cache Server resulted in attempts to reach the default provider registry for OpenTofu/Terraform to trigger errors even when using the Provider Cache Server to proxy requests to a network or filesystem mirror.
This has been fixed. When the default provider registry isn’t available for OpenTofu/Terraform for any reason, the Provider Cache Server will use the provided network/filesystem mirror instead without attempting to use the discovery endpoint. This will help users in air-gapped environments using the Provider Cache Server.
Provider Cache Server used for fetching outputs from dependencies
The Provider Cache Server is now used when fetching outputs from dependencies, improving performance of output resolution for users using the provider cache server.
Relative paths in reading files fixed
A bug in the logic for incorporating includes as absolute paths in tracked “read” files has been fixed.
Ambiguous unit/stack components now throw errors
Previously, Terragrunt would silently engage in undefined behavior when both a
terragrunt.hclandterragrunt.stack.hclfile existed in the same directory.With this release, Terragrunt will start to throw warnings and prevent such usage. Users will have to ensure that only one of a unit (
terragrunt.hcl) or stack configuration (terragrunt.stack.hcl) exist in a unit or stack directory, respectively.🧹 Chores
Refactoring to move
filterparsing higherRefactored parsing logic for the
--filterflag to allow filter parsing to happen much earlier, improving safety and reliability.Added testing to verify resolution of #3080
Added testing to verify incidental resolution of #3080.
What's Changed
detailed-exitcodewhen used in combination with-working-dirby @yhakbar in fix: Fixing-detailed-exitcodewhen used in combination with--working-dir#5590filepath.Absin production code and reducing usage offilepath.ToSlashby @yhakbar in fix: Removing usage offilepath.Absin production code and reducing usage offilepath.ToSlash#5597-queue-strict-includedeprecation in strict controls by @yhakbar in docs: Documenting--queue-strict-includedeprecation in strict controls #5581docs.terragrunt.comby @yhakbar in Setting up migration todocs.terragrunt.com#5514/contact-tgsby @yhakbar in fix: Fixing redirect for/contact-tgs#5636docs-starlighttodocsby @yhakbar in docs: Movingdocs-starlighttodocs#5635llllint incrementally by @yhakbar in chore: Addingllllint incrementally #5582optsinconfig- Part Two by @yhakbar in chore: Reducing dependency onoptsinconfig- Part Two #5563optsinconfig- Part Three by @yhakbar in chore: Reducing dependency onoptsinconfig- Part Three #5569optsinconfig- Part Four by @yhakbar in chore: Reducing dependency onoptsinconfig- Part Four #5573optionsfromtfby @yhakbar in chore: Removing imports ofoptionsfromtf#5583optionsfromawshelperby @yhakbar in chore: Removingoptionsfromawshelper#5587optionsfromrunnerandremotestateby @yhakbar in chore: Removingoptionsfromrunnerandremotestate#5589optsby @yhakbar in chore: Moving filters toopts#5591filepath.Absin production code and reducing usage offilepath.ToSlash#5597 by @yhakbar in chore: Addressing review feedback from #5597 #5604optionsfromrunnerandremotestate#5589 feedback by @yhakbar in chore: Addressing #5589 feedback #5633New Contributors
Full Changelog: v1.0.0-rc2...v1.0.0-rc3
This discussion was created from the release v1.0.0-rc3.
Beta Was this translation helpful? Give feedback.
All reactions