mirror of
git://git.yoctoproject.org/layerindex-web.git
synced 2025-07-19 20:59:01 +02:00
update.py: fix last_rev handling
update_layer may create the layerbranch record (e.g. for a new branch) so we should be looking for it after that has been run. Also, we cannot assume that last_rev will get set because a layer might fail to fetch, so take that into account as well. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
This commit is contained in:
parent
05f3bccbc6
commit
6ff4ed77b4
|
@ -181,9 +181,6 @@ def main():
|
|||
repodir = os.path.join(fetchdir, urldir)
|
||||
|
||||
branchobj = utils.get_branch(branch)
|
||||
layerbranch = layer.get_layerbranch(branch)
|
||||
if layerbranch:
|
||||
last_rev[layerbranch] = layerbranch.vcs_last_rev
|
||||
|
||||
if branchobj.update_environment:
|
||||
cmdprefix = branchobj.update_environment.get_command()
|
||||
|
@ -204,6 +201,14 @@ def main():
|
|||
cmd += ' -q'
|
||||
logger.debug('Running layer update command: %s' % cmd)
|
||||
ret = run_command_interruptible(cmd)
|
||||
|
||||
# We need to get layerbranch here because it might not have existed until
|
||||
# layer_update.py created it, but it still may not create one (e.g. if subdir
|
||||
# didn't exist) so we still need to check
|
||||
layerbranch = layer.get_layerbranch(branch)
|
||||
if layerbranch:
|
||||
last_rev[layerbranch] = layerbranch.vcs_last_rev
|
||||
|
||||
if ret == 254:
|
||||
# Interrupted by user, break out of loop
|
||||
break
|
||||
|
@ -220,7 +225,10 @@ def main():
|
|||
|
||||
layerbranch = layer.get_layerbranch(branch)
|
||||
# Skip layers that did not change.
|
||||
if layerbranch and last_rev[layerbranch] == layerbranch.vcs_last_rev:
|
||||
layer_last_rev = None
|
||||
if layerbranch:
|
||||
layer_last_rev = last_rev.get(layerbranch, None)
|
||||
if layer_last_rev is None or layer_last_rev == layerbranch.vcs_last_rev:
|
||||
continue
|
||||
|
||||
urldir = layer.get_fetch_dir()
|
||||
|
|
Loading…
Reference in New Issue
Block a user