[Pkg-jed-commit] r801 - utils

Rafael Laboissiere rafael at alioth.debian.org
Mon Jul 9 08:06:06 UTC 2007


Author: rafael
Date: 2007-07-09 08:06:06 +0000 (Mon, 09 Jul 2007)
New Revision: 801

Added:
   utils/svn-deb-release
Removed:
   utils/svn-commit-version
Log:
Replaced svn-commit-version script by the improved svn-deb-release, which
avoids the need for a local copy of the SVN repository.


Deleted: utils/svn-commit-version
===================================================================
--- utils/svn-commit-version	2007-07-09 08:03:55 UTC (rev 800)
+++ utils/svn-commit-version	2007-07-09 08:06:06 UTC (rev 801)
@@ -1,64 +0,0 @@
-#!/usr/bin/perl
-
-use Getopt::Long;
-
-(my $prog = $0) =~ s:.*/::;
-
-my $pkgname;
-my $version;
-my $dry_run = 0;
-
-GetOptions ("package=s" => \$pkgname,
-            "dry-run"  => \$dry_run,
-            "help" => \$help);
-
-if ($help) {
-  print "FIXME\n";
-  exit 0;
-}
-
-die "Usage: $prog [options] svn-dir [build-dir]\n"
-  if $#ARGV < 0 or $#ARGV > 1;
-
-my $svndir = $ARGV [0];
-my $buildir = $#ARGV == 1 ? $ARGV [1] : ".";
-
-my $debdir = "$buildir/debian";
-
-die "Directory $debdir does not exist"
-  if not -d $debdir;
-
-open (CHGLOG, "< $debdir/changelog")
-  or die "Cannot open $debdir/changelog";
-
-while (<CHGLOG>) {
-  if (/^(\S+) \(([^)]+)\)/) {
-    $pkgname = $1
-      if not defined $pkgname;
-    $version = $2;
-    last;
-  }
-}
-
-my $trunkdir = "$svndir/$pkgname/trunk";
-die "Trunk directory $trunkdir does not exist"
-  if not -d $trunkdir;
-
-my $tagsdir = "$svndir/$pkgname/tags";
-die "Tags directory $tagsdir does not exist"
-  if not -d $tagsdir;
-
-sub run {
-  my $cmd = shift;
-  print "$cmd\n";
-  system $cmd if not $dry_run;
-}
-
-run "svn ci --message=\"Debian release ${pkgname}_$version\" $debdir";
-
-run "svn up $trunkdir";
-run "svn cp $trunkdir $tagsdir/$version";
-
-run ("svn ci --message=\"Tagging Debian release ${pkgname}_$version\" "
-     . "$tagsdir/$version");
-

Copied: utils/svn-deb-release (from rev 800, utils/svn-commit-version)
===================================================================
--- utils/svn-deb-release	                        (rev 0)
+++ utils/svn-deb-release	2007-07-09 08:06:06 UTC (rev 801)
@@ -0,0 +1,81 @@
+#!/usr/bin/perl
+
+use Getopt::Long;
+
+(my $prog = $0) =~ s:.*/::;
+
+my $pkgname;
+my $version;
+my $dry_run = 0;
+
+GetOptions ("dry-run"  => \$dry_run,
+            "help" => \$help);
+
+if ($help) {
+  print "FIXME\n";
+  exit 0;
+}
+
+die "Usage: $prog [build-dir]\n"
+  if $#ARGV > 1;
+
+my $buildir = $#ARGV == 0 ? $ARGV [0] : ".";
+
+my $debdir = "$buildir/debian";
+
+die "$prog:E: Directory $debdir does not exist"
+  if not -d $debdir;
+
+open (CHGLOG, "< $debdir/changelog")
+  or die "$prog:E: Cannot open $debdir/changelog";
+
+while (<CHGLOG>) {
+  if (/^(\S+) \(([^)]+)\)/) {
+    $pkgname = $1
+      if not defined $pkgname;
+    $version = $2;
+    last;
+  }
+}
+
+close CHGLOG;
+
+open (SVNINFO, "svn info $debdir |")
+  or die "$prog:E: Cannot get SVN info in directory $debdir";
+
+my $url;
+
+while (<SVNINFO>) {
+  if (/^URL: (.*)/) {
+    $url = $1;
+    last;
+  }
+}
+
+close SVNINFO;
+
+$url =~ m {(.*)/debian$}
+  or die qq {$prog:E: URL $url does not end with "/debian"};
+
+my $trunkurl = $1;
+
+$trunkurl =~ m {(.*)/trunk$}
+  or die qq {$prog:E: URL $url does not end with "/trunk/debian"};
+
+my $baseurl = $1;
+
+my $tagsurl = "$baseurl/tags";
+
+sub run {
+  my $cmd = shift;
+  print "\n$cmd\n";
+  system $cmd if not $dry_run;
+}
+
+system ("svn list $tagsurl 2>&1 > /dev/null") == 0
+  or run qq {svn mkdir $tagsurl --message="Created tags dir"};
+
+run "svn ci --message=\"Debian release ${pkgname}_$version\" $debdir";
+
+run ("svn cp $trunkurl $tagsurl/$version"
+     . qq { --message="Tagging Debian release ${pkgname}_$version"});




More information about the Pkg-jed-commit mailing list