#!/bin/sh

. $(dirname $0)/adc.common-functions

# options settable in adc.common-functions are
#   ARE_YOU_SURE -- prompts "are you sure?"
#   USE_LOCK_UNLOCK -- allows delete only if repo is "unlock"ed
# As shipped, both options are set.  If you set both of them to "0", repos are
# just deleted blindly, with no confirmation

# helper ADCs: lock, unlock

# cd to repo base and make sure arg1 is a valid repo (also sets $repo)
valid_owned_repo $1

opt $USE_LOCK_UNLOCK && {
    if [ -f $repo.git/gl-rm-ok ]
    then
        :
    else
        die "$repo is locked! To 'rm' this repository, first 'unlock' it."
    fi
}

opt $ARE_YOU_SURE && {
    echo "Are you sure? (type 'yes' if you are)" >&2
    read s
    [ $s = "yes" ] || die aborting...
}

rm -rf $repo.git
echo "$repo is now GONE!"

cd $HOME
PROJECTS_LIST=$(perl -e 'do ".gitolite.rc"; print $PROJECTS_LIST')
export repo
perl -ni -e 'print unless /^\Q$ENV{repo}.git\E$/' $PROJECTS_LIST