1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
|
#!/bin/sh
# mkrelease.sh: Creates a release suitable for distfiles.atheme.org.
#
# Copyright (c) 2007 atheme.org
#
# Permission to use, copy, modify, and/or distribute this software for
# any purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
if [ "x$1" = "x" ]; then
echo "usage: $0 releasename [--automatic]"
exit
else
RELEASENAME="$1"
fi
if [ "x$2" = "x--automatic" ]; then
AUTOMATIC="yes"
fi
TIP=`hg tip --template "{rev}:{node|short}"`
WRKDIR=`pwd`
if [ -d $RELEASENAME ]; then
echo "Deleting previous release named $RELEASENAME."
rm -rf $WRKDIR/$RELEASENAME/
fi
echo "Making release named $RELEASENAME (tip $TIP)"
echo
echo "Building root: $RELEASENAME/"
hg archive $RELEASENAME
cd $RELEASENAME
sh autogen.sh
rm -rf autogen.sh autom4te.cache .hg_archival.txt .hgignore .hgtags
# Run application specific instructions here.
if [ -x "$WRKDIR/application.sh" ]; then
source $WRKDIR/application.sh
fi
cd ..
echo "Building $RELEASENAME.tgz from $RELEASENAME/"
tar zcf $RELEASENAME.tgz $RELEASENAME/
echo "Building $RELEASENAME.tbz2 from $RELEASENAME/"
tar jcf $RELEASENAME.tbz2 $RELEASENAME/
PUBLISH="yes"
ok="0"
if [ "x$AUTOMATIC" != "xyes" ]; then
echo
echo "Would you like to publish these releases now?"
while [ $ok -eq 0 ]; do
echo -n "[$PUBLISH] "
read INPUT
case $INPUT in
[Yy]*)
PUBLISH="yes"
ok=1
;;
[Nn]*)
PUBLISH="no"
ok=1
;;
esac
done
fi
if [ "x$PUBLISH" = "xyes" ]; then
scp $RELEASENAME.tgz distfiles.atheme.org:/var/www/distfiles.atheme.org/
fi
echo
echo "Done. If you have any bugs to report, report them against"
echo "the distfiles.atheme.org component at http://bugzilla.atheme.org"
echo "Thanks!"
echo
|