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

Side by Side Diff: cros_sign_to_ssd

Issue 6368069: factory-utils: add factory scripts from crosutils (copy only) (Closed) Base URL: ssh://git.chromium.org/factory-utils@master
Patch Set: Fixes Created 9 years, 10 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 unified diff | Download patch
« no previous file with comments | « no previous file | make_factory_package.sh » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 #!/bin/bash
2
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
5 # found in the LICENSE file.
6
7 # Script to resign the kernel partition generated in the output of build_image
8 # with SSD keys.
9
10 # --- BEGIN COMMON.SH BOILERPLATE ---
11 # Load common CrOS utilities. Inside the chroot this file is installed in
12 # /usr/lib/crosutils. Outside the chroot we find it relative to the script's
13 # location.
14 find_common_sh() {
15 local common_paths=(/usr/lib/crosutils "$(dirname "$(readlink -f "$0")")/..")
16 local path
17
18 SCRIPT_ROOT=
19 for path in "${common_paths[@]}"; do
20 if [ -r "${path}/common.sh" ]; then
21 SCRIPT_ROOT=${path}
22 break
23 fi
24 done
25 }
26
27 find_common_sh
28 . "${SCRIPT_ROOT}/common.sh" || (echo "Unable to load common.sh" && exit 1)
29 # --- END COMMON.SH BOILERPLATE ---
30
31 # Need to be inside the chroot to load chromeos-common.sh
32 assert_inside_chroot
33
34 # Load functions and constants for chromeos-install
35 . "/usr/lib/installer/chromeos-common.sh" || \
36 die "Unable to load /usr/lib/installer/chromeos-common.sh"
37
38 locate_gpt
39
40 DEFINE_string from "chromiumos_image.bin" \
41 "Input file name of Chrome OS image to re-sign."
42
43 # Parse command line
44 FLAGS "$@" || exit 1
45 eval set -- "${FLAGS_ARGV}"
46
47 failure() {
48 echo "SIGNING HAD FAILED"
49 exit 1
50 }
51
52 # Abort on error
53 set -e
54
55 trap "failure" EXIT
56
57 if [ -z "${FLAGS_from}" ] || [ ! -f "${FLAGS_from}" ] ; then
58 echo "Error: invalid flag --from"
59 exit 1
60 fi
61
62 # Example commandline is as follows:
63 # ./sign_official_build.sh \
64 # ssd \
65 # /.../build/images/x86-mario/0.8.68.2/chromiumos_test_image.bin \
66 # ../../tests/devkeys/ \
67 # /.../build/images/x86-mario/0.8.68.2/chromiumos_test_ssd_image.bin
68
69 VBOOT_DIR="${SRC_ROOT}/platform/vboot_reference"
70 if [ ! -d "${VBOOT_DIR}" ]; then
71 die "VBOOT DIR NOT FOUND at \'${VBOOT_DIR}\' .."
72 fi
73
74 TMP_IMAGE=$(mktemp)
75 VBOOT_KEYS="${VBOOT_DIR}/tests/devkeys"
76 if [ ! -d "${VBOOT_KEYS}" ]; then
77 die "VBOOT KEYS NOT FOUND at \'${VBOOT_KEYS}\' .."
78 fi
79
80 VBOOT_SIGN="${VBOOT_DIR}/scripts/image_signing/sign_official_build.sh"
81 if [ ! -x "${VBOOT_SIGN}" ]; then
82 die "VBOOT TOOL sign_official_build.sh NOT FOUND at \'${VBOOT_SIGN}\' .."
83 fi
84
85 cp "${FLAGS_from}" "${TMP_IMAGE}"
86
87 ${VBOOT_SIGN} ssd "${TMP_IMAGE}" "${VBOOT_KEYS}" "${FLAGS_from}"
88
89 rm "${TMP_IMAGE}"
90
91 set +e
92 trap - EXIT
OLDNEW
« no previous file with comments | « no previous file | make_factory_package.sh » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698