Skip to content



Terramate supports different Variables and Metadata to help manage user- and Terramate-defined data.

Variable Namespaces

Terramate supports multiple variable namespaces. They can be available at build-time (when running code generation) or run-time (when orchestrating stacks and running commands).

  • The terramate namespace represents Terramate Metadata such as stack context information or repository context information.
  • The global namespace represents Global Variables defined with the globals block.
  • The let namespace represents context-based Lets Variables that can be used to compute local blocks available in the current code generation block only to not pollute the global namespace with temporary or intermediate variables.
  • The env namespace is only available at run-time and represents the commands environment variables exported by a shell.

The following sections explain the different types of Variables in Terramate.