]> code.ossystems Code Review - openembedded-core.git/commitdiff
recipetool: create: fix handling of github URLs
authorPaul Eggleton <paul.eggleton@linux.intel.com>
Wed, 6 Jul 2016 23:57:07 +0000 (11:57 +1200)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 8 Nov 2016 23:03:16 +0000 (23:03 +0000)
For a while now, Github hasn't been advertising a specific repository
URL since cloning the web URL with git works. Armed with this knowledge
and fully expecting people to just paste the github URL, we need to
handle this situation specially. If it looks like a github URL to the
root of a repository then treat it as a git repository instead of a
normal https URL to be fetched by the wget fetcher.

(From OE-Core rev: 7998dc3597657229507e5c140fceef1e485ac402)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
scripts/lib/recipetool/create.py

index aade40b5a829fa595b19fd1637460a4aeae74197..9340c4fb5aea8a4427e4a32b0cfe81de732eb886 100644 (file)
@@ -320,7 +320,7 @@ def supports_srcrev(uri):
 def reformat_git_uri(uri):
     '''Convert any http[s]://....git URI into git://...;protocol=http[s]'''
     checkuri = uri.split(';', 1)[0]
-    if checkuri.endswith('.git') or '/git/' in checkuri:
+    if checkuri.endswith('.git') or '/git/' in checkuri or re.match('https?://github.com/[^/]+/[^/]+/?', checkuri):
         res = re.match('(https?)://([^;]+(\.git)?)(;.*)?$', uri)
         if res:
             # Need to switch the URI around so that the git fetcher is used