Read more

Terragrunt/terraform: fork/exec argument list too long

Stefan Langenmaier
October 11, 2022Software engineer at makandra GmbH

When terragrunt is relaying information to input variables it's happening via environment variables. Depending on the size of the content of the variable it might exceed your OS limits. This is independent of your shell.

Illustration web development

Do you need DevOps-experts?

Your development team has a full backlog? No time for infrastructure architecture? Our DevOps team is ready to support you!

  • We build reliable cloud solutions with Infrastructure as code
  • We are experts in security, Linux and databases
  • We support your dev team to perform
Read more Show archive.org snapshot

A possible workaround is to use a generated file to load the input instead of the env variable, e.g.

# WORKAROUND
# the variable my_huge_input cannot be loaded as part of the inputs
generate "dependencies" {
  path      = "dependencies.auto.tfvars"
  if_exists = "overwrite_terragrunt"
  contents = <<EOF
my_input     = ${jsonencode(dependency.my_huge_input)}
EOF
}

See the following issue for further discussion Show archive.org snapshot .

Posted by Stefan Langenmaier to makandra Operations (2022-10-11 12:07)