/[scripts]/trunk/svn-rt-comment.pl
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/svn-rt-comment.pl

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 90 by dpavlin, Sun Sep 28 15:31:03 2008 UTC revision 94 by dpavlin, Fri Oct 24 08:04:54 2008 UTC
# Line 11  use RT::Client::REST::Ticket; Line 11  use RT::Client::REST::Ticket;
11  # Request Tracker  # Request Tracker
12  my ( $server, $username, $password ) = ( 'https://bugs.example.com/rt', 'rtuser', 'rtpasswd' );  my ( $server, $username, $password ) = ( 'https://bugs.example.com/rt', 'rtuser', 'rtpasswd' );
13  # patternt to recognize RT references in commits log or diff  # patternt to recognize RT references in commits log or diff
14  my $rt_re = qr/rt\s*#\s*(\d+)/i;  my $rt_re = qr/rt\s*#?\s*(\d+)/i;
15  my $svnweb = 'https://svn.example.com/svnweb/index.cgi/strix/revision/?rev=';  my $svnweb_fmt = 'http://svn.example.com/svnweb/index.cgi/%s/revision/?rev=%d';
16    
17  die "usage: $0 repo rev\n" unless @ARGV;  die "usage: $0 repo rev\n" unless @ARGV;
18    
# Line 20  my ( $repo, $rev ) = @ARGV; Line 20  my ( $repo, $rev ) = @ARGV;
20    
21  sub svnlook {  sub svnlook {
22          my $command = shift;          my $command = shift;
23          `svnlook $command --revision $rev $repo`          my $txt = `svnlook $command --revision $rev $repo`;
24            chomp( $txt );
25            return $txt;
26  }  }
27    
28  my $log = svnlook 'log';  my $log = svnlook 'log';
# Line 34  if ( $log =~ $rt_re || $diff =~ $rt_re ) Line 36  if ( $log =~ $rt_re || $diff =~ $rt_re )
36          $rt->login( username => $username, password => $password );          $rt->login( username => $username, password => $password );
37          my $ticket = RT::Client::REST::Ticket->new( rt => $rt, id => $id );          my $ticket = RT::Client::REST::Ticket->new( rt => $rt, id => $id );
38    
39            my $repo_only = $repo;
40            $repo_only =~ s{^.*/([^/]+)$}{$1};
41    
42          my $message =          my $message =
43                  svnlook 'author' . "\t" . svnlook 'date' . "\n" .                  sprintf($svnweb_fmt,$repo_only, $rev) . "\n" .
44                  $svnweb . $rev . "\n\n" .                  svnlook('author') . "\t" . svnlook('date') . "\n\n" .
45                  svnlook 'changed --copy-info' . "\n" .                  svnlook('changed --copy-info') . "\n\n" .
46                  $log                  $log
47          ;          ;
48            
49          $ticket->comment( message => $message );          $ticket->comment( message => $message );
50  }  }

Legend:
Removed from v.90  
changed lines
  Added in v.94

  ViewVC Help
Powered by ViewVC 1.1.26