sx-build-release -> invirt-build-release
[invirt/packages/invirt-dev.git] / invirt-build-release
diff --git a/invirt-build-release b/invirt-build-release
new file mode 100755 (executable)
index 0000000..8415ef4
--- /dev/null
@@ -0,0 +1,44 @@
+#!/bin/bash
+svnuri=`svn info /srv/checkout | sed -n 's/^Repository Root: //p'`
+
+set -e
+if  [ $# -ne 1 ] ; then
+       echo " usage: invirt-build-release package_name"
+       exit 1
+fi
+
+package=$1
+rm -rf build-release/$package
+svn export $svnuri/trunk/packages/$package build-release/$package
+cd build-release/$package
+
+eval  `perl '-F:\s+' -lane 'print  $F[0]."=".$F[1] if /^Version|^Source|^Distribution/' \
+    <(dpkg-parsechangelog)`
+
+dpkg-buildpackage -us -uc -rfakeroot -S
+cd ..
+sbuild -A -d hardy-amd64 "${Source}_${Version}.dsc"
+
+if ! svn ls $svnuri/package_tags/$Source >/dev/null 2>&1; then
+  svn mkdir $svnuri/package_tags/$Source \
+      -m "Create package tags directory"
+fi
+if ! svn ls $svnuri/package_tags/$Source/$Version >/dev/null 2>&1; then
+  svn cp $svnuri/trunk/packages/$package $svnuri/package_tags/$Source/$Version \
+      -m "Tag $Version of $Source"
+else
+  echo "$(basename $0): tag already exists, not making again"
+fi
+
+[ $Distribution = 'unstable' ] \
+ || echo "$(basename $0): warning: Distribution is ${Distribution}, script expects unstable"
+changesfile=`pwd`/${Source}_*${Version}*.changes
+for i in $changesfile; do
+    reprepro-env include unstable $i
+    reprepro-env copy stable unstable \
+       $(perl '-F:\s+' -lane 'print $F[1]." " if /^Binary/' <$i)
+done
+reprepro-env copy stable unstable ${Source}
+
+cd ..
+rm -rf build-release