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

Side by Side Diff: image_to_live.sh

Issue 4208003: crosutils: Always pass an image to devserver so it can pregenerate (Closed) Base URL: http://git.chromium.org/git/crosutils.git
Patch Set: Created 10 years, 1 month 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/bin/bash 1 #!/bin/bash
2 2
3 # Copyright (c) 2009-2010 The Chromium OS Authors. All rights reserved. 3 # Copyright (c) 2009-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 to update an image onto a live running ChromiumOS instance. 7 # Script to update an image onto a live running ChromiumOS instance.
8 8
9 # Load common constants. This should be the first executable line. 9 # Load common constants. This should be the first executable line.
10 # The path to common.sh should be relative to your script's location. 10 # The path to common.sh should be relative to your script's location.
(...skipping 12 matching lines...) Expand all
23 "Perform update of root partition." 23 "Perform update of root partition."
24 DEFINE_boolean update_known_hosts ${FLAGS_FALSE} \ 24 DEFINE_boolean update_known_hosts ${FLAGS_FALSE} \
25 "Update your known_hosts with the new remote instance's key." 25 "Update your known_hosts with the new remote instance's key."
26 DEFINE_string update_log "update_engine.log" \ 26 DEFINE_string update_log "update_engine.log" \
27 "Path to log for the update_engine." 27 "Path to log for the update_engine."
28 DEFINE_boolean verify ${FLAGS_TRUE} "Verify image on device after update." 28 DEFINE_boolean verify ${FLAGS_TRUE} "Verify image on device after update."
29 29
30 # Flags for devserver. 30 # Flags for devserver.
31 DEFINE_string archive_dir "" \ 31 DEFINE_string archive_dir "" \
32 "Update using the test image in the image.zip in this directory." a 32 "Update using the test image in the image.zip in this directory." a
33 DEFINE_string board "" "Override the board reported by the target"
33 DEFINE_integer devserver_port 8080 \ 34 DEFINE_integer devserver_port 8080 \
34 "Port to use for devserver." 35 "Port to use for devserver."
35 DEFINE_string image "" \ 36 DEFINE_string image "" \
36 "Update with this image path that is in this source checkout." i 37 "Update with this image path that is in this source checkout." i
37 DEFINE_string src_image "" \ 38 DEFINE_string src_image "" \
38 "Create a delta update by passing in the image on the remote machine." 39 "Create a delta update by passing in the image on the remote machine."
39 DEFINE_boolean update_stateful ${FLAGS_TRUE} \ 40 DEFINE_boolean update_stateful ${FLAGS_TRUE} \
40 "Perform update of stateful partition e.g. /var /usr/local." 41 "Perform update of stateful partition e.g. /var /usr/local."
41 DEFINE_string update_url "" "Full url of an update image." 42 DEFINE_string update_url "" "Full url of an update image."
42 43
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
116 devserver_flags="${devserver_flags} \ 117 devserver_flags="${devserver_flags} \
117 --image $(reinterpret_path_for_chroot ${FLAGS_image})" 118 --image $(reinterpret_path_for_chroot ${FLAGS_image})"
118 IMAGE_PATH="${FLAGS_image}" 119 IMAGE_PATH="${FLAGS_image}"
119 elif [ -n "${FLAGS_archive_dir}" ]; then 120 elif [ -n "${FLAGS_archive_dir}" ]; then
120 devserver_flags="${devserver_flags} \ 121 devserver_flags="${devserver_flags} \
121 --archive_dir $(reinterpret_path_for_chroot ${FLAGS_archive_dir}) -t" 122 --archive_dir $(reinterpret_path_for_chroot ${FLAGS_archive_dir}) -t"
122 IMAGE_PATH="${FLAGS_archive_dir}/chromiumos_test_image.bin" 123 IMAGE_PATH="${FLAGS_archive_dir}/chromiumos_test_image.bin"
123 else 124 else
124 # IMAGE_PATH should be the newest image and learn the board from 125 # IMAGE_PATH should be the newest image and learn the board from
125 # the target. 126 # the target.
126 FLAGS_board=""
127 learn_board 127 learn_board
128 IMAGE_PATH="$($(dirname "$0")/get_latest_image.sh --board="${FLAGS_board}")" 128 IMAGE_PATH="$($(dirname "$0")/get_latest_image.sh --board="${FLAGS_board}")"
129 IMAGE_PATH="${IMAGE_PATH}/chromiumos_image.bin" 129 IMAGE_PATH="${IMAGE_PATH}/chromiumos_image.bin"
130 devserver_flags="${devserver_flags} \
131 --image $(reinterpret_path_for_chroot ${IMAGE_PATH})"
130 fi 132 fi
131 133
132 devserver_flags="${devserver_flags} \ 134 devserver_flags="${devserver_flags} \
133 --src_image=\"$(reinterpret_path_for_chroot ${FLAGS_src_image})\"" 135 --src_image=\"$(reinterpret_path_for_chroot ${FLAGS_src_image})\""
134 136
135 info "Starting devserver with flags ${devserver_flags}" 137 info "Starting devserver with flags ${devserver_flags}"
136 ./enter_chroot.sh "sudo ./start_devserver ${devserver_flags} \ 138 ./enter_chroot.sh "sudo ./start_devserver ${devserver_flags} \
137 --client_prefix=ChromeOSUpdateEngine \ 139 --client_prefix=ChromeOSUpdateEngine \
138 --port=${FLAGS_devserver_port} > ${FLAGS_server_log} 2>&1" & 140 --port=${FLAGS_devserver_port} > ${FLAGS_server_log} 2>&1" &
139 141
140 info "Waiting on devserver to start" 142 info "Waiting on devserver to start"
141 info "note: be patient as the server generates the update before starting." 143 info "note: be patient as the server generates the update before starting."
142 until netstat -anp 2>&1 | grep 0.0.0.0:${FLAGS_devserver_port} > /dev/null 144 until netstat -anp 2>&1 | grep 0.0.0.0:${FLAGS_devserver_port} > /dev/null
143 do 145 do
144 sleep 5 146 sleep 5
145 echo -n "." 147 echo -n "."
148 if ! pgrep -f start_devserver > /dev/null; then
149 echo "Devserver failed, see dev_server.log."
150 exit 1
151 fi
146 done 152 done
147 echo "" 153 echo ""
148 } 154 }
149 155
150 # Copies stateful update script which fetches the newest stateful update 156 # Copies stateful update script which fetches the newest stateful update
151 # from the dev server and prepares the update. chromeos_startup finishes 157 # from the dev server and prepares the update. chromeos_startup finishes
152 # the update on next boot. 158 # the update on next boot.
153 function run_stateful_update { 159 function run_stateful_update {
154 local dev_url=$(get_devserver_url) 160 local dev_url=$(get_devserver_url)
155 local stateful_url="" 161 local stateful_url=""
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after
384 local release_description=$(echo ${REMOTE_OUT} | cut -d '=' -f 2) 390 local release_description=$(echo ${REMOTE_OUT} | cut -d '=' -f 2)
385 info "Update was successful and rebooted to $release_description" 391 info "Update was successful and rebooted to $release_description"
386 fi 392 fi
387 393
388 print_time_elapsed 394 print_time_elapsed
389 395
390 exit 0 396 exit 0
391 } 397 }
392 398
393 main $@ 399 main $@
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698