Allow more flexibility in module registry versioning

A possible solution could be allowing partial tags or tags with wildcards in the Spacelift Registry. These special tags could dynamically point to the latest corresponding full SemVer tag. Some approaches that could work:

  • Allow defining versions without the full SemVer format, like 1.0 (to allow any patch upgrade) or just 1 (to allow any minor upgrade)

  • Introduce wildcard-like versions, such as 1.x.x or 1.0.x, with a defined convention for the wildcard character.


Ultimately, Terragrunt is simply querying a URL like: https://app.spacelift.io/registry/modules/v1/account/module-name/provider/VERSION/download where VERSION is just a part of the path. Given that, this enhancement should be feasible.

This change would help working around Terragrunt’s strict module versioning and significantly reduce manual maintenance.

Workaround
N/A
Problem
Right now, when sourcing modules from Terragrunt (tfr://...?version=x.y.z), versions are strictly tied to full SemVer. This makes it difficult to use soft constraints like Terraform allows (e.g., ~>1.0), forcing to pin exact versions. As a result, every minor or patch upgrade requires a PR instead of simply triggering a run to pull the latest compatible version.

Please authenticate to join the conversation.

Upvoters
Status

❌ Rejected

Board

💡 Feature Requests

Tags

Terragrunt

Date

About 1 year ago

Subscribe to post

Get notified by email when there are changes.