root/modules/branches/2.1/publish.pl

Revision 1599, 1.1 kB (checked in by qldrob, 7 years ago)

Ahha. OK. NOW it works.

  • Property svn:mime-type set to text/plain
  • Property svn_eol-style set to native
  • Property svn:eol-style set to native
  • Property svn:executable set to *
Line 
1 #!/usr/bin/perl
2
3
4 my $reldir = "release/";
5
6 while ($moddir = shift @ARGV) {
7   open FH, "$moddir/module.xml";
8   $newxml = "";
9   $vers = "unset";
10   $rawname = "unset";
11   while (<FH>) {
12     if (/<version>(.+)<\/version>/) { $vers = $1; }
13     if (/<rawname>(.+)<\/rawname>/) { $rawname = $1; }
14     $newxml .= $_;
15   }
16   close FH;
17   die "Don't know version of $moddir" if ($vers eq "unset");
18   die "Don't know rawname of $moddir" if ($rawname eq "unset");
19   # Now we know the version. Create the tar.gz
20   $filename = "$rawname-$vers.tgz";
21   system("tar zcf $filename --exclude .svn $rawname");
22   # Update the md5 info
23   open MD5, "md5sum $filename|";
24   $md5 = <MD5>;
25   close MD5;
26   ($md5sum, $null) = split(/ /, $md5);
27   $newxml =~ s/<md5sum>.+<\/md5sum>/<md5sum>$md5sum<\/md5sum>/;
28   $newxml =~ s/<location>.+<\/location>/<location>$reldir$filename<\/location>/;
29   open FH, ">$moddir/module.xml";
30   print FH $newxml;
31   close FH;
32   system("mv $filename ../../release/");
33   system("svn add ../../release/$filename");
34   system("svn ps svn:mime-type application/tgz ../../release/$filename");
35   system("svn ci ../../release/$filename $rawname/module.xml -m \"Module Publish Script\"");
36 }
37
38
Note: See TracBrowser for help on using the browser.