diff options
author | David Hendricks <dhendrix@chromium.org> | 2013-11-12 17:24:42 -0800 |
---|---|---|
committer | David Hendricks <dhendrix@chromium.org> | 2013-11-17 10:32:07 +0100 |
commit | f8b90e4622533947dbc21c55b21ea932eb7420c7 (patch) | |
tree | 6ee2fab3e44ae83d74e2362a4173b547f8e18177 | |
parent | 1fc65f76f46c4ebef3bfd716908855f3cfb98d89 (diff) |
board_status.sh: add support for non-fatal commands
This adds cmd_nonfatal() for commands which are considered
non-essential and can be expected to fail safely. This can be used,
for example, to gather data that is generated when using non-standard
utilities or coreboot config options.
Change-Id: Ie43944d2eb73f9aae1c30c3a204cfc413e11d286
Signed-off-by: David Hendricks <dhendrix@chromium.org>
Reviewed-on: http://review.coreboot.org/4049
Tested-by: build bot (Jenkins)
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
-rw-r--r-- | util/board_status/board_status.sh | 36 |
1 files changed, 27 insertions, 9 deletions
diff --git a/util/board_status/board_status.sh b/util/board_status/board_status.sh index 84319f10a7..f7300bdcdd 100644 --- a/util/board_status/board_status.sh +++ b/util/board_status/board_status.sh @@ -46,14 +46,10 @@ test_cmd() exit $EXIT_FAILURE } -# run a command -# -# $1: 0 to run command locally, 1 to run remotely if remote host defined -# $2: command -cmd() +_cmd() { if [ -e "$2" ]; then - return + return $EXIT_FAILURE fi if [[ $1 -eq $REMOTE && -n "$REMOTE_HOST" ]]; then @@ -61,6 +57,15 @@ cmd() else $2 fi +} + +# run a command +# +# $1: 0 to run command locally, 1 to run remotely if remote host defined +# $2: command +cmd() +{ + _cmd $1 $2 if [ $? -eq 0 ]; then return @@ -70,6 +75,21 @@ cmd() exit $EXIT_FAILURE } +# run a command where failure is considered to be non-fatal +# +# $1: 0 to run command locally, 1 to run remotely if remote host defined +# $2: command +cmd_nonfatal() +{ + _cmd $1 $2 + + if [ $? -eq 0 ]; then + return + fi + + echo "Failed to run command: $2" +} + show_help() { echo "Usage: ${0} <option> @@ -144,9 +164,7 @@ printf "Timestamp: %s\n" "$timestamp" >> ${tmpdir}/${results}/revision.txt test_cmd $REMOTE "cbmem" cmd $REMOTE "cbmem -c" > ${tmpdir}/${results}/coreboot_console.txt - -# TODO: Some commands should be optional and be non-fatal in case of error. -#cmd $REMOTE "cbmem -t" > ${outdir}/coreboot_timestamps.txt +cmd_nonfatal $REMOTE "cbmem -t" > ${tmpdir}/${results}/coreboot_timestamps.txt cmd $REMOTE dmesg > ${tmpdir}/${results}/kernel_log.txt |