tags 559659 + patch fixed-upstream pending thanks On Sun, Dec 06, 2009 at 07:06:42PM +0100, Cyril Brulebois wrote: > Hi Roger. > > Roger Leigh <rle...@codelibre.net> (06/12/2009): > > Currently, the reason why your uploads default to unstable is > > because sbuild defaults to unstable unless you override it. > > Yeah, I gathered that… :) > > > I think the safest solution here is to simply not set it by default, > > and require the user to always specify it (or set it in their > > .sbuildrc). > > Agreed.
Fixed on the master branch, in commit 3b5e134c. Regards, Roger diff --git a/bin/sbuild b/bin/sbuild index b6f76bb..e4bd3f9 100755 --- a/bin/sbuild +++ b/bin/sbuild @@ -64,6 +64,12 @@ my $current_job = undef; main(); sub main () { + my $dist = $conf->get('DISTRIBUTION'); + if (!defined($dist) || !$dist) { + print STDERR "No distribution defined\n"; + exit(1); + } + print "Selected distribution " . $conf->get('DISTRIBUTION') . "\n" if $conf->get('DEBUG'); print "Selected chroot " . $conf->get('CHROOT') . "\n" diff --git a/etc/example.sbuildrc b/etc/example.sbuildrc index 279deae..89aeadd 100644 --- a/etc/example.sbuildrc +++ b/etc/example.sbuildrc @@ -46,7 +46,12 @@ ## SBUILD BEHAVIOUR ## -# Default distribution +# Default distribution. By default, no distribution is defined, and +# the user must specify it with the -d option. However, a default may +# be configured here if desired. Users must take care not to upload +# to the wrong distribution when this option is set, for example +# experimental packages will be built for upload to unstable when this +# is not what is required. #$distribution = 'unstable'; # Default chroot (defaults to distribution[-arch][-sbuild]) diff --git a/etc/sbuild.conf b/etc/sbuild.conf index 7b55581..a9729ee 100644 --- a/etc/sbuild.conf +++ b/etc/sbuild.conf @@ -79,7 +79,12 @@ # Default architecture. Defaults to host architecture. #$arch = 'powerpc'; -# Default distribution +# Default distribution. By default, no distribution is defined, and +# the user must specify it with the -d option. However, a default may +# be configured here if desired. Users must take care not to upload +# to the wrong distribution when this option is set, for example +# experimental packages will be built for upload to unstable when this +# is not what is required. #$distribution = 'unstable'; # Chroot mode. Valid modes are 'schroot' to use schroot for chroot diff --git a/lib/Sbuild/Build.pm b/lib/Sbuild/Build.pm index 8a0a086..f64067b 100644 --- a/lib/Sbuild/Build.pm +++ b/lib/Sbuild/Build.pm @@ -201,6 +201,12 @@ sub run { $self->set('Pkg Start Time', time); + my $dist = $self->get_conf('DISTRIBUTION'); + if (!defined($dist) || !$dist) { + $self->log("No distribution defined\n"); + goto cleanup_skip; + } + if ($self->get('Invalid Source')) { $self->log("Invalid source: " . $self->get('DSC') . "\n"); $self->log("Skipping " . $self->get('Package') . " \n"); diff --git a/lib/Sbuild/Conf.pm b/lib/Sbuild/Conf.pm index bab48e6..0047740 100644 --- a/lib/Sbuild/Conf.pm +++ b/lib/Sbuild/Conf.pm @@ -602,7 +602,9 @@ sub read_config { $self->set('MAILTO', $self->get('MAILTO_HASH')->{$self->get('DISTRIBUTION')}) - if $self->get('MAILTO_HASH')->{$self->get('DISTRIBUTION')}; + if defined($self->get('DISTRIBUTION')) && + $self->get('DISTRIBUTION') && + $self->get('MAILTO_HASH')->{$self->get('DISTRIBUTION')}; $self->set('SIGNING_OPTIONS', "-m".$self->get('MAINTAINER_NAME')."") diff --git a/lib/Sbuild/ConfBase.pm b/lib/Sbuild/ConfBase.pm index 9cc318a..a8a604f 100644 --- a/lib/Sbuild/ConfBase.pm +++ b/lib/Sbuild/ConfBase.pm @@ -81,7 +81,6 @@ sub init_allowed_keys { my %common_keys = ( 'DISTRIBUTION' => { - DEFAULT => 'unstable', SET => sub { my $self = shift; my $entry = shift; -- .''`. Roger Leigh : :' : Debian GNU/Linux http://people.debian.org/~rleigh/ `. `' Printing on GNU/Linux? http://gutenprint.sourceforge.net/ `- GPG Public Key: 0x25BFB848 Please GPG sign your mail.
signature.asc
Description: Digital signature