| OLD | NEW |
| 1 #!/bin/bash | 1 #!/bin/bash |
| 2 # | 2 # |
| 3 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. | 3 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. |
| 4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
| 5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
| 6 # | 6 # |
| 7 # Script which ensures that a given image has an up-to-date | 7 # Script which ensures that a given image has an up-to-date |
| 8 # kernel partition, rootfs integrity hashes, and legacy bootloader configs. | 8 # kernel partition, rootfs integrity hashes, and legacy bootloader configs. |
| 9 | 9 |
| 10 # Load common constants. This should be the first executable line. | 10 # Load common constants. This should be the first executable line. |
| (...skipping 10 matching lines...) Expand all Loading... |
| 21 assert_inside_chroot | 21 assert_inside_chroot |
| 22 | 22 |
| 23 set -e | 23 set -e |
| 24 . "$(dirname "$0")/../chromeos-common.sh" # for partoffset and partsize | 24 . "$(dirname "$0")/../chromeos-common.sh" # for partoffset and partsize |
| 25 | 25 |
| 26 if [ $# -lt 2 ]; then | 26 if [ $# -lt 2 ]; then |
| 27 echo "Usage: ${0} /PATH/TO/IMAGE IMAGE.BIN [shflags overrides]" | 27 echo "Usage: ${0} /PATH/TO/IMAGE IMAGE.BIN [shflags overrides]" |
| 28 exit 1 | 28 exit 1 |
| 29 fi | 29 fi |
| 30 | 30 |
| 31 BOOT_DESC_FILE="${1}/boot.desc" | 31 IMAGE_DIR="$(readlink -f "${1}")" |
| 32 IMAGE="${1}/${2}" | 32 BOOT_DESC_FILE="${IMAGE_DIR}/boot.desc" |
| 33 IMAGE="${IMAGE_DIR}/${2}" |
| 33 shift | 34 shift |
| 34 shift | 35 shift |
| 35 FLAG_OVERRIDES="${@}" | 36 FLAG_OVERRIDES="${@}" |
| 36 | 37 |
| 37 if [ ! -r "${BOOT_DESC_FILE}" ]; then | 38 if [ ! -r "${BOOT_DESC_FILE}" ]; then |
| 38 warn "${BOOT_DESC_FILE} cannot be read!" | 39 warn "${BOOT_DESC_FILE} cannot be read!" |
| 39 warn "Falling back to command line parsing" | 40 warn "Falling back to command line parsing" |
| 40 BOOT_DESC="${@}" | 41 BOOT_DESC="${@}" |
| 41 else | 42 else |
| 42 BOOT_DESC="$(cat ${BOOT_DESC_FILE} | tr -s '\n' ' ')" | 43 BOOT_DESC="$(cat ${BOOT_DESC_FILE} | tr -s '\n' ' ')" |
| (...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 226 --vmlinuz="${FLAGS_rootfs_mountpoint}"/boot/vmlinuz \ | 227 --vmlinuz="${FLAGS_rootfs_mountpoint}"/boot/vmlinuz \ |
| 227 --usb_disk="${usb_disk}" \ | 228 --usb_disk="${usb_disk}" \ |
| 228 ${bootloader_to_flags} \ | 229 ${bootloader_to_flags} \ |
| 229 $kernel_part | 230 $kernel_part |
| 230 | 231 |
| 231 trap - EXIT | 232 trap - EXIT |
| 232 ${SCRIPTS_DIR}/mount_gpt_image.sh -u -r "${FLAGS_rootfs_mountpoint}" \ | 233 ${SCRIPTS_DIR}/mount_gpt_image.sh -u -r "${FLAGS_rootfs_mountpoint}" \ |
| 233 -s "${FLAGS_statefulfs_mountpoint}" | 234 -s "${FLAGS_statefulfs_mountpoint}" |
| 234 } | 235 } |
| 235 | 236 |
| 237 # Use default of current image location if the output dir doesn't exist. |
| 238 if [ ! -d ${FLAGS_output_dir} ]; then |
| 239 warn "Output dir not found, using ${IMAGE_DIR}." |
| 240 FLAGS_output_dir="${IMAGE_DIR}" |
| 241 FLAGS_rootfs_hash="${IMAGE_DIR}/rootfs.hash" |
| 242 FLAGS_rootfs_mountpoint="${IMAGE_DIR}/rootfs_dir" |
| 243 FLAGS_statefulfs_mountpoint="${IMAGE_DIR}/stateful_dir" |
| 244 FLAGS_espfs_mountpoint="${IMAGE_DIR}/esp" |
| 245 fi |
| 246 |
| 236 # Create the directories if they don't exist. | 247 # Create the directories if they don't exist. |
| 237 mkdir -p ${FLAGS_rootfs_mountpoint} | 248 mkdir -p ${FLAGS_rootfs_mountpoint} |
| 238 mkdir -p ${FLAGS_statefulfs_mountpoint} | 249 mkdir -p ${FLAGS_statefulfs_mountpoint} |
| 239 mkdir -p ${FLAGS_espfs_mountpoint} | 250 mkdir -p ${FLAGS_espfs_mountpoint} |
| 240 | 251 |
| 241 make_image_bootable ${IMAGE} | 252 make_image_bootable ${IMAGE} |
| 242 | 253 |
| 243 if [ ${FLAGS_cleanup_dirs} -eq ${FLAGS_TRUE} ]; then | 254 if [ ${FLAGS_cleanup_dirs} -eq ${FLAGS_TRUE} ]; then |
| 244 rmdir ${FLAGS_rootfs_mountpoint} | 255 rmdir ${FLAGS_rootfs_mountpoint} |
| 245 rmdir ${FLAGS_statefulfs_mountpoint} | 256 rmdir ${FLAGS_statefulfs_mountpoint} |
| 246 rmdir ${FLAGS_espfs_mountpoint} | 257 rmdir ${FLAGS_espfs_mountpoint} |
| 247 fi | 258 fi |
| OLD | NEW |