Terragrunt is a thin wrapper for Terraform that provides extra tools for working with multiple Terraform modules.
MIT License
Published by brikis98 about 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/563: You can now tell Terragrunt to exclude specific subdirectories when running the xxx-all
commands (e.g., apply-all
) by using the --terragrunt-exclude-dir
flag. This flag supports wildcard expressions and may be specified multiple times.
Published by brikis98 about 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/569: Terragrunt will now properly respect the shared_credentials_file
config for S3 backends, using it when creating S3 buckets and DynamoDB tables.
Published by brikis98 about 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/567: Add support for force_path_style
in the S3 config. Add support for skipping S3 bucket versioning via the skip_bucket_versioning
config.
Published by brikis98 about 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/553: You can now set environment variables in an extra_arguments
by specifying key value pairs in the env_vars
parameter.
Published by brikis98 about 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/540: There are now two "init" commands you can use in hooks: init-from-module
, which only executes when downloading remote Terraform configurations based on the source
parameter, and init
, which executes for all other init
invocations (e.g,. to configure backends, download providers, download modules).
Published by brikis98 about 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/542: When Terragrunt calls terraform init -from-module=xxx
to download the code for xxx
, it now sets the -get=false
, -get-plugins=false
, and -backend=false
params. These will all be handled in a later call to init
instead. This should improve iteration speed when calling Terragrunt commands.
Published by brikis98 about 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/535: You can now override the Terragrunt download dir using the TERRAGRUNT_DOWNLOAD
environment variable.
Published by brikis98 about 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/525: Add prevent_destroy
flag, which you can use in your Terragrunt configuration to protect a module from anyone running terragrunt destroy
or terragrunt destroy-all
.
Published by brikis98 over 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/523: Fix a bug where Terragrunt would hit an error trying to download Terraform configurations from source
URLs pointing to the root of a repo.
Published by brikis98 over 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/519: Properly exclude modules in xxx-all
commands that show up in .terragrunt-cache
, a custom download folder specified via --terragrunt-download-dir
, or in nested subfolders of either of these.
Published by brikis98 over 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/518: Make sure the xxx-all
commands (e.g., apply-all
) don't accidentally try to run Terragrunt in a .terragrunt-cache
directory.
Published by brikis98 over 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/516:
BACKWARDS INCOMPATIBLE CHANGES
Terragrunt now downloads remote configurations to the .terragrunt-cache
folder in the working directory instead of into a temp folder. This makes it easier to understand what Terragrunt is doing, debug issues, and recover state files if something went wrong (e.g., lost Internet connectivity). You can use the new --terragrunt-download-dir
option to override the download dir.
Terragrunt now checks if, after downloading remote configurations, it ended up with no Terraform files, and reports an error accordingly.
When running terraform init
to download remote Terraform configurations, Terragrunt now passes the -get=false
, -backend=false
, and -get-plugins=false
options, as all of these concerns are handled separately from the download. This should speed up local iteration.
Published by brikis98 over 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/515: Fix the Terragrunt cache dir on Windows to be in the $HOME
dir rather than temp.
Published by brikis98 over 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/506: Fix potential nil
pointer dereference introduced in v0.15.1.
Published by brikis98 over 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/502: Fix the NeedsInit
method so if you specify s3_bucket_tags
or dynamodb_table_tags
, Terragrunt doesn't try to re-run init
every time.
Published by brikis98 over 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/497: If you run one of the xxx-all
commands (e.g, apply-all
) in a subfolder /foo
, and the modules in /foo
have dependencies outside of /foo
, Terragrunt will prompt you whether the same commands should be executed in those external dependencies too. Terragrunt used to prompt whether those dependencies should be skipped, so entering "yes" meant they should be skipped, which is unintuitive. Now Terragrunt prompts whether the same command should apply to those dependencies, and entering "yes" means those dependencies will be modified as well.
https://github.com/gruntwork-io/terragrunt/pull/500: Fix how Terragrunt detects and handles "S3 bucket creation already in progress" errors.
Published by brikis98 over 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/488: If you are using the S3 backend with DynamoDB for locking, and the S3 bucket or DynamoDB table doesn't exist, Terragrunt will now not only automatically create them for you, but can also optionally apply tags to them via the s3_bucket_tags
and dynamodb_table_tags
parameters.
Published by brikis98 over 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/473: Terragrunt will now properly show help text for Terraform commands (e.g., terragrunt plan --help
).
Published by brikis98 over 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/468: Improve the way Terragrunt parses source
URLs so it should be able to handle both URLs with a //
to indicate a subfolder, and URLs without a //
, which means to use the root.
Published by brikis98 over 6 years ago
https://github.com/gruntwork-io/terragrunt/pull/469: Terragrunt will now merge hooks between parent and child configs.