Skip to content
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

chore(deps): update dependency terragrunt to v0.71.1 #15

Merged
merged 1 commit into from
Dec 26, 2024

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Dec 25, 2024

This PR contains the following updates:

Package Update Change
terragrunt minor 0.54.20 -> 0.71.1

Release Notes

gruntwork-io/terragrunt (terragrunt)

v0.71.1

Compare Source

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.71.0...v0.71.1

v0.71.0

Compare Source

🔧 Fixes

Terragrunt stdout and stderr streams have been adjusted to more closely align with what users expect when using a tool orchestrating OpenTofu/Terraform.

For more information, read the following docs.

🛠️ Breaking Changes

While a bugfix, if you were relying on the incorrect behavior Terragrunt used, redirecting OpenTofu/Terraform stdout to stderr, you will experience a breaking change in this release.

To avoid having this be a breaking release, you can either use Terragrunt stdout instead of stderr for inspecting OpenTofu/Terraform stdout, or you can use stream redirection to reproduce the buggy behavior.

terragrunt plan 1>&2

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.70.4...v0.71.0

v0.70.4

Compare Source

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.70.3...v0.70.4

v0.70.3

Compare Source

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.70.2...v0.70.3

v0.70.2

Compare Source

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.70.1...v0.70.2

v0.70.1

Compare Source

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.70.0...v0.70.1

v0.70.0

Compare Source

✨ New Features

  • Terragrunt now supports a native Experiment Mode to try out the latest features in Terragrunt before they're fully stable. Over time, we'll be moving some opt-in functionality to this system, and we'll be introducing new features behind it to give users granularity in their use of experimental functionality in Terragrunt.

    As part of this new system, we'll also be documenting our experiments in much more detail so that you know exactly what they do, and what is required for them to reach full stability.

  • The catalog and scaffold commands now support configurability in the root configuration include used for their scaffolding.

    This allows users to use a root Terragrunt configuration named anything they like, and scaffold new units conveniently, pulling those configurations in with a simple CLI flag.

🛠️ Breaking Changes

The recent work introduced in #​3672 to support symlinks has been downgraded to an experiment. We merged in this feature believing it had enough testing to be supported at launch, but quite a bit of unexpected regression occurred as a consequence.

If you are still using this functionality, use the --experiment symlinks flag to re-enable it in your environments. For more information, you can read the documentation on Controlling Experiment Mode.

⚠️ Deprecations

This release also deprecates one of the longest lasting patterns of Terragrunt usage, the root terragrunt.hcl file.

To reiterate the note in the migration guide, this is not going to be a breaking change for a very long time, but we want to start encouraging users to adopt new patterns.

The practice of using terragrunt.hcl as the root of Terragrunt configurations has been harmful to new Terragrunt users and experienced users alike, and we want to have Terragrunt start communicating better practices.

You will have ample warning before this functionality is no longer supported.

📖 Documentation Updates

The Features section of the docs has been revamped significantly to improve the ability to understand and use Terragrunt features at a glance. Much more will be done in the near future to improve the experience of using Terragrunt documentation, and your feedback is always actively solicited!

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.69.13...v0.70.0

v0.69.13

Compare Source

What's Changed

New Contributors

Full Changelog: gruntwork-io/terragrunt@v0.69.12...v0.69.13

v0.69.12

Compare Source

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.69.11...v0.69.12

v0.69.11

Compare Source

What's Changed

New Contributors

Full Changelog: gruntwork-io/terragrunt@v0.69.10...v0.69.11

v0.69.10

Compare Source

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.69.9...v0.69.10

v0.69.9

Compare Source

Updated CLI args, config attributes and blocks

  • engine

What's Changed

  • chore: enhanced engine extraction - switched to using the internal library for archive extraction, resulting in resolving CVEs
  • build(dep): bump github.com/creack/pty from 1.1.17 to 1.1.24
  • build(dep): bump github.com/charmbracelet/bubbles from 0.16.1 to 0.20.0

Full Changelog: gruntwork-io/terragrunt@v0.69.8...v0.69.9

v0.69.8

Compare Source

Updated CLI args, config attributes and blocks

  • errors

What's Changed

  • feat: Enhanced support for handling negative error patterns in the error block.
  • fix: Resolved broken links in the documentation.
  • chore: Updated documentation to clarify the priority of error evaluation within the error block.

Full Changelog: gruntwork-io/terragrunt@v0.69.7...v0.69.8

v0.69.7

Compare Source

New built-in function

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.69.6...v0.69.7

v0.69.6

Compare Source

Updated CLI args, config attributes and blocks

  • errors

New Feature: errors configuration block

This release introduces an improved configuration block for managing errors, enhancing the flexibility of retry and ignore mechanisms. These new features provide fine-grained control over error handling, ensuring a smoother and more robust execution flow.

Example
errors {

### Retry block for transient errors
    retry "retry_network" {
        retryable_errors = [".*Error: network timeout.*"]
        max_attempts = 3
        sleep_interval_sec = 5
    }

### Ignore block for non-critical errors
    ignore "ignore_warnings" {
        ignorable_errors = [
            ".*Warning: non-critical issue.*"
        ]
        message = "Ignoring non-critical warnings"
    }
}
Demo

Ignore error:

ignore-error

Retry error:

retry-on-error

What's Changed

  • Added errors block

Related links

Full Changelog: gruntwork-io/terragrunt@v0.69.5...v0.69.6

v0.69.5

Compare Source

Updated CLI args, config attributes and blocks

New Flags
  • --terragrunt-hclfmt-exclude-dir: Exclude directories from HCL formatting when using the hclfmt command. For more, see the docs.

What's Changed

New Contributors

Full Changelog: gruntwork-io/terragrunt@v0.69.3...v0.69.5

v0.69.3

Compare Source

What's Changed

  • Fixing an issue when error_hook processing only takes stderr into account and ignores stdout TF output.
  • Displaying stack trace only at log level trace, e.g. --terragrunt-log-level trace.

Full Changelog: gruntwork-io/terragrunt@v0.69.2...v0.69.3

v0.69.2

Compare Source

Updated CLI args, config attributes and blocks

Breaking Changes

  • OpenTofu/Terraform stdout and stderr is wrapped in JSON by default with --terragurnt-log-format json flag. In other words, the previous behavior with the --terragrunt-json-log --terragrunt-tf-logs-to-json flags is now equivalent to --terragrunt-log-format json and the previous behavior with the --terragrunt-json-log is now equivalent to --terragrunt-log-format json --terragrunt-forward-tf-stdout.
  • Renaming log keys in --terragurnt-log-format json and --terragurnt-log-format key-value formats:
    • tfpath -> tf-path
    • workingDir -> working-dir
    • executedCommandArgs -> tf-command-args

What's Changed

New Contributors

Full Changelog: gruntwork-io/terragrunt@v0.69.1...v0.69.2

v0.69.1

Compare Source

New Feature

Using the OpenTofu/Terraform -detailed-exitcode flag with the run-all command results in an aggregate exit code being returned, rather than the exit code of any particular unit.

The algorithm for determining the aggregate exit code is as follows:

If any unit throws a 1, Terragrunt will throw a 1.
If any unit throws a 2, but nothing throws a 1, Terragrunt will throw a 2.
If nothing throws a non-zero, Terragrunt will throw a 0.

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.69.0...v0.69.1

v0.69.0

Compare Source

TFLint update

The internal version of TFLint has been updated from v0.47.0 to v0.50.3.

Given that this might result in breakage for users with tflint hooks, this is being released as a new minor release.

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.68.17...v0.69.0

v0.68.17

Compare Source

Updated CLI args, config attributes and blocks

  • terraform

What's Changed

  • Introduced support for detecting and handling symlinked modules, ensuring seamless module discovery and improved usability.
  • Quick start documentation update.
  • Improved documentation for feature and exclude.

Related links

Full Changelog: gruntwork-io/terragrunt@v0.68.16...v0.68.17

v0.68.16

Compare Source

Updated CLI args, config attributes and blocks

  • exclude
  • feature

New Feature: exclude configuration block

The exclude configuration block allows for dynamic exclusion of units from the run queue, similar to the now deprecated skip attribute. The exclude configuration block allows for more control over exactly how units are excluded from the run queue, and integrates very well with the feature block introduced in v0.68.9.

For more information, read the docs.

Example
### Exclude configurations allowing for dynamically determining when and how to exclude execution of nodes in the Terragrunt graph
exclude {
    if = feature.feature_name.value # Boolean expression that determines if the node should be excluded.
    actions = ["all"] # Actions to exclude when active. Other options might be ["plan", "apply", "all_except_output"], etc
    exclude_dependencies = feature.feature_name.value # Exclude dependencies of the node as well
}
Demo

tg-flags-exclude

What's Changed

  • feat: Introduced a new exclude block, enabling users to define more advanced and flexible criteria for excluding specific units, enhancing customization and control over unit selection processes.
  • fix: Fixed handling of empty feature blocks
  • fix: Fix spelling of RenderJSONithMetadata as RenderJSONWithMetadata

Related links

v0.68.15

Compare Source

Updated CLI args, config attributes and blocks

  • --terragrunt-log-format [ bare | pretty | json | key-value ]
  • --terragrunt-log-custom-format "%time %level %prefix %msg"

Feature Description

Using the --terragrunt-log-custom-format <format> flag you can customize the Terragrunt logs. Make sure to read Custom Log Format for syntax details.

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.68.14...v0.68.15

v0.68.14

Compare Source

Updated CLI args, config attributes and blocks

  • terragrunt-queue-include-units-reading
  • terragrunt-auth-provider-cmd

terragrunt-queue-include-units-reading Updates

The terragrunt-queue-include-units-reading flag is now results in a super set of functionality provided by the terragrunt-modules-that-include flag.

Using either will include all units that include particular Terragrunt configurations, while the terragrunt-queue-include-units-reading will also add in files that are read by HCL functions.

For more information (including limitations of the flag), read the docs.

terragrunt-auth-provider-cmd Updates

The terragrunt-auth-provider-cmd flag is now capable of supporting AWS role assumptions in addition to supporting the setting of explicit AWS credentials, and generic environment variables.

This allows users to configure Terragrunt to dynamically assume different AWS roles at runtime, depending on the context of the unit.

This support includes support for role assumption using the AssumeRoleWithWebIdentity API, which allows for dynamic assumption of OIDC roles in CI platforms like GitHub Actions, GitLab CI/CD and CircleCI.

For more information, read the docs.

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.68.13...v0.68.14

v0.68.13

Compare Source

Updated CLI args, config attributes and blocks

  • terragrunt-queue-include-units-reading
  • mark_as_read

terragrunt-queue-include-units-reading Feature Description

Drive inclusion into the Terragrunt run queue using the name of a file read via an HCL function. This can used to do things like drive inclusion into the run queue when one terragrunt.hcl file reads another via functions like read_terragrunt_config.

⚠️ Limitation in new flag

As described at the bottom of terragrunt-queue-include-units-reading docs, due to the order in which HCL configurations are parsed in Terragrunt, functions reading files within HCL must do so within the locals block to result in changes to inclusion into the run queue.

This is a limitation that the maintainers will actively look to address, but will require substantial rework in HCL parsing to remove correctly.

Supported HCL Functions
  • read_terragrunt_config
  • sops_decrypt_file
  • read_tfvars_file
  • mark_as_read [new]
Relevant RFC

https://github.com/gruntwork-io/terragrunt/issues/3418

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.68.12...v0.68.13

v0.68.12

Compare Source

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.68.10...v0.68.12

v0.68.10

Compare Source

Updated CLI args, config attributes and blocks

  • sops_decrypt_file

What's Changed

  • Enhanced error reporting to provide more detailed information on the root cause of HCL parsing issues.

Related links

v0.68.9

Compare Source

Updated CLI args, config attributes and blocks

  • --feature
  • feature
  • TERRAGRUNT_FEATURE

What's Changed

  • Introduced a new HCL block and additional CLI options to enable feature flag management
  • Updated otlptracegrpc dependency from 1.23.0 to 1.31.0

Related links

v0.68.8

Compare Source

What's Changed

New Contributors

Full Changelog: gruntwork-io/terragrunt@v0.68.7...v0.68.8

v0.68.7

Compare Source

Updated CLI args, config attributes and blocks
  • --terragrunt-provider-cache
What's Changed
  • Improved offline error detection in the provider cache to handle air-gapped environments.
Related links

v0.68.6

Compare Source

Updated CLI args, config attributes and blocks

  • --terragrunt-out-dir
  • --terragrunt-json-out-dir

What's Changed

  • Updated --terragrunt-out-dir / --terragrunt-json-out-dir to handle relative paths.

Related links

v0.68.5

Compare Source

Updated CLI args, config attributes and blocks

  • dependency

What's Changed

  • Added strict flag for improved performance in dependency processing
    You can now enhance performance by setting the environment variable:
    TERRAGRUNT_STRICT_CONTROL="skip-dependencies-inputs"
    This will skip input processing for dependencies, leading to faster execution times when running Terragrunt.
  • Improved CI/CD pipeline to build without Go proxy and detect checksum changes.
  • Enhanced error messages for invalid strict control flags.
  • Updated dependencies for better performance and stability.
  • Refined scaffold documentation.
  • Fixed panic issue in Sops decryption.
  • Corrected handling of pseudo-tty commands.

Related links

Full Changelog: gruntwork-io/terragrunt@v0.68.4...v0.68.5

v0.68.4

Compare Source

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.68.3...v0.68.4

v0.68.3

Compare Source

New Features

This release introduces the availability of Strict Mode, a new pattern that is going to be used for deprecation of functionality going forward in Terragrunt.

Starting with this release, any deprecated functionality will be deprecated using what are called Strict Controls. These controls will allow you to opt-in to having any deprecated functionality break immediately. This mechanism is being introduced to provide a way for users to future proof their codebase, and know that they can safely upgrade to new versions of Terragrunt.

This will be especially important to address the changes listed in #​3445.

To learn more, click here.

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.68.2...v0.68.3

v0.68.2

Compare Source

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.68.1...v0.68.2

v0.68.1

Compare Source

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.68.0...v0.68.1

v0.68.0

Compare Source

New Behavior

This release includes multiple behavioral changes including the following:

  • The skip attribute is now merged in from included files.
  • A secondary init is no longer marked as required after an explicit init in a clean directory.
  • The usage of go-getter in the scaffold command was upgraded to leverage v2.

What's Changed

New Contributors

Full Changelog: gruntwork-io/terragrunt@v0.67.16...v0.68.0

v0.67.16

Compare Source

Updated CLI args, config attributes and blocks

  • console

What's Changed

  • Fixed issue with console redirection input handling.

Related links

v0.67.15

Compare Source

What's Changed

  • Added support for Terragrunt log-level propagation to the Terragrunt Engine.

Related links

v0.67.14

Compare Source

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.67.13...v0.67.14

v0.67.13

Compare Source

What's Changed

  • Updated Go version used during builds to 1.23

Related links

v0.67.12

Compare Source

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.67.11...v0.67.12

v0.67.11

Compare Source

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.67.10...v0.67.11

v0.67.10

Compare Source

Updated CLI args, config attributes and blocks

  • terraform

What's Changed

  • Improved process error handling to provide detailed output for caught errors.

Related links

v0.67.9

Compare Source

Updated CLI args, config attributes and blocks

  • catalog

What's Changed

  • feat: Adding codespell to Automatically Check Spelling.
  • feat: Adding issue templates.
  • bug: Fixing repository update for catalog command.

Related links

Full Changelog: gruntwork-io/terragrunt@v0.67.8...v0.67.9

v0.67.8

Compare Source

What's Changed

  • Adding user-friendly errors for invalid envs/flags.

Related links

Full Changelog: gruntwork-io/terragrunt@v0.67.7...v0.67.8

v0.67.7

Compare Source

Updated CLI args, config attributes and blocks

  • engine

What's Changed

  • Added support for downloading the latest engine release from GitHub sources.

Related links

v0.67.6

Compare Source

What's Changed

  • Allow pre-release versions to pass version constraints.
  • Fixing output STDOUT logs to stdout. Without the --terragrunt-forward-tf-stdout flag, STDOUT level log entries were sent to stdout. They mixed with the JSON output and could cause parsing issues in the user's workflow.

Related links

Full Changelog: gruntwork-io/terragrunt@v0.67.5...v0.67.6

v0.67.5

Compare Source

Updated CLI args, config attributes and blocks

  • --terragrunt-log-show-abs-paths
  • --terragrunt-log-disable

What's Changed

  • Fixing various logging issues.
  • Removing panic, fatal log levels.
  • Adding stderr, stdout log levels to control Terraform/OpenTofu output in the Terragrunt log.
  • Adding --terragrunt-log-show-abs-paths flag to show absolute paths in logs.
  • Adding --terragrunt-log-disable flag to disable logging.
  • Adding preserved label exemption to stale check.

Related links

Full Changelog: gruntwork-io/terragrunt@v0.67.4...v0.67.5

v0.67.4

Compare Source

Updated CLI args, config attributes and blocks

  • terraform

Description

  • feat: Added TERRAGRUNT_TEMP_QUOTE_NULL environment variable to change the handling of null values.

TERRAGRUNT_TEMP_QUOTE_NULL

Setting the value of this undocumented feature flag to 1 allows users to temporarily revert the breaking change in release v0.50.0, preventing the sending of string "null" as the value of an input to OpenTofu/Terraform instead of not set an input at all.

The flag is being introduced into the codebase for a temporary duration to support Enterprise customers that have asked for this as a stop gap while they update their codebase to no longer need it.

Terragrunt will not support this flag in the future. Do not rely on it.

We will be coordinating closely with Enterprise customers to determine when they no longer need it supported. At that time, removal of the feature flag will be scheduled, then removed.

Related links

v0.67.3

Compare Source

What's Changed

Full Changelog: gruntwork-io/terragrunt@v0.67.2...v0.67.3

v0.67.2

Compare Source

What's Changed

  • chore: Tests simplification by @​denis256 in [https://github.com/gruntwork-io/terragrunt/pull/

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/terragrunt-0.x branch 5 times, most recently from 6bc867c to 1759166 Compare December 26, 2024 03:45
@renovate renovate bot force-pushed the renovate/terragrunt-0.x branch from 1759166 to 8facca7 Compare December 26, 2024 07:55
@renovate renovate bot merged commit 713bf09 into main Dec 26, 2024
1 check passed
@renovate renovate bot deleted the renovate/terragrunt-0.x branch December 26, 2024 09:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants