Testing Terragrunt Tip and Test Builds
Pipelines can run an unreleased build of Terragrunt from your repository's .mise.toml. Use this to confirm a fix on Terragrunt's main branch works in your pipelines before it ships in a release, or to try a test build a Terragrunt maintainer has shared with you.
Tip builds come from commits on Terragrunt's main branch and have the version tip-<commit sha>. Test builds come from other branches, built on request by a maintainer, and have the version test-<commit sha>. See Install tip or test builds in the Terragrunt docs.
Tip and test builds may be deleted at any time, and Gruntwork does not test Pipelines against every build.
You are advised to avoid using them in production environments.
Requirements
Pipelines accepts tip and test builds starting with these workflow versions:
- GitHub:
pipelines-workflowsv4.29.0 - GitLab:
pipelines-workflowsv2.25.0
Earlier versions reject tip- and test- versions, and preflight fails its Terragrunt version check. See Updating Pipelines to upgrade.
Update .mise.toml
Install the build with mise's HTTP backend, and lock its checksums so mise checks every download.
From the root of your repository, run the following commands to pin the latest tip build. They look up its commit with the Terragrunt builds API, and use jq to read the response:
BUILD_TYPE="tip"
COMMIT_SHA="$(curl -sSfL --proto '=https' --tlsv1.2 https://builds.terragrunt.com/api/v1/tip/latest | jq -r .commit)"
BASE_URL="https://builds.terragrunt.com/${BUILD_TYPE}/${COMMIT_SHA}"
mise unuse terragrunt
mise use "http:terragrunt[url=${BASE_URL}/terragrunt_{{os(macos=\"darwin\")}}_{{arch(x64=\"amd64\")}}.tar.gz,checksum_url=${BASE_URL}/SHA256SUMS,rename_exe=terragrunt]@${BUILD_TYPE}-${COMMIT_SHA}"
mise lock --platform linux-x64,linux-arm64,macos-x64,macos-arm64
To pin a test build or a specific tip build, set BUILD_TYPE to test or tip and COMMIT_SHA to the build's full 40-character commit SHA. A maintainer gives you the SHA of a test build.
mise unuse terragruntremoves the release from.mise.toml.mise useadds the build to.mise.tomland installs it.mise lockrecords the checksum of each platform's archive inmise.lock, and mise fails the install if a download doesn't match.
Check the build:
terragrunt --version
The output should be terragrunt version tip-<commit sha> or terragrunt version test-<commit sha>.
Windows
The commands above lock the build for Linux and macOS. To also install it on Windows, run these in the same shell:
mise config set 'tools.http:terragrunt.platforms.windows-x64.url' "${BASE_URL}/terragrunt_windows_amd64.exe.tar.gz"
mise lock --platform windows-x64
Run Pipelines
Commit .mise.toml and mise.lock on a branch and open a pull request.
To go back to a release, remove the build and add the release again:
mise unuse http:terragrunt
mise use terragrunt@1.2.0
If your repository had no mise.lock before, delete it.