#!/bin/sh # HowToRelease.txt # # Usage: # ./HowToRelease.txt # Handle with care! # WHOAMI=`whoami` DATE=`date '+%F'` RELEASE=webflys-${DATE} SCHEDULER_PATH=${1:-/path/to/server} FTP_PATH=${2:-/home/ftp/pub/FIXME} # 1. Snapshot erstellen: hg clone ssh://${WHOAMI}@thoe.intevation.de/${SCHEDULER_PATH} webflys-release-${DATE} cd webflys-release-${DATE} # 2. Tag auf dem Hauptrepository erstellen sed "1i\\${DATE}\t${WHOAMI} <${WHOAMI}@intevation.de>:\n\n\t* ChangeLog.txt: Tagged as '${DATE}'\n" -i ChangeLog.txt hg tag ${DATE} hg ci -m "Tagged as ${DATE}" hg push # 3. Binary-Paket erstellen: mkdir ${RELEASE} use_maven2 (cd webflys && mvn package) cp webflys/target/webflys.war ${RELEASE} cp doc/INSTALL.txt ${RELEASE} tar cvfz ../${RELEASE}.tar.gz ${RELEASE} # 4. Source-Paket erstellen: cd .. (cd webflys-release-${DATE}/webflys && mvn clean) tar cvfz webflys-${DATE}-src.tar.gz \ webflys-release-${DATE}/webflys \ webflys-release-${DATE}/ChangeLog.txt \ webflys-release-${DATE}/doc \ webflys-release-${DATE}/licenses # 5. Pakete hochladen: scp webflys-${DATE}-src.tar.gz ${RELEASE}.tar.gz \ intevation@doto.intevation.de:${FTP_PATH} # 4. Fertig!