Skip to content

Releases: gruntwork-io/terragrunt

v0.77.22

21 Apr 17:06
ca5aef0
Compare
Choose a tag to compare

🧪 Experiments Completed

The cli-redesign experiment is now complete

The cli-redesign experiment is now complete.

If you were previously using the flag --experiment cli-redesign to opt in to experimental functionality, you no longer have to do so. Note that if you are, you will simply get a warning that it is no longer necessary.

What's Changed

Full Changelog: v0.77.21...v0.77.22

v0.77.21

21 Apr 13:53
dfc745d
Compare
Choose a tag to compare

✨ New Features

Introduction of hcl commands

As part of the CLI Redesign experiment, the hcl commands have been introduced.

The hcl commands allow users to directly interact with HCL content independent of the underlying functionality they support.

The functionality of the hcl commands replace existing functionality that is soon to be deprecated:

  • hclfmt --> hcl fmt
  • hclvalidate --> hcl validate
  • validate-inputs --> hcl validate --inputs
  • validate-inputs --strict-validate --> hcl validate --inputs --strict

What's Changed

New Contributors

Full Changelog: v0.77.20...v0.77.21

v0.77.20

18 Apr 14:44
cde2242
Compare
Choose a tag to compare

What's Changed

  • build: Added build-no-proxy.yml workflow by @yhakbar in #4171
  • build: Added lint.yml and strict-lint.yml workflows for GitHub Actions by @yhakbar in #4172
  • build: Added codespell workflow by @yhakbar in #4173
  • build: Added markdownlint v2 to GitHub Actions workflows by @yhakbar in #4175
  • docs: Improved getting started guide by @yhakbar in #4174
  • build(deps): bump github.com/ProtonMail/go-crypto from 1.1.6 to 1.2.0 by @dependabot in #4161
  • build(deps): bump golang.org/x/term from 0.30.0 to 0.31.0 by @dependabot in #4159
  • build(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.78.2 to 1.79.2 by @dependabot in #4158

Full Changelog: v0.77.19...v0.77.20

v0.77.19

17 Apr 17:07
4e7601c
Compare
Choose a tag to compare

✨ New Features

OpenTelemetry traces are now integrated into find and list commands

find telemetry:
image

list telemetry:
image

What's Changed

Full Changelog: v0.77.18...v0.77.19

v0.77.18

17 Apr 14:37
023a660
Compare
Choose a tag to compare

✨ New Features

Support for HCL formatting with the render command

As part of the CLI Redesign experiment, the render command now supports HCL formatting for rendered configurations, which is the default output format.

Using the render command with HCL formatting allows users to get a quick, minimal evaluation of Terragrunt unit configurations with as much pre-processing done as possible.

For example, the following terragrunt.hcl file:

# terragrunt.hcl

locals {
  aws_region = "us-east-1"
}

inputs = {
  aws_region = local.aws_region
}

Renders to the following HCL:

$ terragrunt render
locals {
  aws_region = "us-east-1"
}
inputs = {
  aws_region = "us-east-1"
}

Using the render command with HCL formatting offers a way to resolve complex HCL function evaluation, include merging or string interpolation, etc. to achieve equivalent Terragrunt HCL configurations that are easier to reason about.

What's Changed

Full Changelog: v0.77.17...v0.77.18

v0.77.17

14 Apr 21:23
81577cf
Compare
Choose a tag to compare

✨ New Features

Introduction of the render command

As part of the CLI Redesign experiment, the render command has been introduced.

The render command allows users to easily render Terragrunt unit configurations with reduced complexity, making it easier to understand configurations at a glance.

For example, the following terragrunt.hcl file:

# terragrunt.hcl

locals {
  aws_region = "us-east-1"
}

inputs = {
  aws_region = local.aws_region
}

Renders to the following JSON:

$ terragrunt render --format json
{
  "locals": { "aws_region": "us-east-1" },
  "inputs": { "aws_region": "us-east-1" }
  // NOTE: other attributes are omitted for brevity
}

The introduction of the render command is part of the eventual deprecation of the existing render-json command, which will be deprecated by the end of the CLI Redesign. The render command is a higher level command, that offers the ability to write to stdout, in addition to writing to files, and will support HCL configurations in addition to JSON (coming soon).

To learn more about the render command, read the official documentation here.

What's Changed

Full Changelog: v0.77.16...v0.77.17

v0.77.16

14 Apr 19:01
1b40403
Compare
Choose a tag to compare

✨ New Features

Introduction of the backend migrate command

As part of the CLI Redesign experiment, the backend migrate command has been introduced.

The backend migrate command allows you to simply migrate state between different units (or renames of units) without manually running OpenTofu/Terraform state migration commands.

To learn more about the backend migrate command, read the official docs.

What's Changed

  • feat: Added support for migrating state between different backends by @levkohimins in #4154
  • feat: Enhanced error explainer to detect and report issues related to stack values by @denis256 in #4163
  • fix: Improved the deprecation message for experimental command flags by @levkohimins in #4146
  • fix: Prevent TF_CLI_CONFIG_FILE environment variable from being overwritten, except during init and providers commands by @levkohimins in #4155

Full Changelog: v0.77.15...v0.77.16

v0.77.15

14 Apr 14:46
99899a9
Compare
Choose a tag to compare

✨ New Features

Introduction of the dag graph command

As part of the CLI Redesign experiment, the dag graph command has been introduced.

dag

dag-help

dag-graph-help

What's Changed

Full Changelog: v0.77.14...v0.77.15

v0.77.14

11 Apr 18:49
31ba1fb
Compare
Choose a tag to compare

✨ New Features

Support for --exclude and --queue-construct-as in find and list

The find and list commands have been updated to leverage new capabilities involving greater understanding of the Terragrunt run queue.

Users can now leverage the --queue-construct-as (or just --as) flag in the find and list commands to discover configurations as if a particular Terragrunt command was being run (e.g. plan, destroy).

For example:

$ terragrunt find --queue-construct-as=plan
stacks/live/dev
stacks/live/prod
units/live/dev/vpc
units/live/prod/vpc
units/live/dev/db
units/live/prod/db
units/live/dev/ec2
units/live/prod/ec2
$ terragrunt find --as=destroy
stacks/live/dev
stacks/live/prod
units/live/dev/ec2
units/live/prod/ec2
units/live/dev/db
units/live/prod/db
units/live/dev/vpc
units/live/prod/vpc

The find and list commands will now construct the Terragrunt run queue as if a particular command was being run, potentially altering the position of elements in the run queue, based on their dependencies (dependencies before dependents for plans, applies, etc. and dependents before dependencies for destroys).

In addition, users can leverage the --exclude flag on the find command to get information on the exclude block included in results. The exclude block is also factored in to discovery results when the --queue-construct-as flag is passed, allowing users to dry-run behavior of the exclude block before performing any Terragrunt runs.

What's Changed

  • feat: Adding exclude support to list and find by @yhakbar in #4147

Full Changelog: v0.77.13...v0.77.14

v0.77.13

11 Apr 14:58
c8e3107
Compare
Choose a tag to compare

What's Changed

  • build(deps): bump google.golang.org/grpc from 1.71.0 to 1.71.1 by @dependabot in #4132
  • build(deps): bump golang.org/x/sys from 0.31.0 to 0.32.0 by @dependabot in #4133
  • build(deps): bump golang.org/x/oauth2 from 0.28.0 to 0.29.0 by @dependabot in #4131
  • build(deps): bump github.com/getsops/sops/v3 from 3.9.4 to 3.10.1 by @dependabot in #4130

Full Changelog: v0.77.12...v0.77.13