distrodata: added some corner cases for svn and git repos

Submitted by Emilia Ciobanu on Feb. 26, 2013, 1:35 p.m.

Details

Message ID 1361885714-24362-1-git-send-email-emilia.maria.silvia.ciobanu@intel.com
State Accepted
Commit 7ae22517940444584ae9b0aae0f4229a8a10e0a6
Headers show

Commit Message

Emilia Ciobanu Feb. 26, 2013, 1:35 p.m.
distrodata.bbclass: git tags can include only one digit, therefore
the regex that matches the latest version should also include this
case. For some svn repos, using the http protocol than using the
svn protocol to get infomation about revisions works better.

Signed-off-by: Emilia Ciobanu <emilia.maria.silvia.ciobanu@intel.com>
---
 meta/classes/distrodata.bbclass |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

Patch hide | download patch | download mbox

diff --git a/meta/classes/distrodata.bbclass b/meta/classes/distrodata.bbclass
index 276ca03..bd3a6a9 100644
--- a/meta/classes/distrodata.bbclass
+++ b/meta/classes/distrodata.bbclass
@@ -674,7 +674,7 @@  python do_checkpkg() {
                                 if len(line)==0:
                                         break;
                                 puptag = line.split("/")[-1]
-                                puptag = re.search("[0-9][0-9|\.|_]+[0-9]", puptag)
+                                puptag = re.search("([0-9][\.|_]?)+", puptag)
                                 if puptag == None:
                                         continue;
                                 puptag = puptag.group()
@@ -714,6 +714,10 @@  python do_checkpkg() {
                 svncmd = "svn info %s %s://%s%s/%s/ 2>&1" % (" ".join(options), svnproto, host, path, parm["module"])
                 print svncmd
                 svninfo = os.popen(svncmd).read()
+                if "Can't connect to host " in svninfo or "Connection timed out" in svninfo:
+                        svncmd = "svn info %s %s://%s%s/%s/ 2>&1" % (" ".join(options), "http",
+                                       host, path, parm["module"])
+                        svninfo = os.popen(svncmd).read()
                 for line in svninfo.split("\n"):
                         if re.search("^Last Changed Rev:", line):
                                 pupver = line.split(" ")[-1]