diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-02-28 17:22:54 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-03-02 17:25:29 +0000 |
commit | 1aab9c797d4743f13682c6472e21da0a536056e6 (patch) | |
tree | 2b4115e129bd127f27771da6c2bfef6d9bacd362 /bitbake/lib/bb/fetch2 | |
parent | 4b048ac882a265e0da73faeac31cedba96c4a811 (diff) | |
download | ast2050-yocto-poky-1aab9c797d4743f13682c6472e21da0a536056e6.zip ast2050-yocto-poky-1aab9c797d4743f13682c6472e21da0a536056e6.tar.gz |
bitbake: fetch/git: Separate out an ls-remote function
There is other code which can want to run ls-remote style commands with
different parameters so split out the function.
(Bitbake rev: 13f1138f5504feee0ee8e8f3a0675d0bea490351)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/fetch2')
-rw-r--r-- | bitbake/lib/bb/fetch2/git.py | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/bitbake/lib/bb/fetch2/git.py b/bitbake/lib/bb/fetch2/git.py index f7c26b3..9ca2442 100644 --- a/bitbake/lib/bb/fetch2/git.py +++ b/bitbake/lib/bb/fetch2/git.py @@ -317,22 +317,30 @@ class Git(FetchMethod): """ return "git:" + ud.host + ud.path.replace('/', '.') + ud.unresolvedrev[name] - def _latest_revision(self, ud, d, name): + def _lsremote(self, ud, d, search): """ - Compute the HEAD revision for the url + Run git ls-remote with the specified search string """ if ud.user: username = ud.user + '@' else: username = "" - cmd = "%s ls-remote %s://%s%s%s refs/heads/%s refs/tags/%s^{}" % \ - (ud.basecmd, ud.proto, username, ud.host, ud.path, ud.unresolvedrev[name], ud.unresolvedrev[name]) + cmd = "%s ls-remote %s://%s%s%s %s" % \ + (ud.basecmd, ud.proto, username, ud.host, ud.path, search) 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, ud.url) + return output + + def _latest_revision(self, ud, d, name): + """ + Compute the HEAD revision for the url + """ + search = "refs/heads/%s refs/tags/%s^{}" % (ud.unresolvedrev[name], ud.unresolvedrev[name]) + output = self._lsremote(ud, d, search) return output.split()[0] def _build_revision(self, ud, d, name): |