#!/bin/sh # Copyright (c) 2011 IndexData ApS. http://indexdata.com # Author: Wolfram Schneider # # id-release - a helper script to build a release & packaging for debian + redhat # # see http://twiki.indexdata.dk/cgi-bin/twiki/view/ID/IDSoftwareRelease # die early set -e usage () { echo "usage $0 version" exit 1 } ###################################################################### if [ -e "pom.xml" ]; then java=true else java=false fi if [ `find . -name '*.pm' | wc -l` -gt 0 ]; then perl=true else perl=false fi if [ `ls |egrep '\.spec$' | wc -l` -eq 0 ]; then echo "No *.spec file found" usage else spec=`ls |egrep '\.spec$' | head -1` package=`basename $spec .spec` fi case $1 in [0-9]* ) version=$1 ;; * ) usage ;; esac # configure new version perl -i.bak -npe "s,VERSION=.*,VERSION=$version," IDMETA if $java; then echo "set maven version to $version" mvn versions:set -DnewVersion=$version > mvn-versions.log fi if $perl; then echo "check perl version numbers" find . -name '*.pm' -print0 | xargs -0 egrep -H '\$VERSION.*=.*[0-9]' fi # update debian version file perl -i.bak -npe "\$. == 1 && s,\(.*?\),($version)," debian/changelog ###################################################################### echo "" echo "# Please run now" echo "git commit -a" echo "git push" echo "git tag v$version" echo "git push origin tag v$version" if $java; then echo "mvn versions:set -DnewVersion=$version-SNAPSHOT" fi ###################################################################### echo "" echo "# On RedHat or centos, please run the commands" echo "\$HOME/proj/git-tools/id-deb-build/mkdist.sh" echo "sudo cp $package-$version.tar.gz /usr/src/redhat/SOURCES/" echo "sudo rpmbuild -ba $spec" echo "\$HOME/proj/git-tools/id-rpm-build/upload-rpms.sh $spec" echo "# on kebab run update-yum-archive.sh" ###################################################################### echo "" echo "# On debian or ubuntu, please run the commands" echo "sudo rm -rf deb-src" echo "\$HOME/proj/git-tools/id-deb-build/mkdist.sh" echo "\$HOME/proj/git-tools/id-deb-build/id-mk-deb-src.sh" echo "\$HOME/proj/git-tools/id-deb-build/id-pbuild.sh" echo "\$HOME/proj/git-tools/id-deb-build/id-pbuild.sh --upload"