mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 21:09:03 +02:00
devtool: finish/update-recipe: restrict mode srcrev to recipes fetched from SCM
When specifying --mode / -m srcrev with devtool finish/update-recipe on recipes that are not fetched from a SCM repository we get the following error: Traceback (most recent call last): [..] File "<...>/poky/meta/lib/oe/patch.py", line 49, in runcmd raise CmdError(cmd, exitstatus >> 8, "stdout: %s\nstderr: %s" % (stdout, stderr)) oe.patch.CmdError: Command Error: 'sh -c 'git format-patch --no-signature --no-numbered INVALID -o /tmp/oepatchbj7pfmzj -- .'' exited with 0 Output: stdout: stderr: fatal: bad revision 'INVALID' Fix this by adding a check and abort with a proper error message. (From OE-Core rev: 5b77f60e85d07921ae5e808daa1fd7d8c3dc40ea) Signed-off-by: Julien Stephan <jstephan@baylibre.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
d069eb3af4
commit
1ae4cc7a11
|
@ -1530,6 +1530,11 @@ def _update_recipe_srcrev(recipename, workspace, srctree, rd, appendlayerdir, wi
|
||||||
recipedir = os.path.basename(recipefile)
|
recipedir = os.path.basename(recipefile)
|
||||||
logger.info('Updating SRCREV in recipe %s%s' % (recipedir, dry_run_suffix))
|
logger.info('Updating SRCREV in recipe %s%s' % (recipedir, dry_run_suffix))
|
||||||
|
|
||||||
|
# Get original SRCREV
|
||||||
|
old_srcrev = rd.getVar('SRCREV') or ''
|
||||||
|
if old_srcrev == "INVALID":
|
||||||
|
raise DevtoolError('Update mode srcrev is only valid for recipe fetched from an SCM repository')
|
||||||
|
|
||||||
# Get HEAD revision
|
# Get HEAD revision
|
||||||
try:
|
try:
|
||||||
stdout, _ = bb.process.run('git rev-parse HEAD', cwd=srctree)
|
stdout, _ = bb.process.run('git rev-parse HEAD', cwd=srctree)
|
||||||
|
@ -1556,7 +1561,6 @@ def _update_recipe_srcrev(recipename, workspace, srctree, rd, appendlayerdir, wi
|
||||||
if not no_remove:
|
if not no_remove:
|
||||||
# Find list of existing patches in recipe file
|
# Find list of existing patches in recipe file
|
||||||
patches_dir = tempfile.mkdtemp(dir=tempdir)
|
patches_dir = tempfile.mkdtemp(dir=tempdir)
|
||||||
old_srcrev = rd.getVar('SRCREV') or ''
|
|
||||||
upd_p, new_p, del_p = _export_patches(srctree, rd, old_srcrev,
|
upd_p, new_p, del_p = _export_patches(srctree, rd, old_srcrev,
|
||||||
patches_dir)
|
patches_dir)
|
||||||
logger.debug('Patches: update %s, new %s, delete %s' % (dict(upd_p), dict(new_p), dict(del_p)))
|
logger.debug('Patches: update %s, new %s, delete %s' % (dict(upd_p), dict(new_p), dict(del_p)))
|
||||||
|
|
Loading…
Reference in New Issue
Block a user