Index: bin/cros_run_vm_test |
diff --git a/bin/cros_run_vm_test b/bin/cros_run_vm_test |
index c583a462cf594b43896beffc9970f851952c66ef..8c7f68f97323cb313ff7db290fa87f03f13a52b0 100755 |
--- a/bin/cros_run_vm_test |
+++ b/bin/cros_run_vm_test |
@@ -6,9 +6,30 @@ |
# |
# Runs a given test case under a VM. |
-. "$(dirname $0)/../common.sh" |
-. "$(dirname $0)/../lib/cros_vm_lib.sh" |
-. "$(dirname "$0")/../lib/cros_vm_constants.sh" |
+# --- BEGIN COMMON.SH BOILERPLATE --- |
+# Load common CrOS utilities. Inside the chroot this file is installed in |
+# /usr/lib/crosutils. Outside the chroot we find it relative to the script's |
+# location. |
+find_common_sh() { |
+ local common_paths=(/usr/lib/crosutils "$(dirname "$(readlink -f "$0")")/..") |
+ local path |
+ |
+ SCRIPT_ROOT= |
+ for path in "${common_paths[@]}"; do |
+ if [ -r "${path}/common.sh" ]; then |
+ SCRIPT_ROOT=${path} |
+ break |
+ fi |
+ done |
+} |
+ |
+find_common_sh |
+. "${SCRIPT_ROOT}/common.sh" || (echo "Unable to load common.sh" && exit 1) |
+# --- END COMMON.SH BOILERPLATE --- |
+ |
+. "${SCRIPT_ROOT}/lib/cros_vm_lib.sh" || die "Unable to load cros_vm_lib.sh" |
+. "${SCRIPT_ROOT}/lib/cros_vm_constants.sh" || \ |
+ die "Unable to load cros_vm_constants.sh" |
MAX_RETRIES=3 |
@@ -73,7 +94,7 @@ retry_until_ssh ${MAX_RETRIES} |
if [ -n "${FLAGS_verify_chrome_version}" ]; then |
info "Verifying version of Chrome matches what we expect." |
if chrome_version_is_valid "${FLAGS_verify_chrome_version}"; then |
- chrome_version_on_vm=$("$(dirname $0)/cros_get_chrome_version" \ |
+ chrome_version_on_vm=$("${SCRIPTS_DIR}/bin/cros_get_chrome_version" \ |
--remote=127.0.0.1 \ |
--ssh_port=${FLAGS_ssh_port}) |
[[ ${chrome_version_on_vm} == ${FLAGS_verify_chrome_version} ]] || \ |
@@ -83,7 +104,7 @@ if [ -n "${FLAGS_verify_chrome_version}" ]; then |
fi |
fi |
-"$(dirname $0)"/../run_remote_tests.sh \ |
+"${SCRIPTS_DIR}/run_remote_tests.sh" \ |
--board=${FLAGS_board} \ |
--ssh_port=${FLAGS_ssh_port} \ |
--remote=127.0.0.1 \ |