sincecutoff.com
← all changes

terragrunt CAS stack components accept local filesystem sources

Introduced 2026-05-07 · score 0.95

HOW TO USE IT

When iterating on a local catalog with CAS-backed stack generation, set the consumer stack’s `source` to the local catalog subdirectory and run `terragrunt stack generate`; keep `update_source_with_cas = true` in the catalog’s nested source blocks. The local catalog is copied to a temporary directory for rewriting, leaving the original untouched.

stack "service" { source = "../catalog//stacks/service" path = "service" } terragrunt stack generate
unit "service" { source = "../..//units/my-service" update_source_with_cas = true path = "service" }

WHY THIS HELPS

Iterate on a stack catalog in a local checkout before tagging a release.

BEFORE THIS CHANGE

Use a remote Git URL as the `source` for CAS-backed stack generation.

REQUIREMENTS AND LIMITATIONS

  • Version: v1.0.4
  • stack.<name>.source (required): Catalog source; accepts a local filesystem path, including a `//` subdirectory suffix.
  • stack.<name>.path (required): Generated path for the component.
  • unit.<name>.source (required): Relative path to the component source in the catalog.
  • unit.<name>.update_source_with_cas: Set to `true` to rewrite relative source paths to CAS references; requires CAS enabled. Must be set in catalog files, not by consumers.
  • Prerequisite: Do not set `--no-cas` when using `update_source_with_cas = true`.
  • Prerequisite: Sources using `update_source_with_cas` must be relative paths within the same repository.
  • This applies to CAS-backed stack generation.
  • The local source path is a directory copied to a temporary directory; the original directory is left untouched.

FIRST-PARTY EVIDENCE

Check the installed version and the source before using it. Entry JSON

Report a problem with this card