Patchwork [bitbake-devel,1/2] fetch2/git: Allow file:// URLs without checking for network access

login
register
mail settings
Submitter Jeff Polk
Date May 4, 2012, 2:05 p.m.
Message ID <1336140315-5171-1-git-send-email-jeff.polk@windriver.com>
Download mbox | patch
Permalink /patch/27069/
State Accepted
Commit d5847bc5254b9d2f28a6b574f6157d1286add27c
Headers show

Comments

Jeff Polk - May 4, 2012, 2:05 p.m.
Don't check for network access before grabbing the the current head,
cloning, or updating a clone when the protocol is 'file'.

Signed-off-by: Jeff Polk <jeff.polk@windriver.com>
---
 lib/bb/fetch2/git.py |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)
Richard Purdie - May 4, 2012, 3:16 p.m.
On Fri, 2012-05-04 at 08:05 -0600, Jeff Polk wrote:
> Don't check for network access before grabbing the the current head,
> cloning, or updating a clone when the protocol is 'file'.
> 
> Signed-off-by: Jeff Polk <jeff.polk@windriver.com>
> ---
>  lib/bb/fetch2/git.py |    9 ++++++---
>  1 files changed, 6 insertions(+), 3 deletions(-)

Merged to master (along with 2/2), thanks.

Richard

Patch

diff --git a/lib/bb/fetch2/git.py b/lib/bb/fetch2/git.py
index 61fdc4b..bcc0da5 100644
--- a/lib/bb/fetch2/git.py
+++ b/lib/bb/fetch2/git.py
@@ -184,7 +184,8 @@  class Git(FetchMethod):
         # If the repo still doesn't exist, fallback to cloning it
         if not os.path.exists(ud.clonedir):
             clone_cmd = "%s clone --bare --mirror %s %s" % (ud.basecmd, repourl, ud.clonedir)
-            bb.fetch2.check_network_access(d, clone_cmd)
+            if ud.proto.lower() != 'file':
+                bb.fetch2.check_network_access(d, clone_cmd)
             runfetchcmd(clone_cmd, d)
 
         os.chdir(ud.clonedir)
@@ -202,7 +203,8 @@  class Git(FetchMethod):
 
             runfetchcmd("%s remote add --mirror=fetch origin %s" % (ud.basecmd, repourl), d)
             fetch_cmd = "%s fetch -f --prune %s refs/*:refs/*" % (ud.basecmd, repourl)
-            bb.fetch2.check_network_access(d, fetch_cmd, ud.url)
+            if ud.proto.lower() != 'file':
+                bb.fetch2.check_network_access(d, fetch_cmd, ud.url)
             runfetchcmd(fetch_cmd, d)
             runfetchcmd("%s prune-packed" % ud.basecmd, d)
             runfetchcmd("%s pack-redundant --all | xargs -r rm" % ud.basecmd, d)
@@ -281,7 +283,8 @@  class Git(FetchMethod):
         basecmd = data.getVar("FETCHCMD_git", d, True) or "git"
         cmd = "%s ls-remote %s://%s%s%s %s" % \
               (basecmd, ud.proto, username, ud.host, ud.path, ud.branches[name])
-        bb.fetch2.check_network_access(d, cmd)
+        if ud.proto.lower() != 'file':
+            bb.fetch2.check_network_access(d, cmd)
         output = runfetchcmd(cmd, d, True)
         if not output:
             raise bb.fetch2.FetchError("The command %s gave empty output unexpectedly" % cmd, url)