mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 12:59:02 +02:00
bitbake: fetch2/git: prevent access to non-existing clonedir
A user friendly error is throw when neither the clonedir nor fullshallow exist. Without the check, a difficult to interpret error is throw from within the fetch command. (Bitbake rev: 30cf2506007d25162f0805051212f54c39034ff3) Signed-off-by: Urs Fässler <urs.fassler@bbv.ch> Signed-off-by: Pascal Bach <pascal.bach@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
49f25eceeb
commit
0d4fe0602e
|
@ -479,8 +479,10 @@ class Git(FetchMethod):
|
|||
if ud.shallow and os.path.exists(ud.fullshallow) and self.clonedir_need_update(ud, d):
|
||||
bb.utils.mkdirhier(destdir)
|
||||
runfetchcmd("tar -xzf %s" % ud.fullshallow, d, workdir=destdir)
|
||||
else:
|
||||
elif not self.clonedir_need_update(ud, d):
|
||||
runfetchcmd("%s clone %s %s/ %s" % (ud.basecmd, ud.cloneflags, ud.clonedir, destdir), d)
|
||||
else:
|
||||
raise bb.fetch2.UnpackError("No up to date source found", ud.url)
|
||||
|
||||
repourl = self._get_repo_url(ud)
|
||||
runfetchcmd("%s remote set-url origin %s" % (ud.basecmd, repourl), d, workdir=destdir)
|
||||
|
|
|
@ -1699,6 +1699,17 @@ class GitShallowTest(FetcherTest):
|
|||
self.assertRefs(['master', 'origin/master'])
|
||||
self.assertRevCount(orig_revs - 1758)
|
||||
|
||||
def test_that_unpack_throws_an_error_when_the_git_clone_nor_shallow_tarball_exist(self):
|
||||
self.add_empty_file('a')
|
||||
fetcher, ud = self.fetch()
|
||||
bb.utils.remove(self.gitdir, recurse=True)
|
||||
bb.utils.remove(self.dldir, recurse=True)
|
||||
|
||||
with self.assertRaises(bb.fetch2.UnpackError) as context:
|
||||
fetcher.unpack(self.d.getVar('WORKDIR'))
|
||||
|
||||
self.assertTrue("No up to date source found" in context.exception.msg)
|
||||
|
||||
@skipIfNoNetwork()
|
||||
def test_that_unpack_does_work_when_using_git_shallow_tarball_but_tarball_is_not_available(self):
|
||||
self.d.setVar('SRCREV', 'e5939ff608b95cdd4d0ab0e1935781ab9a276ac0')
|
||||
|
|
Loading…
Reference in New Issue
Block a user