r77912 - /scripts/qa/packagecheck

gregoa at users.alioth.debian.org gregoa at users.alioth.debian.org
Wed Jul 27 17:14:07 UTC 2011


Author: gregoa
Date: Wed Jul 27 17:14:05 2011
New Revision: 77912

URL: http://svn.debian.org/wsvn/?sc=1&rev=77912
Log:
packagecheck: first step of conversion svn -> git.
currently BROKEN. but there are some TODOs.

Modified:
    scripts/qa/packagecheck

Modified: scripts/qa/packagecheck
URL: http://svn.debian.org/wsvn/scripts/qa/packagecheck?rev=77912&op=diff
==============================================================================
--- scripts/qa/packagecheck (original)
+++ scripts/qa/packagecheck Wed Jul 27 17:14:05 2011
@@ -1,16 +1,15 @@
 #!/bin/bash
 
-# Copyright 2007, 2008, 2009 gregor herrmann <gregoa at debian.org>
+# Copyright 2007, 2008, 2009, 2011 gregor herrmann <gregoa at debian.org>
 # Copyright 2007, 2008 Damyan Ivanov <dmn at debian.org>
 # Copyright 2007 David Paleino <d.paleino at gmail.com>
 # Released under the terms of the GNU GPL version 2
 #
-# To be run in a directory above trunk/
+# To be run in a directory above packages/
 # (which name can be specified as the first argument)
 
 # List of commands used
 CMD_REALPATH="readlink -f";
-CMD_SVN_DIFF="svn diff";
 
 #############
 # functions #
@@ -19,14 +18,13 @@
 usage() {
 	[ -n "$1" ] && echo "ERROR: $1" && echo
 	echo "Usage:"
-	echo "  $(basename $0) -{VHMWCRQ|A|h} {-c | [-p pkg] trunk}"
+	echo "  $(basename $0) -{VHMWCRQ|A|h} {-c | [-p pkg] topdir}"
 	echo
 	echo "  At least one parameter must be present."
 	echo
 	echo "  Parameters:"
-	echo "  -V       - debian/control: add _V_cs-(Svn|Browser) fields;"
-	echo "             remove XS-Vcs-(Svn|Browser) fields;"
-	echo "             switch Vcs-Browser fields to ViewSVN"
+	echo "  -V       - debian/control: add/fix _V_cs-(Git|Browser) fields;"
+	echo "             remove XS-Vcs-(Svn|Git|Browser) fields"
 	echo "  -H       - debian/control: add _H_omepage field; remove"
 	echo "             pseudo-field Homepage"
 	echo "  -M       - debian/control: check _M_aintainer field for"
@@ -99,9 +97,10 @@
 }
 
 testvcs() {
-	DIR=$1
-	PKG=$(basename $($CMD_REALPATH $DIR))
-	# check for and add missing Vcs-Svn field
+	# TODO: svn -> git
+	DIR=$1
+	PKG=$(basename $($CMD_REALPATH $DIR))
+	# check for and add missing Vcs-Git field
 	if ! grep -q ^Vcs-Svn $DIR/debian/control; then
 		echo "$PKG: adding missing Vcs-Svn field"
 		perl -pi -e "s;(Standards-Version:.+);\$1\nVcs-Svn: svn://svn.debian.org/pkg-perl/trunk/$PKG/;" $DIR/debian/control
@@ -256,7 +255,7 @@
 			version_re='v?(\d[\d.-]+)\.(?:tar(?:\.gz|\.bz2)?|tgz|zip)'
 			echo "version=3" > $DIR/debian/watch
 			echo "http://search.cpan.org/dist/$dist_name/  .+/$dist_name-$version_re\$" >> $DIR/debian/watch
-			svn add $DIR/debian/watch
+			git add $DIR/debian/watch
 
 			MSG_WATCH="Add debian/watch."
 			CHANGED=1
@@ -320,7 +319,7 @@
 
 	See /usr/share/doc/quilt/README.source for a detailed explanation.
 EOF
-	svn add $DIR/debian/README.source
+	git add $DIR/debian/README.source
 	MSG_READMESOURCE="Add debian/README.source to document quilt usage, as required by Debian Policy since 3.8.0."
 	CHANGED=1
 	fi
@@ -415,7 +414,7 @@
 	MSG_RULES=
 	MSG_READMESOURCE=
 
-	# TESTVCS - -V debian/control: add _V_cs-(Svn|Browser) fields; remove XS-Vcs-(Svn|Browser) field
+	# TESTVCS - -V debian/control: add _V_cs-(Git|Browser) fields; remove XS-Vcs-(Svn|Git|Browser) field
 	[ "$TESTVCS" = 1 ] && testvcs $p
 
 	# TESTHOMEPAGE - -H debian/control: add _H_omepage field; remove pseudo-field Homepage
@@ -466,76 +465,71 @@
 # start the game
 
 CHANGED=0
-TRUNK=${1:-trunk}
+TOP=$1
 
 if [ -n "$ONLY_CURDIR" ]; then
 	WORK_DIR="."
 elif [ -n "$PKG" ]; then
-	WORK_DIR=$TRUNK/$PKG
+	WORK_DIR=$TOP/packages/$PKG
 else
-	WORK_DIR=$TRUNK
+	WORK_DIR=$TOP
 fi
 
 sanity_check;
 [ "$?" -ne "0" ] && exit 1;
 
 if [ $AUTO -ne 1 ]; then
-	echo "Running svn up $WORK_DIR ..."
-	svn up $WORK_DIR
-fi
-
-echo "Checking if $WORK_DIR is clean ..."
-UNCLEAN=$(svn st $WORK_DIR |egrep -v '^\?')
-if [ -n "$UNCLEAN" ]; then
-	echo "$UNCLEAN"
-	echo WARNING: $WORK_DIR is not clean
+	echo "Running mr up $WORK_DIR ..."
+	mr up $WORK_DIR
 fi
 
 if [ -n "$ONLY_CURDIR" ]; then
 	check_package .
 elif [ -n "$PKG" ]; then
-	check_package $TRUNK/$PKG
+	check_package $TOP/packages/$PKG
 else
 	# loop over packages
 
 	echo "Grepping through packages ..."
-	for PKG in $(svn ls $TRUNK); do
+	for PKG in $(ls $TOP/packages/*); do
 
 		PKG=${PKG%/}
-		check_package $TRUNK/$PKG
+		[ -d "$TOP/packages/$PKG" ] && check_package $TOP/packages/$PKG
 
 	done
 fi
 
+# TODO:
+# doesn't work below here
+# should probably go into check_package
+
+exit 0
+
 # work is done. svn diff? svn commit?
 
 if [ "$CHANGED" = "1" ]; then
 	if [ $AUTO -ne 1 ]; then
-		read -p "Show svn diff $WORK_DIR (y|N)? " DIFF
+		read -p "Show git diff $WORK_DIR (y|N)? " DIFF
 		case $DIFF in
 			y|Y)
-				$CMD_SVN_DIFF $WORK_DIR | less -R
+				git diff $WORK_DIR | less -R
 				;;
 			*)
 				;;
 		esac
 	fi
-	COMMIT_MSG="[packagecheck] fixed Vcs-(Svn|Browser)/Homepage field(s) in debian/control and/or URL in debian/watch and/or rmdir /usr/{lib|share}/perl5 in debian/rules."
-	if [ -n "$UNCLEAN" ]; then
-		echo $WORK_DIR was not clean at start. Please commit manually.
-	else
-		if [ $AUTO -ne 1 ]; then
-			read -p "Commit $WORK_DIR (y|N)? " COMMIT
-			case $COMMIT in
-				y|Y)
-					svn ci -m "$COMMIT_MSG" $WORK_DIR
-					;;
-				*)
-					;;
-			esac
-		else # AUTO
-			svn ci -m "$COMMIT_MSG" $WORK_DIR
-		fi
+	COMMIT_MSG="[packagecheck] fixed Vcs-(Git|Browser)/Homepage field(s) in debian/control and/or URL in debian/watch and/or rmdir /usr/{lib|share}/perl5 in debian/rules."
+	if [ $AUTO -ne 1 ]; then
+		read -p " $WORK_DIR (y|N)? " COMMIT
+		case $COMMIT in
+			y|Y)
+				git ci -m "$COMMIT_MSG" $WORK_DIR
+				;;
+			*)
+				;;
+		esac
+	else # AUTO
+		git ci -m "$COMMIT_MSG" $WORK_DIR
 	fi
 else
 	echo "Nothing changed."




More information about the Pkg-perl-cvs-commits mailing list