Terragrunt
kind: terragrunt
Description
The Terragrunt crawler looks recursively for all Terragrunt files (*.hcl) containing a module definition from a specific root directory. Then for each of them, it tries to automate its update.
It currently support two types of sources:
- terraform/registry
- gittag
It will parsed the module source and infer the source type.
It will update the file using the hcl
target.
It supports the following module source definition and will update with prefixing accordingly
terraform { source = "tfr://someModule?version=1.2.3 } terraform { source = local.base_url } terraform { source = "tfr://${local.module}?version=${local.module_version}" } terraform { source = "tfr://someModule?version=${local.module_version}" } terraform { source = "tfr://${local.module}?version=1.2.3" } ---
Manifest
Parameters
Name | Type | Description | Required |
---|
Example
# updatecli.d/default.yaml
name: "Terraform autodiscovery using git scm"
scms:
default:
kind: git
spec:
url: https://github.com/updatecli-test/jenkins-infra-aws.git
branch: main
autodiscovery:
# scmid is applied to all crawlers
scmid: default
crawlers:
terraform:
# platforms to request package checksums for, defaults to:
platforms:
- linux_amd64
- linux_arm64
- darwin_amd64
- darwin_arm64
# To ignore specific path
#ignore:
# - path: <filepath relative to scm repository>
# - providers:
# # Ignoring provider updates for this provider
# registry.terraform.io/hashicorp/aws:
# # Ignore provider updates for this version
# registry.terraform.io/hashicorp/kubernetes: "1.x"
ignore:
# - path: <filepath relative to scm repository>
# - providers:
# # Ignoring provider updates for this provider
# registry.terraform.io/hashicorp/aws:
# # Ignore provider updates for this version
# registry.terraform.io/hashicorp/kubernetes: "1.x"