annotate scripts/makerelease.sh @ 1682:c6ad1843df46

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