mirror of
https://github.com/wahyd4/gvm.git
synced 2026-08-09 04:46:19 +10:00
55 lines
1.1 KiB
Bash
Executable File
55 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
. "$GVM_ROOT/scripts/functions"
|
|
|
|
function show_usage() {
|
|
echo "Usage: gvm listall [options]"
|
|
echo " -a, --all List all tags."
|
|
echo " -h, --help Display this message."
|
|
}
|
|
|
|
function read_command_line() {
|
|
tag_filter="release"
|
|
for i in "$@"; do
|
|
case $i in
|
|
-a|--all)
|
|
tag_filter=""
|
|
;;
|
|
-h|--help*)
|
|
show_usage
|
|
exit 0
|
|
;;
|
|
*)
|
|
echo "Invalid option $i"
|
|
show_usage
|
|
exit 65 # Bad arguments
|
|
;;
|
|
esac
|
|
done
|
|
}
|
|
|
|
read_command_line "$@"
|
|
|
|
echo
|
|
display_message "gvm gos (available)"
|
|
echo
|
|
display_message "h=========="
|
|
go_repo_url=git@github.com:golang/go.git
|
|
versions=$(git ls-remote -t ${go_repo_url} | awk -F/ '{ print $NF }' | $SORT_PATH)
|
|
if [[ $? -ne 0 ]]; then
|
|
display_fatal "Failed to get version list from Github"
|
|
fi
|
|
display_message "~~~~~~~~~~~~~"
|
|
for version in $versions; do
|
|
if [[ "$tag_filter" == "release" ]]; then
|
|
if [[ "${version:0:7}" == "release" ]]; then
|
|
echo " $version"
|
|
elif [[ "${version:0:3}" == "go1" ]]; then
|
|
echo " $version"
|
|
fi
|
|
else
|
|
echo " $version"
|
|
fi
|
|
done
|
|
echo
|
|
|