annotate ToolShedTest/discard_stderr_wrapper.sh @ 1:822d596ca826 draft default tip

Deleted selected files
author christian-h
date Thu, 09 Jan 2014 07:55:26 -0500
parents be1a1416cf28
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
1 #!/bin/sh
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
2
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
3 # STDERR wrapper - discards STDERR if command execution was OK.
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
4
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
5 #
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
6 # This script executes a given command line,
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
7 # while saving the STDERR in a temporary file.
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
8 #
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
9 # When the command is completed, it checks to see if the exit code was zero.
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
10 # if so - the command is assumed to have succeeded - the STDERR file is discarded.
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
11 # if not - the command is assumed to have failed, and the STDERR file is dumped to the real STDERR
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
12 #
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
13 #
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
14 # Use this wrapper for tools which insist on writing stuff to STDERR even if they succeeded -
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
15 # which throws galaxy off balance.
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
16 #
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
17 #
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
18 # Copyright 2009 (C) by Assaf Gordon
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
19 # This file is distributed under the BSD license.
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
20
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
21 TMPFILE=$(mktemp) || exit 1
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
22
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
23 "$@" 2> $TMPFILE
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
24
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
25 EXITCODE=$?
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
26 # Exitcode != 0 ?
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
27 if [ "$EXITCODE" -ne "0" ]; then
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
28 cat $TMPFILE >&2
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
29 fi
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
30 rm $TMPFILE
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
31
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
32 exit $EXITCODE
be1a1416cf28 Uploaded
christian-h
parents:
diff changeset
33