This is an automated email from the git hooks/post-receive script. jamessan pushed a commit to branch master in repository devscripts.
commit cce56393692a5d91e183ecd393140af6b338aabf Author: James McCoy <[email protected]> Date: Thu Aug 7 22:53:44 2014 -0400 Only validate --debs-dir/DEBRELEASE_DEBS_DIR if it's used Closes: #544366 Signed-off-by: James McCoy <[email protected]> --- debian/changelog | 6 ++++++ scripts/debi.pl | 30 +++++++++++++----------------- scripts/debsign.sh | 20 +++++++------------- 3 files changed, 26 insertions(+), 30 deletions(-) diff --git a/debian/changelog b/debian/changelog index 24eb5cf..c6e6d5b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,10 +1,16 @@ devscripts (2.14.7) UNRELEASED; urgency=low + [ Cyril Brulebois ] * deb-reversion: update change_version(), fixing the missing call_hook statement in the udeb case. That was overlooked when the changelog massaging was made conditional, and causes hooks to be ignored for udebs. + [ James McCoy ] + * debsign/debi/debc: Delay checking for the existence of the + --debs-dir/DEBRELEASE_DEBS_DIR directory until we get to code that + actually uses said directory. (Closes: #544366) + -- Cyril Brulebois <[email protected]> Fri, 08 Aug 2014 01:27:12 +0200 devscripts (2.14.6) unstable; urgency=medium diff --git a/scripts/debi.pl b/scripts/debi.pl index b9b85a3..56379b6 100755 --- a/scripts/debi.pl +++ b/scripts/debi.pl @@ -119,7 +119,7 @@ the GNU General Public License, version 2 or later. EOF # Start by setting default values -my $debsdir = '..'; +my $debsdir; my $debsdir_warning; my $check_dirname_level = 1; my $check_dirname_regex = 'PACKAGE(-.+)?'; @@ -159,9 +159,7 @@ if (@ARGV and $ARGV[0] =~ /^--no-?conf$/) { # installing a broken package $config_vars{'DEBRELEASE_DEBS_DIR'} =~ s%/+%/%; $config_vars{'DEBRELEASE_DEBS_DIR'} =~ s%(.)/$%$1%; - if (! -d $config_vars{'DEBRELEASE_DEBS_DIR'}) { - $debsdir_warning = "config file specified DEBRELEASE_DEBS_DIR directory $config_vars{'DEBRELEASE_DEBS_DIR'} does not exist!"; - } + $debsdir_warning = "config file specified DEBRELEASE_DEBS_DIR directory $config_vars{'DEBRELEASE_DEBS_DIR'} does not exist!"; foreach my $var (sort keys %config_vars) { if ($config_vars{$var} ne $config_default{$var}) { @@ -207,19 +205,6 @@ my ($targetarch, $targetgnusystem); $targetarch = $opt_a ? "-a$opt_a" : ""; $targetgnusystem = $opt_t ? "-t$opt_t" : ""; -if ($opt_debsdir) { - $opt_debsdir =~ s%/+%/%; - $opt_debsdir =~ s%(.)/$%$1%; - if (! -d $opt_debsdir) { - $debsdir_warning = "--debs-dir directory $opt_debsdir does not exist!"; - } - $debsdir = $opt_debsdir; -} - -if ($debsdir_warning) { - die "$progname: $debsdir_warning\n"; -} - if (defined $opt_level) { if ($opt_level =~ /^[012]$/) { $check_dirname_level = $opt_level; } else { @@ -249,6 +234,17 @@ chomp $arch; my $chdir = 0; if (! defined $changes) { + if ($opt_debsdir) { + $opt_debsdir =~ s%/+%/%; + $opt_debsdir =~ s%(.)/$%$1%; + $debsdir_warning = "--debs-dir directory $opt_debsdir does not exist!"; + $debsdir = $opt_debsdir; + } + + if (! -d $debsdir) { + die "$progname: $debsdir_warning\n"; + } + # Look for .changes file via debian/changelog until (-r 'debian/changelog') { $chdir = 1; diff --git a/scripts/debsign.sh b/scripts/debsign.sh index 672e1a8..1fc5ff2 100755 --- a/scripts/debsign.sh +++ b/scripts/debsign.sh @@ -277,9 +277,6 @@ else # We do not replace this with a default directory to avoid accidentally # signing a broken package DEBRELEASE_DEBS_DIR="$(echo "${DEBRELEASE_DEBS_DIR%/}" | sed -e 's%/\+%/%g')" - if ! [ -d "$DEBRELEASE_DEBS_DIR" ]; then - debsdir_warning="config file specified DEBRELEASE_DEBS_DIR directory $DEBRELEASE_DEBS_DIR does not exist!" - fi # set config message MODIFIED_CONF='' @@ -300,6 +297,7 @@ fi maint="$DEBSIGN_MAINT" signkey="$DEBSIGN_KEYID" debsdir="$DEBRELEASE_DEBS_DIR" +debsdir_warning="config file specified DEBRELEASE_DEBS_DIR directory $DEBRELEASE_DEBS_DIR does not exist!" signcommand='' if [ -n "$DEBSIGN_PROGRAM" ]; then @@ -342,6 +340,7 @@ do --debs-dir) shift opt_debsdir="$(echo "${1%/}" | sed -e 's%/\+%/%g')" + debsdir_warning="could not find directory $opt_debsdir!" ;; --no-conf|--noconf) echo "$PROGNAME: $1 is only acceptable as the first command-line option!" >&2 @@ -356,16 +355,6 @@ do done debsdir=${opt_debsdir:-$debsdir} -# check sanity of debsdir -if ! [ -d "$debsdir" ]; then - if [ -n "$debsdir_warning" ]; then - echo "$PROGNAME: $debsdir_warning" >&2 - exit 1 - else - echo "$PROGNAME: could not find directory $debsdir!" >&2 - exit 1 - fi -fi if [ -z "$signcommand" ]; then echo "Could not find a signing program!" >&2 @@ -627,6 +616,11 @@ for valid format" >&2; # out its name from debian/changelog case $# in 0) # We have to parse debian/changelog to find the current version + # check sanity of debsdir + if ! [ -d "$debsdir" ]; then + echo "$PROGNAME: $debsdir_warning" >&2 + exit 1 + fi if [ -n "$remotehost" ]; then echo "$PROGNAME: Need to specify a .changes, .dsc or .commands file location with -r!" >&2 exit 1 -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/collab-maint/devscripts.git _______________________________________________ devscripts-devel mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/devscripts-devel
