mirror of
git://git.yoctoproject.org/layerindex-web.git
synced 2025-07-19 20:59:01 +02:00
update_layer.py: only call init_parser when needed
tinfoil is not needed in cases like the layer is already up-to-date or the layer is invalid, so only init it when needed. This can save about 1min when run "update.py -b <branch>" (124 layers). Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
This commit is contained in:
parent
6bf6794169
commit
d27abc10ba
|
@ -301,22 +301,8 @@ def main():
|
||||||
logger.info("Skipping update of layer %s - branch %s doesn't exist" % (layer.name, branchdesc))
|
logger.info("Skipping update of layer %s - branch %s doesn't exist" % (layer.name, branchdesc))
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
try:
|
tinfoil = None
|
||||||
(tinfoil, tempdir) = recipeparse.init_parser(settings, branch, bitbakepath, nocheckout=options.nocheckout, logger=logger)
|
tempdir = None
|
||||||
except recipeparse.RecipeParseError as e:
|
|
||||||
logger.error(str(e))
|
|
||||||
sys.exit(1)
|
|
||||||
logger.debug('Using temp directory %s' % tempdir)
|
|
||||||
# Clear the default value of SUMMARY so that we can use DESCRIPTION instead if it hasn't been set
|
|
||||||
tinfoil.config_data.setVar('SUMMARY', '')
|
|
||||||
# Clear the default value of DESCRIPTION so that we can see where it's not set
|
|
||||||
tinfoil.config_data.setVar('DESCRIPTION', '')
|
|
||||||
# Clear the default value of HOMEPAGE ('unknown')
|
|
||||||
tinfoil.config_data.setVar('HOMEPAGE', '')
|
|
||||||
# Set a blank value for LICENSE so that it doesn't cause the parser to die (e.g. with meta-ti -
|
|
||||||
# why won't they just fix that?!)
|
|
||||||
tinfoil.config_data.setVar('LICENSE', '')
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
with transaction.atomic():
|
with transaction.atomic():
|
||||||
newbranch = False
|
newbranch = False
|
||||||
|
@ -380,6 +366,21 @@ def main():
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
logger.info("Collecting data for layer %s on branch %s" % (layer.name, branchdesc))
|
logger.info("Collecting data for layer %s on branch %s" % (layer.name, branchdesc))
|
||||||
|
try:
|
||||||
|
(tinfoil, tempdir) = recipeparse.init_parser(settings, branch, bitbakepath, nocheckout=options.nocheckout, logger=logger)
|
||||||
|
except recipeparse.RecipeParseError as e:
|
||||||
|
logger.error(str(e))
|
||||||
|
sys.exit(1)
|
||||||
|
logger.debug('Using temp directory %s' % tempdir)
|
||||||
|
# Clear the default value of SUMMARY so that we can use DESCRIPTION instead if it hasn't been set
|
||||||
|
tinfoil.config_data.setVar('SUMMARY', '')
|
||||||
|
# Clear the default value of DESCRIPTION so that we can see where it's not set
|
||||||
|
tinfoil.config_data.setVar('DESCRIPTION', '')
|
||||||
|
# Clear the default value of HOMEPAGE ('unknown')
|
||||||
|
tinfoil.config_data.setVar('HOMEPAGE', '')
|
||||||
|
# Set a blank value for LICENSE so that it doesn't cause the parser to die (e.g. with meta-ti -
|
||||||
|
# why won't they just fix that?!)
|
||||||
|
tinfoil.config_data.setVar('LICENSE', '')
|
||||||
|
|
||||||
layerconfparser = layerconfparse.LayerConfParse(logger=logger, tinfoil=tinfoil)
|
layerconfparser = layerconfparse.LayerConfParse(logger=logger, tinfoil=tinfoil)
|
||||||
layer_config_data = layerconfparser.parse_layer(layerdir)
|
layer_config_data = layerconfparser.parse_layer(layerdir)
|
||||||
|
@ -748,14 +749,15 @@ def main():
|
||||||
import traceback
|
import traceback
|
||||||
traceback.print_exc()
|
traceback.print_exc()
|
||||||
finally:
|
finally:
|
||||||
if LooseVersion(bb.__version__) > LooseVersion("1.27"):
|
if tinfoil and (LooseVersion(bb.__version__) > LooseVersion("1.27")):
|
||||||
tinfoil.shutdown()
|
tinfoil.shutdown()
|
||||||
|
|
||||||
if options.keep_temp:
|
if tempdir:
|
||||||
logger.debug('Preserving temp directory %s' % tempdir)
|
if options.keep_temp:
|
||||||
else:
|
logger.debug('Preserving temp directory %s' % tempdir)
|
||||||
logger.debug('Deleting temp directory')
|
else:
|
||||||
shutil.rmtree(tempdir)
|
logger.debug('Deleting temp directory')
|
||||||
|
shutil.rmtree(tempdir)
|
||||||
sys.exit(0)
|
sys.exit(0)
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user