13 Commits

Author SHA1 Message Date
1936226bf5 chore: publish 1.3.0+1.35.3 release 2025-12-10 16:00:00 -05:00
0865766102 Merge pull request 'backup/restore and merge conflicts' (#7) from linnealovespie/baserow:backup into main
Reviewed-on: #7
2025-12-10 20:49:50 +00:00
475484928f Merge remote-tracking branch 'cc/backups' into backup 2025-11-24 19:55:38 -08:00
3158926e7b chore: publish 1.2.2+1.35.3 release 2025-11-10 18:58:27 -05:00
8ae0634c82 restore test 2025-11-10 18:15:59 -05:00
ca1e0ec1c3 add abra.sh 2025-11-10 16:43:37 -05:00
14b65c2ecd fix pg scripting vars 2025-11-10 16:40:14 -05:00
c5994bd7e4 backups test 2025-11-10 16:22:33 -05:00
136ad45cfb rollback 2025-11-10 20:46:35 +00:00
26e98e915d rollback 2025-11-10 15:42:04 -05:00
aa6b8472f5 rollback restart condition 2025-11-10 15:40:19 -05:00
f19c498001 chore: publish 1.2.1+1.35.3 release 2025-11-10 12:01:15 -05:00
db18e08971 change restart policy to unless-stopped 2025-11-10 11:58:37 -05:00
4 changed files with 37 additions and 2 deletions

1
abra.sh Normal file
View File

@ -0,0 +1 @@
export PG_BACKUP_CONFIG_VERSION=v1

22
backup-postgres.sh Normal file
View File

@ -0,0 +1,22 @@
if [ "$1" == "pre-backup" ]; then
# Remove any existing db dump and then create a new one
rm -rf $DATA_DIR/postgres/postgres-backup
source /baserow/data/.pgpass
PGPASSWORD=$DATABASE_PASSWORD pg_dump -j 8 -h localhost -U baserow baserow --format=directory -f $DATA_DIR/postgres/postgres-backup
exit
fi
if [ "$1" == "post-backup" ]; then
rm -rf $DATA_DIR/postgres/postgres-backup
exit
fi
if [ "$1" == "pre-restore" ]; then
exit
fi
if [ "$1" == "post-restore" ]; then
source /baserow/data/.pgpass
PGPASSWORD=$DATABASE_PASSWORD pg_restore -j 8 -h localhost -U baserow -d baserow -c $DATA_DIR/postgres/postgres-backup
exit
fi

View File

@ -30,20 +30,31 @@ services:
#- "traefik.http.middlewares.${STACK_NAME}-redirect.headers.SSLHost=${DOMAIN}"
- "backupbot.backup=true"
- "backupbot.backup.path=/baserow/data"
- "coop-cloud.${STACK_NAME}.version=1.2.0+1.35.3"
- "backupbot.backup.pre-hook=/backup.sh pre-backup"
- "backupbot.backup.post-hook=/backup.sh post-backup"
- "backupbot.restore.post-hook=/backup.sh post-restore"
- "coop-cloud.${STACK_NAME}.version=1.3.0+1.35.3"
healthcheck:
test: ["CMD", "./baserow.sh", "backend-cmd", "backend-healthcheck"]
interval: 30s
timeout: 10s
retries: 10
start_period: 1m
volumes:
- baserow_data:/baserow/data
configs:
- source: backup-postgres
target: /backup.sh
mode: 0777
volumes:
baserow_data:
configs:
backup-postgres:
name: backup-postgres_${PG_BACKUP_CONFIG_VERSION}
file: ./backup-postgres.sh
networks:
proxy:
external: true

1
release/1.3.0+1.35.3 Normal file
View File

@ -0,0 +1 @@
Backup/restore of the postgres database backend will now use pg_dump and pg_restore