X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=pgtest.sh;h=8cbb27cacddcca65b173a74ea5d5adbc272442b3;hb=0d949bb6e988d776d8cc6d9ec8fb8b75ada17c44;hp=692de5e610abdb27bb5c72b1d702241d560c9163;hpb=230d094cde2778ba3168f33be7fd02053fec6187;p=postrr.git diff --git a/pgtest.sh b/pgtest.sh index 692de5e..8cbb27c 100755 --- a/pgtest.sh +++ b/pgtest.sh @@ -26,13 +26,15 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -PG_CONFIG=`which pg_config` +if test -z "$PG_CONFIG"; then + PG_CONFIG=`which pg_config` +fi if test -z "$PG_CONFIG"; then echo "pg_config not found!" >&2 exit 1 fi -BIN_DIR=`pg_config --bindir` +BIN_DIR=`$PG_CONFIG --bindir` if test -z "$TARGET"; then TARGET=`pwd`/target fi @@ -53,12 +55,12 @@ case "$1" in mkdir -p $TARGET/var/run/postgresql mkdir -p $TARGET/var/log/postgresql/main $BIN_DIR/initdb -D $TARGET/var/lib/postgresql/main - sed -r -i -e 's/^#port = 5432/port = 5435/' \ + sed -r -i -e 's/^#port = 5432/port = 2345/' \ $TARGET/var/lib/postgresql/main/postgresql.conf sed -r -i -e "s/^#dynamic_library_path = '\\\$libdir'/dynamic_library_path = '\$libdir:$PWD_esc\/src'/" $TARGET/var/lib/postgresql/main/postgresql.conf sed -r -i -e "s/^#unix_socket_directory = ''/unix_socket_directory = '$TARGET_esc\/var\/run\/postgresql'/" $TARGET/var/lib/postgresql/main/postgresql.conf $0 start -B - $BIN_DIR/createdb -e -h $TARGET/var/run/postgresql/ -p 5435 tokkee + $BIN_DIR/createdb -e -h $TARGET/var/run/postgresql/ -p 2345 "$( id -un )" $0 stop ;; client) @@ -72,12 +74,12 @@ case "$1" in fi fi shift - $BIN_DIR/psql -h $TARGET/var/run/postgresql/ -p 5435 "$@" + $BIN_DIR/psql -h $TARGET/var/run/postgresql/ -p 2345 "$@" ;; stop) if test $# -ne 1; then echo "Too many arguments!" >&2 - echo "Usage: $0 setup" >&2 + echo "Usage: $0 stop" >&2 exit 1 fi $BIN_DIR/pg_ctl -D $TARGET/var/lib/postgresql/main stop @@ -91,8 +93,30 @@ case "$1" in $BIN_DIR/postgres -D $TARGET/var/lib/postgresql/main "$@" fi ;; + restart) + $0 stop && $0 start -B + ;; *) echo "Usage: $0 setup|client|stop|start" >&2 + echo "" + echo " - setup" + echo " Set up a new PostgreSQL server listening on port 2345." + echo " - client []" + echo " Start a PostgreSQL interactive terminal connected to the" + echo " PostgreSQL server on port 2345." + echo " - start [-B []]" + echo " Start the PostgreSQL server." + echo " - stop" + echo " Stop the PostgreSQL server." + echo " - restart" + echo " Restart a background PostgreSQL server process." + echo "" + echo "Environment variables:" + echo " - TARGET" + echo " Target directory of the PostgreSQL test setup." + if test "$1" = "help"; then + exit 0 + fi exit 1 ;; esac