12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- #!/bin/sh
-
- # cron doesn't seem to like doing this iself...
- . /etc/profile
-
- # Path to WWW Directory
- WWWDIR="/home/dmdirc/www"
- # Path to trunk
- MYDIR="/home/dmdirc/google"
- # Path to ant binary
- ANT="/usr/bin/ant"
- # Path to svn binary
- SVN="/usr/bin/svn"
- # Path to zip binary
- ZIP="/usr/bin/zip"
-
- cd ${MYDIR}
-
- /bin/sh $MYDIR/oblong.sh "Nightly Build" "Build Started"
- rm -Rf $MYDIR/dist
- rm -Rf $MYDIR/build
-
- cd $MYDIR/
- $SVN update
- SVNREV=`$SVN info | grep Revision`
- SVNREV=${SVNREV##*: }
-
- # Substitute the version string
- awk '{gsub(/String VERSION = "SVN"/,"String VERSION = \"Nightly - SVN Rev: '${SVNREV}'\"");print}' ${MYDIR}/src/com/dmdirc/Main.java > ${MYDIR}/src/com/dmdirc/Main.java.tmp
- mv ${MYDIR}/src/com/dmdirc/Main.java.tmp ${MYDIR}/src/com/dmdirc/Main.java
-
- # Substitute the update channel
- awk '{gsub(/UpdateChannel UPDATE_CHANNEL = UpdateChannel.NONE/,"UpdateChannel UPDATE_CHANNEL = UpdateChannel.NIGHTLY");print}' ${MYDIR}/src/com/dmdirc/Main.java > ${MYDIR}/src/com/dmdirc/Main.java.tmp
- mv ${MYDIR}/src/com/dmdirc/Main.java.tmp ${MYDIR}/src/com/dmdirc/Main.java
-
- # Substitue the release date
- awk '{gsub(/int RELEASE_DATE = 0/,"int RELEASE_DATE = '`date +%Y%m%d`'");print}' ${MYDIR}/src/com/dmdirc/Main.java > ${MYDIR}/src/com/dmdirc/Main.java.tmp
- mv ${MYDIR}/src/com/dmdirc/Main.java.tmp ${MYDIR}/src/com/dmdirc/Main.java
-
- # The date/svn prefix to add to the end of the file names of stuff
- FILEDATA=`date +%Y%m%d`_${SVNREV}
-
- # Build plugins/jar
- $ANT -buildfile $MYDIR/build.xml -k clean jar
-
- # Build installers
- if [ -e "$MYDIR/dist/DMDirc.jar" ]; then
- cd "${MYDIR}/installer"
- ./release.sh --jar "${MYDIR}/dist/DMDirc.jar" --opt "--tag ${FILEDATA}" trunk
- cd "${MYDIR}"
- fi;
-
- if [ -f $MYDIR/dist/DMDirc.jar ]; then
- FILENAME=DMDirc_${FILEDATA}.jar
- mv "${MYDIR}/installer/output/DMDirc-Setup-${FILEDATA}.exe" "${WWWDIR}/nightly/DMDirc-Setup-${FILEDATA}.exe"
- mv "${MYDIR}/installer/output/DMDirc-Setup-${FILEDATA}.run" "${WWWDIR}/nightly/DMDirc-Setup-${FILEDATA}.run"
- rm -Rf "${MYDIR}/installer/output/DMDirc-Setup-${FILEDATA}.*.md5"
- cp $MYDIR/dist/DMDirc.jar /home/dmdirc/www/nightly/$FILENAME
- ${ZIP} -r9 /home/dmdirc/www/nightly/Plugins_${FILEDATA}.zip plugins
-
- ln -sf $WWWDIR/nightly/$FILENAME $WWWDIR/nightly/DMDirc_latest.jar
- ln -sf $WWWDIR/nightly/Plugins_${FILEDATA}.zip $WWWDIR/nightly/Plugins_latest.zip
- ln -sf "${WWWDIR}/nightly/DMDirc-Setup-${FILEDATA}.run" $WWWDIR/nightly/DMDirc-Setup_latest.run
- ln -sf "${WWWDIR}/nightly/DMDirc-Setup-${FILEDATA}.exe" $WWWDIR/nightly/DMDirc-Setup_latest.exe
- cd ${MYDIR}
- /bin/sh $MYDIR/oblong.sh "Nightly Build" "Build Successful";
- /bin/sh $MYDIR/DoReports.sh
- else
- /bin/sh $MYDIR/oblong.sh "Nightly Build" "Build Failed"
- fi
- $SVN revert ${MYDIR}/src/com/dmdirc/Main.java
-
|