You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
1.0 KiB
43 lines
1.0 KiB
#!/bin/bash
|
|
|
|
REPO_TYPE=$1
|
|
REPO_NAME=$2
|
|
DESTINATION=${3:-.}
|
|
|
|
function usage {
|
|
local BASECMD=$(basename "$0")
|
|
echo 'usage: <REPO_TYPE> <REPO_NAME> [DESTINATION]'
|
|
echo 'example:'
|
|
echo -e '\t# REPO_TYPE=github'
|
|
echo -e "\t$BASECMD github Dolibarr/dolibarr\n"
|
|
echo -e '\t# REPO_TYPE=artcode'
|
|
echo -e "\t$BASECMD artcode pvincent/debian-gnome\n"
|
|
echo -e '\t# With destination'
|
|
echo -e "\t$BASECMD artcode pvincent/debian-gnome /tmp # folder"
|
|
echo -e "\t$BASECMD artcode pvincent/debian-gnome /tmp/release.tgz # file"
|
|
exit -1
|
|
}
|
|
|
|
function get_github {
|
|
local BASE="https://github.com"
|
|
local release=$( wget_semver $REPO_TYPE $REPO_NAME )
|
|
local url="$BASE/${REPO_NAME}/archive/refs/tags/${release}.tar.gz"
|
|
if [[ -d $DESTINATION ]]; then
|
|
DESTINATION="$DESTINATION/$(echo $REPO_NAME | cut -d '/' -f2 )-${release}.tgz"
|
|
fi
|
|
>&2 wget $url -O $DESTINATION
|
|
echo $DESTINATION
|
|
}
|
|
|
|
[[ $# -lt 2 ]] && usage
|
|
|
|
case $REPO_TYPE in
|
|
github )
|
|
get_github
|
|
;;
|
|
* )
|
|
echo "repository type <${REPO_TYPE}> not yet supported!" && exit 1
|
|
;;
|
|
esac
|
|
|
|
|