- log "BEGIN $tag"
- rc=$(
- { { { ( set +e
- "$cmd" "$@" 3>&- 4>&- 5>&- 9>&-
- echo $? >&5; ) |
- while IFS= read line; do echo "| $line"; done >&4; } 2>&1 |
- while IFS= read line; do echo "* $line"; done >&4; } 4>&1 |
- cat >&9; } 5>&1 </dev/null
- )
- case $rc in
- 0) log "END $tag" ;;
- *) log "FAIL $tag (rc = $rc)" ;;
+ case $dryrun in
+ t)
+ echo >&2 " *** RUN $tag"
+ echo >&2 " +++ $cmd $*"
+ rc=0
+ ;;
+ nil)
+ log "BEGIN $tag"
+ rc=$(
+ { { { ( set +e
+ "$cmd" "$@" 3>&- 4>&- 5>&- 9>&-
+ echo $? >&5; ) |
+ while IFS= read line; do echo "| $line"; done >&4; } 2>&1 |
+ while IFS= read line; do echo "* $line"; done >&4; } 4>&1 |
+ cat >&9; } 5>&1 </dev/null
+ )
+ case $rc in
+ 0) log "END $tag" ;;
+ *) log "FAIL $tag (rc = $rc)" ;;
+ esac
+ ;;