#!/usr/bin/env bash
# lists all available versions listed for a package in a site (http)
archive="$1" # archive url
pname="$2" # package name
file="$3" # file for writing debugging information
while (( $# > 0 )); do
flag="$1"
shift 1
case "$flag" in
--url=*)
archive="${flag#*=}"
;;
--pname=*)
pname="${flag#*=}"
;;
--file=*)
version="${flag#*=}"
;;
*)
echo "$0: unknown option ‘${flag}’"
exit 1
;;
esac
done
if [ -z "$archive" ]; then
echo "$scriptName: Missing archive url"
exit 1
fi
# print a debugging message
if [ -n "$file" ]; then
echo "# Listing versions for '$pname' at $archive" >> $file
fi
# list all major-minor versions from archive
tags1=$(curl -sS "$archive/")
tags1=$(echo "$tags1" | sed -rne 's,^.*,\1,p')
# print available versions
for tag in $tags1; do
tags2=$(curl -sS "$archive/$tag/")
tags2=$(echo "$tags2" | sed -rne "s,^.*,\\1,p")
echo "$tags2"
done