docs-common/bin insert-changelog,1.6,1.7
Paul W. Frields (pfrields)
fedora-docs-commits at redhat.com
Sat Feb 4 16:07:07 UTC 2006
Author: pfrields
Update of /cvs/docs/docs-common/bin
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv7757/docs-common/bin
Modified Files:
insert-changelog
Log Message:
Make the clog target a little smarter and more helpful
Index: insert-changelog
===================================================================
RCS file: /cvs/docs/docs-common/bin/insert-changelog,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- insert-changelog 21 Jan 2006 02:47:58 -0000 1.6
+++ insert-changelog 4 Feb 2006 16:06:42 -0000 1.7
@@ -7,6 +7,35 @@
OUTPUT="${1:-${PWD}/$RPMINFO.clog$$}"
+
+# Check whether a number input is valid
+# Relying on global scope since this function isn't useful outside me
+validnumber()
+{
+ case "$ROLE" in
+ 'doc' )
+ VALIDCHARS='[^0-9.]'
+ MSG="Valid characters are digits and '.' only -- please re-enter."
+ ;;
+ 'rpm' )
+ VALIDCHARS='[^0-9]'
+ MSG="Valid characters are digits only -- please re-enter."
+ ;;
+ * )
+ echo "Role '$ROLE' is invalid, cowardly bail-out"
+ exit 1
+ ;;
+ esac
+ if test -z "`echo $NUMBER | grep $VALIDCHARS`"; then
+ RETVAL=0
+ else
+ echo "$MSG"
+ RETVAL=1
+ fi
+ return $RETVAL
+}
+
+
echo -n "Change to [r]pm package or [d]ocument source? [r/D] "
while test -z "$ROLE" ; do
read -s -n 1 R
@@ -34,15 +63,20 @@
fi
LASTREV=$(get_latest_revision "$ROLE")
-if [ -z "$LASTREV" ]; then # this is the first revision for this role
+if [ -z "$LASTREV" ] || [ "$LASTREV" = "0" ]; then
+# this is the first revision for this role
LASTREV=$ZEROREV
fi
-while test -z "$NUMBER"; do
+while test -z "$NUMBER" ; do
echo -n "Enter $REVDESC greater than $LASTREV: "
read NUMBER
+ if validnumber ; then
# Yes, it's perfectly safe to assume Python is present
- if test `python -c "from distutils import version; a=version.LooseVersion('$LASTREV') ; b=version.LooseVersion('$NUMBER'); print b>a"` = "False"; then
+ if test `python -c "from distutils import version; a=version.LooseVersion('$LASTREV') ; b=version.LooseVersion('$NUMBER'); print b>a"` = "False"; then
+ NUMBER=
+ fi
+ else
NUMBER=
fi
done
More information about the Fedora-docs-commits
mailing list