File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -118,6 +118,11 @@ if [[ "${version_requested}" =~ ^min-required$ ]]; then
118118 min_required=" $( tfenv-min-required) " \
119119 || log ' error' ' tfenv-min-required failed' ;
120120
121+ if [ -z " ${min_required} " ]; then
122+ log ' debug' ' It was not possible to detect a minimum-required version. Do you have a required_version line present?' ;
123+ exit ;
124+ fi ;
125+
121126 log ' debug' " Minimum required version detected: ${min_required} " ;
122127 version_requested=" ${min_required} " ;
123128fi ;
Original file line number Diff line number Diff line change 8989
9090log debug " Resolving version with: tfenv-resolve-version ${requested_arg} " ;
9191declare resolved=" $( tfenv-resolve-version ${requested_arg} ) " ;
92+ [ -z " ${resolved} " ] && log ' error' " Failure to resolve version from ${requested_arg} " ;
93+
9294log debug " Resolved to: ${resolved} " ;
9395
9496declare version=" ${resolved%% \: * } " ;
@@ -111,7 +113,11 @@ if [ -n "${installed_version}" ]; then
111113else
112114 if [ " ${auto_install} " == ' true' ]; then
113115 log ' info' " No installed versions of terraform matched '${resolved} '. Trying to install a matching version since TFENV_AUTO_INSTALL=true" ;
114- tfenv-install " ${resolved} " || log ' error' ' Installing a matching version failed' ;
116+
117+ declare install_version=' ' ;
118+ [ " ${version} " == ' latest' ] && install_version=" ${version} :${regex} " || install_version=" ${version} " ;
119+
120+ tfenv-install " ${install_version} " || log ' error' ' Installing a matching version failed' ;
115121
116122 installed_version=" $( \f ind " ${TFENV_CONFIG_DIR} /versions/" -type d -exec basename {} \; \
117123 | tail -n +2 \
Original file line number Diff line number Diff line change @@ -196,14 +196,24 @@ if [ -f "${HOME}/.terraform-version.bup" ]; then
196196 mv " ${HOME} /.terraform-version.bup" " ${HOME} /.terraform-version" ;
197197fi ;
198198
199- log ' info' ' Use with no input and TFENV_AUTO_INSTALL: ' ;
199+ log ' info' ' ## Use Auto-Install Test 1/2: (No Input) ' ;
200200cleanup || log ' error' ' Cleanup failed?!' ;
201201
202202(
203203 tfenv use || exit 1;
204204 check_default_version " $( tfenv list-remote | grep -e " ^[0-9]\+\.[0-9]\+\.[0-9]\+$" | head -n 1) " || exit 1;
205- ) && log info ' ## Use (No Input) Test 1/1: succeeded' \
206- || error_and_proceed ' ## Use (No Input) Test 1/1: failed' ;
205+ ) && log info ' ## Use Auto-Install Test 1/2: (No Input) succeeded' \
206+ || error_and_proceed ' ## Use Auto-Install Test 1/2: (No Input) failed' ;
207+
208+ log ' info' ' ## Use Auto-Install Test 2/2: (Specific version)' ;
209+ cleanup || log ' error' ' Cleanup failed?!' ;
210+
211+ (
212+ tfenv use 1.0.1 || exit 1;
213+ check_default_version 1.0.1 || exit 1;
214+ ) && log info ' ## Use Auto-Install Test 2/2: (Specific version) succeeded' \
215+ || error_and_proceed ' ## Use Auto-Install Test 2/2: (Specific version) failed' ;
216+
207217
208218log ' info' ' Install invalid specific version' ;
209219cleanup || log ' error' ' Cleanup failed?!' ;
You can’t perform that action at this time.
0 commit comments