[Treepkg-commits] r73 - trunk/treepkg

scm-commit@wald.intevation.org scm-commit at wald.intevation.org
Thu Jun 5 14:13:38 CEST 2008


Author: bh
Date: 2008-06-05 14:13:38 +0200 (Thu, 05 Jun 2008)
New Revision: 73

Modified:
   trunk/treepkg/web.py
Log:
Adapt web.py to use list_log_files when handling log files.


Modified: trunk/treepkg/web.py
===================================================================
--- trunk/treepkg/web.py	2008-06-05 11:06:58 UTC (rev 72)
+++ trunk/treepkg/web.py	2008-06-05 12:13:38 UTC (rev 73)
@@ -1,4 +1,4 @@
-# Copyright (C) 2007 by Intevation GmbH
+# Copyright (C) 2007, 2008 by Intevation GmbH
 # Authors:
 # Bernhard Herzog <bh at intevation.de>
 #
@@ -32,22 +32,23 @@
         stream = tmpl.generate(report=report.prepare_report(group))
         return stream.render('html')
 
-    def build_log_filename(self, package_track_name, revno):
-        """Returns the name of the build log file of a revision if it exists"""
+    def determine_log_filename(self, package_track_name, revno, log_basename):
+        """Returns the name of a log file of a revision if it exists"""
         group = report.get_packager_group(self.treepkg_config)
         for track in group.get_package_tracks():
             if track.name == package_track_name:
                 for revision in track.get_revisions():
                     if str(revision.revision) == revno:
-                        if revision.has_build_log():
-                            return revision.build_log
+                        for title, filename in revision.list_log_files():
+                            if os.path.basename(filename) == log_basename:
+                                return filename
 
     @expose
     def default(self, *rest):
-        """Handles requests for .../pkg/revno/build_log.txt"""
+        """Handles requests for logfiles of the form .../pkg/revno/*"""
         filename = None
-        if len(rest) == 3 and rest[2] == "build_log.txt":
-            filename = self.build_log_filename(*rest[:2])
+        if len(rest) == 3:
+            filename = self.determine_log_filename(*rest)
         if filename is not None:
             return cptools.serveFile(filename, contentType="text/plain")
         else:
@@ -74,8 +75,10 @@
                     if not os.path.isdir(trackdir):
                         os.mkdir(trackdir)
                     os.mkdir(revdir)
-                    os.symlink(revision.build_log,
-                               os.path.join(revdir, "build_log.txt"))
+                    for title, filename in revision.list_log_files():
+                        os.symlink(filename,
+                                   os.path.join(revdir,
+                                                os.path.basename(filename)))
 
 
 



More information about the Treepkg-commits mailing list