]> git.decadent.org.uk Git - dak.git/blobdiff - scripts/debian/byhand-di
byhand-*: set -o pipefail
[dak.git] / scripts / debian / byhand-di
index 9e1b0512d0934201e1dca39dcfb9857b85cdb07f..af03af4c8f3d3bfb12fbeab67139ae3cedc90791 100755 (executable)
@@ -1,7 +1,8 @@
-#!/bin/sh
+#!/bin/bash
 
 set -u
 set -e
+set -o pipefail
 
 if [ $# -lt 4 ]; then
        echo "Usage: $0 filename version arch changes_file"
@@ -19,8 +20,8 @@ error() {
 }
 
 # Check validity of version number
-# Expected are: YYYYMMDD, YYYYMMDD.x, YYYYMMDD<suite>x and the +b[0-9] on the end
-if ! echo "$VERSION" | grep -Eq "^[0-9]{8}(|(\.|[a-z]+)[0-9]+)(\+b[0-9])?$"; then
+# Expected are: YYYYMMDD, YYYYMMDD.x, YYYYMMDD<suite>x, YYYYMMDD+<suite>x and the +b[0-9] on the end
+if ! echo "$VERSION" | grep -Eq "^[0-9]{8}(|(\.|\+?[a-z]+)[0-9]+)(\+b[0-9])?$"; then
        error "Invalid version: '$VERSION'"
 fi
 
@@ -54,7 +55,8 @@ if [ -d "$TARGET/$VERSION" ]; then
 fi
 
 # We know the VERSION is sane by here, we just need to make sure we escape the + in +b1 (if any)
-VERSIONREGEXP="$(echo $VERSION | sed 's@+@\\\+@')"
+# It needs 'g' as well as we may have +$DIST+b[0-9]
+VERSIONREGEXP="$(echo $VERSION | sed 's@+@\\\+@g')"
 
 # We know all data to be in ./installer-<arch>/<version>; see if there's
 # anything else in the tarball except that and the 'current' symlink