Don't call back into asdf list golang (#93)

This commit is contained in:
Kenny Parnell 2022-12-16 23:43:41 -05:00 committed by GitHub
parent 1c2311264e
commit c38b6d3ed2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,5 +1,29 @@
#!/usr/bin/env bash
plugin_dir() {
local current_script_path=${BASH_SOURCE[0]}
cd "$(dirname "$(dirname "$current_script_path")")" || exit
pwd
}
install_dir() {
printf -v pdir "%s" "$(plugin_dir)"
printf -v plugin_name "%s" "$(basename "$pdir")"
printf "%s/installs/%s" "$(dirname "$(dirname "$pdir")")" "$plugin_name"
}
installed_versions() {
local plugin_installs_path
plugin_installs_path="$(install_dir)"
if [ -d "$plugin_installs_path" ]; then
for install in "${plugin_installs_path}"/*/; do
[[ -e "$install" ]] || break
basename "$install" | sed 's/^ref-/ref:/'
done
fi
}
get_legacy_version() {
current_file="$1"
basename=$(basename -- "$current_file")
@ -12,11 +36,20 @@ get_legacy_version() {
-e 's/go([0-9]+).*/\1/' |
head -1
)
else
elif [ -e "$current_file" ]; then
GOLANG_VERSION=$(cat "$current_file")
else
GOLANG_VERSION=""
fi
asdf list golang | sed -e 's/ //g' | grep "^$GOLANG_VERSION" | sort -V | tail -1
local installed
installed=$(installed_versions | sed -e 's/ //g' | grep "^$GOLANG_VERSION" | sort -V | tail -1)
if [ -z "$installed" ]; then
installed=$("$(plugin_dir)/bin/latest-stable" "$GOLANG_VERSION")
fi
echo "$installed"
}
get_legacy_version "$1"