From ae788fbd46f8a83d4c1776eeb4457ed5bb61915f Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Tue, 22 Sep 2015 17:21:24 +0100 Subject: devtool: check that source tree still exists Sometimes, particularly if you extracted the source to /tmp which is on tmpfs, the external source tree that is being pointed to may no longer exist when you come to run "devtool build" or "devtool update-recipe" etc. Make all of the commands that need to check for a recipe being in the workspace call a single function and have that function additionally check the source tree still exists where appropriate. (From OE-Core rev: 0c3f289576a2ab35b1d1d8854d6763553cc3bf09) Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- scripts/lib/devtool/standard.py | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) (limited to 'scripts/lib/devtool/standard.py') diff --git a/scripts/lib/devtool/standard.py b/scripts/lib/devtool/standard.py index d5900b4f82..018ef2a987 100644 --- a/scripts/lib/devtool/standard.py +++ b/scripts/lib/devtool/standard.py @@ -25,7 +25,7 @@ import logging import argparse import scriptutils import errno -from devtool import exec_build_env_command, setup_tinfoil, DevtoolError +from devtool import exec_build_env_command, setup_tinfoil, check_workspace_recipe, DevtoolError from devtool import parse_recipe logger = logging.getLogger('devtool') @@ -776,9 +776,7 @@ def _guess_recipe_update_mode(srctree, rdata): def update_recipe(args, config, basepath, workspace): """Entry point for the devtool 'update-recipe' subcommand""" - if not args.recipename in workspace: - raise DevtoolError("no recipe named %s in your workspace" % - args.recipename) + check_workspace_recipe(workspace, args.recipename) if args.append: if not os.path.exists(args.append): @@ -830,9 +828,8 @@ def reset(args, config, basepath, workspace): if args.recipename: if args.all: raise DevtoolError("Recipe cannot be specified if -a/--all is used") - elif not args.recipename in workspace: - raise DevtoolError("no recipe named %s in your workspace" % - args.recipename) + else: + check_workspace_recipe(workspace, args.recipename, checksrc=False) elif not args.all: raise DevtoolError("Recipe must be specified, or specify -a/--all to " "reset all recipes") -- cgit v1.2.3-54-g00ecf