rewritten to use the new lcx setup
[git-tools-moved-to-github.git] / id-release
index 244633a..71a4504 100755 (executable)
@@ -1,16 +1,18 @@
 #!/bin/sh
-# Copyright (c) 2011 IndexData ApS. http://indexdata.com
+# Copyright (c) 2011-2015 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
+# https://twiki.indexdata.com/twiki/bin/view/ID/AdamsReleaseProcedure
 
 # die early
 set -e
 
 usage () {
-    echo "usage $0 version"
+    echo  >&2 "usage $0 version"
+    echo  >&2 "$@"
     exit 1
 }
 
@@ -20,6 +22,18 @@ case $1 in
        * ) usage ;;
 esac
 
+echo "See also https://twiki.indexdata.com/twiki/bin/view/ID/AdamsReleaseProcedure"
+echo ""
+
+echo "Did you updated the news log file?"
+for file in Changes News NEWS
+do
+  if [ -e $file ]; then
+    ls -l $file
+  fi
+done
+echo ""
+
 if [ -e "pom.xml" ]; then
     java=true
 else
@@ -33,11 +47,13 @@ else
 fi
 
 if [ `ls |egrep '\.spec$' | wc -l` -eq 0 ]; then
-    echo "No *.spec file found"
-    usage
+    usage "No *.spec file found"
 else
     spec=`ls |egrep '\.spec$' | head -1`
     package=`perl -ne 's/\s*$//; print if s/^NAME=//' IDMETA`
+    if [ -z "$package" ]; then
+       package=`basename $spec .spec`
+    fi
 fi
 
 # configure new version
@@ -50,22 +66,22 @@ fi
 
 if $perl; then
   echo "check perl version numbers"
-  find . -name '*.pm' -print0 | xargs -0 egrep -H '\$VERSION.*=.*[0-9]'
+  find . -name '*.pm' -print0 | xargs -0 egrep -H '\$VERSION.*=.*[0-9]' | egrep -v '^\./deb-src/'
 fi
 
 # update debian version file
 perl -i.bak -npe "\$. == 1 && s,\(.*?\),($version)," debian/changelog 
 
 # update redhat version file
-perl -i.bak -npe "s,^Version: .*,Version: $version," $spec
+perl -i.bak -npe "s,^Version: \d+.*,Version: $version," $spec
+
 
 ######################################################################
+echo "# Please commit the version updates now"
+echo "git commit -a -m'new release v$version'"
 echo ""
-echo "# Please run now"
-echo "git commit -a"
-echo "git push"
+echo "# Please tag now (we will push later to origin)"
 echo "git tag v$version"
-echo "git push origin tag v$version"
 
 if $java; then
     echo "mvn versions:set -DnewVersion=$version-SNAPSHOT" 
@@ -73,28 +89,13 @@ fi
 
 ######################################################################
 echo ""
-echo "# On RedHat or centos, please run the commands"
-echo "sudo date"
-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 "# if successfully, upload"
-echo "\$HOME/proj/git-tools/id-rpm-build/upload-rpms.sh $spec"
-echo ""
-echo "# on kebab run: sudo su; cd \$HOME/proj/git-tools/update-archive; update-yum-archive.sh"
-
-
-######################################################################
-echo ""
-echo "# On debian or ubuntu, please run the commands"
-echo "sudo rm -rf deb-src"
+echo "# On mochi, please run the commands"
 echo "\$HOME/proj/git-tools/id-deb-build/mkdist.sh"
-echo "\$HOME/proj/git-tools/id-deb-build/id-mk-deb-src.sh"
-echo "sudo \$HOME/proj/git-tools/id-deb-build/id-pbuild.sh"
-echo "# if successfully, upload"
+echo "\$HOME/proj/git-tools/id-deb-build/id-pbuild.sh"
 echo "\$HOME/proj/git-tools/id-deb-build/id-pbuild.sh --upload"
 echo ""
-echo "# on kebab run: sudo su; cd \$HOME/proj/git-tools/update-archive; update-archive.sh"
-echo ""
 
+echo "# if successfully, don't forget to push to origin"
+echo "git push origin master"
+echo "git push origin tag v$version"