From 3a940d845f8b19c8448c269aef3a0dc9b1d9fa84 Mon Sep 17 00:00:00 2001 From: Moritz Date: Tue, 22 Oct 2024 21:33:15 +0200 Subject: [PATCH] update pg_backup.sh --- abra.sh | 2 +- pg_backup.sh | 13 ++++++++++--- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/abra.sh b/abra.sh index 112d7c4..b7a8ad2 100644 --- a/abra.sh +++ b/abra.sh @@ -1,6 +1,6 @@ export ENTRYPOINT_VERSION=v2 export AUTO_WIZARD_VERSION=v2 -export PG_BACKUP_VERSION=v1 +export PG_BACKUP_VERSION=v2 get_setting_changes() { /custom-entrypoint.sh "rails r 'puts JSON.pretty_generate(JSON.parse(Setting.all.select{ |setting| setting.state_current != setting.state_initial }.map { |setting| {name: setting.name, value: setting.state_current[\""value\""]} } .to_json))'" diff --git a/pg_backup.sh b/pg_backup.sh index f58d8ec..e83074d 100644 --- a/pg_backup.sh +++ b/pg_backup.sh @@ -11,17 +11,24 @@ function backup { function restore { cd /var/lib/postgresql/data/ + restore_config(){ + # Restore allowed connections + cat pg_hba.conf.bak > pg_hba.conf + su postgres -c 'pg_ctl reload' + } # Don't allow any other connections than local cp pg_hba.conf pg_hba.conf.bak echo "local all all trust" > pg_hba.conf su postgres -c 'pg_ctl reload' + trap restore_config EXIT INT TERM + # Recreate Database psql -U ${POSTGRES_USER} -d postgres -c "DROP DATABASE ${POSTGRES_DB} WITH (FORCE);" createdb -U ${POSTGRES_USER} ${POSTGRES_DB} psql -U ${POSTGRES_USER} -d ${POSTGRES_DB} -1 -f $BACKUP_FILE - # Restore allowed connections - cat pg_hba.conf.bak > pg_hba.conf - su postgres -c 'pg_ctl reload' + + trap - EXIT INT TERM + restore_config } $@