]> granicus.if.org Git - postgresql/blob - src/tools/pgtest
Run pg_upgrade and pg_resetxlog with restricted token on Windows
[postgresql] / src / tools / pgtest
1 #!/bin/sh
2
3 # src/tools/pgtest [-n] [...]
4
5 # This runs a build/initdb/regression test suite
6 #
7 # This will start a temporary postmaster, so you have to
8 # have enough kernel resources to run two postmasters or
9 # stop your main postmaster before running this script.
10 #
11 # Use -n to prevent 'make clean'
12
13 MAKE="make"
14
15 [ ! -d src ] && echo "This must be run from the top of the PostgreSQL source tree" 1>&2 && exit 1
16
17 trap "rm -rf /tmp/$$" 0 1 2 3 15
18 mkdir /tmp/$$
19 TMP="/tmp/$$"
20
21 if [ "X$1" != "X-n" ]
22 then    PGCLEAN=clean
23 else    shift
24 fi
25
26 # Run "make check" and store return code in $TMP/ret.
27 # Display output but also capture it in $TMP/0.
28 ($MAKE "$@" $PGCLEAN check 2>&1; echo "$?" > $TMP/ret) | tee  $TMP/0
29
30 # If success, display warnings
31 if [ $(cat $TMP/ret) -eq 0 ]
32 then    cat $TMP/0 |
33         # The following grep's have to be adjusted for your setup because
34         # certain warnings are acceptable.
35         grep -i warning |
36         grep -v setproctitle |
37         grep -v find_rule |
38         grep -v yy_flex_realloc
39 fi
40
41 # return original make error code
42 exit `cat $TMP/ret`