Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1218)

Unified Diff: mod_image_for_test.sh

Issue 6240018: This starts to fix the scripts so that they load from /usr/lib/crosutils (Closed) Base URL: http://git.chromium.org/git/crosutils.git@master
Patch Set: fixing bad merge Created 9 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « mod_image_for_recovery.sh ('k') | mount_gpt_image.sh » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: mod_image_for_test.sh
diff --git a/mod_image_for_test.sh b/mod_image_for_test.sh
index 97aa5e0cc7c3dddd686a04d84b1b4d63cb853490..f9fec77c33112b8bf72d163466144d137a40b0d6 100755
--- a/mod_image_for_test.sh
+++ b/mod_image_for_test.sh
@@ -6,16 +6,34 @@
# Script to modify a keyfob-based chromeos system image for testability.
-# Load common constants. This should be the first executable line.
-# The path to common.sh should be relative to your script's location.
-. "$(dirname "$0")/common.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
+}
-# Load functions and constants for chromeos-install
-. "$(dirname "$0")/chromeos-common.sh"
+find_common_sh
+. "${SCRIPT_ROOT}/common.sh" || (echo "Unable to load common.sh" && exit 1)
+# --- END COMMON.SH BOILERPLATE ---
-# We need to be in the chroot to emerge test packages.
+# Need to be inside the chroot to load chromeos-common.sh
assert_inside_chroot
+# Load functions and constants for chromeos-install
+. "/usr/lib/installer/chromeos-common.sh" || \
+ die "Unable to load /usr/lib/installer/chromeos-common.sh"
+
get_default_board
DEFINE_string board "$DEFAULT_BOARD" "Board for which the image was built" b
@@ -92,8 +110,7 @@ cleanup_mounts() {
# root/stateful image file system open. We do a best effort attempt to kill
# them.
PIDS=`sudo lsof -t "$1" | sort | uniq`
- for pid in ${PIDS}
- do
+ for pid in ${PIDS}; do
local cmdline=`cat /proc/$pid/cmdline`
echo "Killing process that has open file on the mounted directory: $cmdline"
sudo kill $pid || /bin/true
@@ -169,11 +186,11 @@ fi
set -e
-IMAGE_DIR="$(dirname "$FLAGS_image")"
+IMAGE_DIR=$(dirname "$FLAGS_image")
IMAGE_NAME="$(basename "$FLAGS_image")"
ROOT_FS_DIR="$IMAGE_DIR/rootfs"
STATEFUL_DIR="$IMAGE_DIR/stateful_partition"
-SCRIPTS_DIR=$(dirname "$0")
+SCRIPTS_DIR=${SCRIPT_ROOT}
DEV_USER="chronos"
trap cleanup EXIT
@@ -229,7 +246,7 @@ fi
cleanup
# Now make it bootable with the flags from build_image
-${SCRIPTS_DIR}/bin/cros_make_image_bootable $(dirname "${FLAGS_image}") \
+"${SCRIPTS_DIR}/bin/cros_make_image_bootable" "$(dirname "${FLAGS_image}")" \
$(basename "${FLAGS_image}")
print_time_elapsed
« no previous file with comments | « mod_image_for_recovery.sh ('k') | mount_gpt_image.sh » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698