mirror of
https://github.com/goharbor/harbor.git
synced 2024-11-25 03:35:21 +01:00
pg upgrade failure handling (#14934)
To ensure the upgrade execution idempotence, it needs to clean the $PGDATANEW on pg_upgrade failure. Otherwise, the upgrade will skip the upgrade process from the second time launch as the exist of $PGDATANEW. Signed-off-by: Wang Yan <wangyan@vmware.com>
This commit is contained in:
parent
6c14e699b1
commit
39bdd7b506
@ -27,8 +27,15 @@ if [ "$(ls -A $PGDATA)" ]; then
|
||||
exit 1
|
||||
fi
|
||||
initPG $PGDATANEW false
|
||||
# because of the 'set -e', the upgrade failure will break execution.
|
||||
# it needs to clean the $PGDATANEW on upgrade failure
|
||||
set +e
|
||||
./$CUR/upgrade.sh --old-bindir $PGBINOLD --old-datadir $PGDATAOLD --new-datadir $PGDATANEW
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "remove the $PGDATANEW after fail to upgrade"
|
||||
rm -rf $PGDATANEW
|
||||
exit 1
|
||||
fi
|
||||
set -e
|
||||
echo "remove the $PGDATAOLD after upgrade success."
|
||||
if [ "$PGDATAOLD" = "$PGDATA" ]; then
|
||||
find $PGDATA/* -prune ! -name pg${PG_VERSION_NEW} -exec rm -rf {} \;
|
||||
|
Loading…
Reference in New Issue
Block a user