empserver/src/scripts/tarball
2017-09-03 10:37:11 +02:00

50 lines
690 B
Bash
Executable file

#!/bin/sh -e
usage()
{
echo "Usage: $0 [-x TWEAK-SCRIPT ] NAME VERSION (FILE | -C DIR)..."
}
script=:
while getopts x: opt
do
case $opt in
x)
script="$OPTARG"
;;
*)
usage; exit 1
;;
esac
done
shift $((OPTIND - 1))
name="$1"
version="$2"
if shift 2
then :
else usage; exit 1
fi
nv=$name-$version
mkdir "$nv"
# arrange cleanup
trap 'rm -rf "$nv"' 0
dir=.
until [ $# = 0 ]; do
if [ "$1" = -C ]; then
dir="$2"
if shift 2; then continue; fi
echo "$0: -C requires an argument" >&2
exit 1
fi
mkdir -p `dirname "$nv/$1"`
ln "$dir/$1" "$nv/$1"
shift
done
$script $name $version
tar -czf "$nv".tar.gz --owner=0 --group=0 --mode=ug+w,a+rX "$nv"