Skip to content

latest-allowed installs absolute latest (beta), not honoring required version #375

@dalmadebreceni

Description

@dalmadebreceni

Scans terraform files for required version, finds it. Then ignores it, switches to "version=latest" instead of latest of required (major) version.
tfenv/libexec/tfenv-install latest-allowed ->

[...]
+ version_requested=latest-allowed
+ [[ -n latest-allowed ]]
+ log debug 'Version Requested: latest-allowed'
+ '[' debug '!=' debug ']'
+ [[ latest-allowed =~ ^v.*$ ]]
+ [[ latest-allowed =~ ^min-required$ ]]
+ [[ latest-allowed =~ ^latest-allowed$ ]]
+ log debug 'Detecting latest allowable version...'
[...]
++ grep -h required_version [...]
+ version_spec='~> 1.2'
++ echo '~> 1.2'
++ sed -E 's/[^0-9.]+//'
+ version_num=1.2
+ log debug 'Using 1.2 from version spec: ~> 1.2'
+ '[' debug '!=' debug ']'
+ case "${version_spec}" in
++ echo 1.2
++ rev
++ cut -d. -f2-
++ rev
+ version_without_rightmost=1
+ version_requested='latest:^1'
+ log debug 'Determined the requested version to be: latest:^1'
+ '[' debug '!=' debug ']'
+ [[ latest:^1 =~ ^latest:.*$ ]]
+ version=latest
+ regex='^1'
+ log debug 'Version uses latest keyword with regex: ^1'
+ '[' debug '!=' debug ']'
+ echo 'latest:^1'
Terraform v1.4.0-alpha20221207 is already installed

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions