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
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 ->