Chromium Code Reviews| Index: stateful_update |
| diff --git a/stateful_update b/stateful_update |
| index 0c1bd004ede529ac3f8398c11b51ace174066b40..ac7fdc50aa342a72d7e24cce0be2c86d36b69b03 100755 |
| --- a/stateful_update |
| +++ b/stateful_update |
| @@ -34,7 +34,7 @@ update_dev_image () { |
| else |
| if [ -f "${STATEFUL_DIR}${LSB_RELEASE}" ]; then |
| DEVSERVER_URL=$(grep CHROMEOS_DEVSERVER ${STATEFUL_DIR}${LSB_RELEASE} | \ |
|
petkov
2011/03/04 23:31:57
no need for trailing \
|
| - cut -f 2 -d '=') |
| + cut -f 2 -d '=') |
| fi |
| if [ -z "${DEVSERVER_URL}" ]; then |
| DEVSERVER_URL=$(grep CHROMEOS_DEVSERVER ${LSB_RELEASE} | cut -f 2 -d '=') |
| @@ -56,33 +56,35 @@ update_dev_image () { |
| tar --ignore-command-error --overwrite --directory=${STATEFUL_DIR} -xz |
| echo >&2 "Successfully downloaded update" |
| - if [ -d "${STATEFUL_DIR}/var_new" ] && [ -d "${STATEFUL_DIR}/dev_image_new" ] |
| - then |
| - echo >&2 "Notifying startup that an update is available" |
| - touch "${STATEFUL_DIR}/.update_available" |
| - else |
| - echo >&2 "No update available" |
| + if [ ! -d "${STATEFUL_DIR}/var_new" ] || \ |
|
petkov
2011/03/04 23:31:57
no need for trailing \
|
| + [ ! -d "${STATEFUL_DIR}/dev_image_new" ]; then |
| + echo >&2 "Missing var or dev_image in stateful payload." |
| + return 1 |
| fi |
| } |
| update_old_state () { |
| echo >&2 "Performing standard stateful update." |
| + touch "${STATEFUL_DIR}/.update_available" |
|
petkov
2011/03/04 23:31:57
echo -n "" > .update_available
|
| } |
| update_clean_state () { |
| echo >&2 "Restoring state to factory_install with dev_image." |
| - echo "fast test" > "/mnt/stateful_partition/factory_install_reset" |
| + echo "clobber" > "${STATEFUL_DIR}/.update_available" |
| } |
| main () { |
| - update_dev_image |
| - if [ "${FLAGS_stateful_change}" = "${OLD_STATE}" ]; then |
| - update_old_state |
| - elif [ "${FLAGS_stateful_change}" = "${CLEAN_STATE}" ]; then |
| - update_clean_state |
| + if update_dev_image; then |
| + if [ "${FLAGS_stateful_change}" = "${OLD_STATE}" ]; then |
| + update_old_state |
| + elif [ "${FLAGS_stateful_change}" = "${CLEAN_STATE}" ]; then |
| + update_clean_state |
| + else |
| + echo >&2 "Invalid state given to stateful update. Aborting..." |
| + return 1 |
| + fi |
| else |
| - echo >&2 "Invalid state given to stateful update. Aborting..." |
| - exit 1 |
| + return 1 |
| fi |
| } |