mirror of
https://github.com/postgrespro/pg_probackup.git
synced 2024-11-30 09:47:53 +02:00
66 lines
1.7 KiB
Bash
Executable File
66 lines
1.7 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -xe
|
|
|
|
if [ -z ${PG_VERSION+x} ]; then
|
|
echo PG_VERSION is not set!
|
|
exit 1
|
|
fi
|
|
|
|
if [ -z ${PG_BRANCH+x} ]; then
|
|
echo PG_BRANCH is not set!
|
|
exit 1
|
|
fi
|
|
|
|
if [ -z ${PTRACK_PATCH_PG_BRANCH+x} ]; then
|
|
PTRACK_PATCH_PG_BRANCH=OFF
|
|
fi
|
|
|
|
# fix
|
|
sudo chown -R travis /home/travis/.ccache
|
|
|
|
export PGHOME=/pg
|
|
|
|
# Clone Postgres
|
|
echo "############### Getting Postgres sources:"
|
|
git clone https://github.com/postgres/postgres.git -b $PG_BRANCH --depth=1
|
|
|
|
# Clone ptrack
|
|
if [ "$PTRACK_PATCH_PG_BRANCH" != "OFF" ]; then
|
|
git clone https://github.com/postgrespro/ptrack.git -b master --depth=1 postgres/contrib/ptrack
|
|
export PG_PROBACKUP_PTRACK=ON
|
|
else
|
|
export PG_PROBACKUP_PTRACK=OFF
|
|
fi
|
|
|
|
# Compile and install Postgres
|
|
echo "############### Compiling Postgres:"
|
|
cd postgres # Go to postgres dir
|
|
if [ "$PG_PROBACKUP_PTRACK" = "ON" ]; then
|
|
git apply -3 contrib/ptrack/patches/${PTRACK_PATCH_PG_BRANCH}-ptrack-core.diff
|
|
fi
|
|
CC='ccache gcc' CFLAGS="-Og" ./configure --prefix=$PGHOME \
|
|
--cache-file=~/.ccache/configure-cache \
|
|
--enable-debug --enable-cassert --enable-depend \
|
|
--enable-tap-tests --enable-nls
|
|
make -s -j$(nproc) install
|
|
make -s -j$(nproc) -C contrib/ install
|
|
|
|
# Override default Postgres instance
|
|
export PATH=$PGHOME/bin:$PATH
|
|
export LD_LIBRARY_PATH=$PGHOME/lib
|
|
export PG_CONFIG=$(which pg_config)
|
|
|
|
if [ "$PG_PROBACKUP_PTRACK" = "ON" ]; then
|
|
echo "############### Compiling Ptrack:"
|
|
make -C contrib/ptrack install
|
|
fi
|
|
|
|
# Get amcheck if missing
|
|
if [ ! -d "contrib/amcheck" ]; then
|
|
echo "############### Getting missing amcheck:"
|
|
git clone https://github.com/petergeoghegan/amcheck.git --depth=1 contrib/amcheck
|
|
make -C contrib/amcheck install
|
|
fi
|
|
|
|
pip3 install testgres |