Move 'CheckPrerequisites' into osutils.py so that it can be reused.
BUG=none
TEST=All unit tests. cros_sdk and cbuildbot sample runs. Example runs
where binaries are missing.
Change-Id: Id954050c399b0d38de307e2a9db1ba2c91fd0693
Reviewed-on: https://gerrit.chromium.org/gerrit/36731
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Commit-Ready: David James <davidjames@chromium.org>
Tested-by: David James <davidjames@chromium.org>
diff --git a/scripts/cbuildbot.py b/scripts/cbuildbot.py
index 6ca982c..924000f 100644
--- a/scripts/cbuildbot.py
+++ b/scripts/cbuildbot.py
@@ -1163,14 +1163,7 @@
parser.error('Option --buildbot/--remote-trybot was given, but this '
'system does not support cgroups. Failing.')
- missing = []
- for program in _BUILDBOT_REQUIRED_BINARIES:
- ret = cros_build_lib.RunCommand(
- 'which %s' % program, shell=True, redirect_stderr=True,
- redirect_stdout=True, error_code_ok=True, print_cmd=False)
- if ret.returncode != 0:
- missing.append(program)
-
+ missing = osutils.FindMissingBinaries(_BUILDBOT_REQUIRED_BINARIES)
if missing:
parser.error("Option --buildbot/--remote-trybot requires the following "
"binaries which couldn't be found in $PATH: %s"