[Treepkg-commits] r488 - in trunk: recipes/kde/enterprise treepkg

scm-commit@wald.intevation.org scm-commit at wald.intevation.org
Mon Nov 15 15:34:16 CET 2010


Author: bricks
Date: 2010-11-15 15:34:15 +0100 (Mon, 15 Nov 2010)
New Revision: 488

Modified:
   trunk/recipes/kde/enterprise/generic.py
   trunk/treepkg/git.py
   trunk/treepkg/subversion.py
Log:
tag_pkg_parameters depends on scm therefore move this method to the 
tagdetetors which are scm aware
currently bot tag_pkg_parameters (for git and svn) contain hardcoded
regular expressions which should be removed in future


Modified: trunk/recipes/kde/enterprise/generic.py
===================================================================
--- trunk/recipes/kde/enterprise/generic.py	2010-11-11 11:50:08 UTC (rev 487)
+++ trunk/recipes/kde/enterprise/generic.py	2010-11-15 14:34:15 UTC (rev 488)
@@ -132,7 +132,7 @@
                 self.tag_revision = tag_revision
                 self.tag_rules_url = tag_rules_url
                 self.tag_rules_revision = tag_rules_revision
-                tag_date, tag_change_count = self.tag_pkg_parameters(tag_url)
+                tag_date, tag_change_count = self.tag_detector.tag_pkg_parameters(tag_url)
                 pkg_revision = (self.pkg_revision_template
                                 % dict(pkg_revision=tag_change_count,
                                        rules_revision=revision[1]))
@@ -166,17 +166,3 @@
         else:
             super(PackageTrack, self).copy_debian_directory(to_dir)
 
-    def tag_pkg_parameters(self, tag_url):
-        match = re.search(r"/enterprise[^.]*\.[^.]*\."
-                          r"(?P<date>[0-9]{8})\.(?P<baserev>[0-9]+)/",
-                          tag_url)
-        if match:
-            date = match.group("date")
-            baserev = match.group("baserev")
-            xml_log = subversion.log_xml(tag_url, baserev)
-            revisions = subversion.extract_tag_revisions(xml_log)
-            tag_change_count = len(revisions)
-            return (date, tag_change_count)
-        else:
-            raise RuntimeError("Cannot determine tag parameters from %r"
-                               % tag_url)

Modified: trunk/treepkg/git.py
===================================================================
--- trunk/treepkg/git.py	2010-11-11 11:50:08 UTC (rev 487)
+++ trunk/treepkg/git.py	2010-11-15 14:34:15 UTC (rev 488)
@@ -171,3 +171,16 @@
             except GitError:
                 pass
         return urlrev
+
+    def tag_pkg_parameters(self, tag_name):
+        # FIXME: Don't hardcore svn tag path and regex
+        #match = re.search(r"enterprise[^.]*\.[^.]*\."
+        match = re.search(r"enterprise[^.]*"
+                          r"(?P<date>[0-9]{8})",
+                          tag_name)
+        if match:
+            date = match.group("date")
+            return (date, 1)
+        else:
+            raise GitError("Cannot determine tag parameters from %s"
+                               % tag_name)

Modified: trunk/treepkg/subversion.py
===================================================================
--- trunk/treepkg/subversion.py	2010-11-11 11:50:08 UTC (rev 487)
+++ trunk/treepkg/subversion.py	2010-11-15 14:34:15 UTC (rev 488)
@@ -345,3 +345,19 @@
         except SubversionError:
             pass
         return urlrev
+
+    def tag_pkg_parameters(self, tag_url):
+        # FIXME: Don't hardcore svn tag path and regex
+        match = re.search(r"/enterprise[^.]*\.[^.]*\."
+                          r"(?P<date>[0-9]{8})\.(?P<baserev>[0-9]+)/",
+                          tag_url)
+        if match:
+            date = match.group("date")
+            baserev = match.group("baserev")
+            xml_log = subversion.log_xml(tag_url, baserev)
+            revisions = subversion.extract_tag_revisions(xml_log)
+            tag_change_count = len(revisions)
+            return (date, tag_change_count)
+        else:
+            raise RuntimeError("Cannot determine tag parameters from %s"
+                               % tag_url)



More information about the Treepkg-commits mailing list