38 lines
947 B
Plaintext
38 lines
947 B
Plaintext
|
#!/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
|