#!/usr/bin/env bash

# We want to catch any unexpected failure, and exit immediately
set -e

# Download helper for hg, to be called from the download wrapper script
#
# Call it as:
#   .../hg [-q] OUT_FILE REPO_URL CSET BASENAME
#
# Environment:
#   HG       : the hg command to call

verbose=
while getopts :q OPT; do
    case "${OPT}" in
    q)  verbose=-q;;
    \?) printf "unknown option '%s'\n" "${OPTARG}" >&2; exit 1;;
    esac
done
shift $((OPTIND-1))

output="${1}"
repo="${2}"
cset="${3}"
basename="${4}"

shift 4 # Get rid of our options

# Caller needs to single-quote its arguments to prevent them from
# being expanded a second time (in case there are spaces in them)
_hg() {
    eval ${HG} "${@}"
}

_hg clone ${verbose} "${@}" --noupdate "'${repo}'" "'${basename}'"

_hg archive ${verbose} --repository "'${basename}'" --type tgz \
            --prefix "'${basename}'" --rev "'${cset}'" \
            - >"${output}"
