Fix PostgreSQL backup socket
Browse files
start.sh
CHANGED
|
@@ -73,7 +73,7 @@ backup_postgres() {
|
|
| 73 |
bucket_dump="$BACKUP_DIR/.latest.$$.dump"
|
| 74 |
rm -f "$local_dump" "$bucket_dump"
|
| 75 |
|
| 76 |
-
if ! su-exec postgres pg_dump -Fc -d "$DATABASE_DBNAME" -f "$local_dump"; then
|
| 77 |
rm -f "$local_dump"
|
| 78 |
return 1
|
| 79 |
fi
|
|
@@ -177,11 +177,18 @@ if [ "$NEW_CLUSTER" -eq 1 ] && [ "$MIGRATED" -eq 0 ] && [ -s "$BACKUP_FILE" ]; t
|
|
| 177 |
echo "Persistent PostgreSQL backup is invalid" >&2
|
| 178 |
exit 1
|
| 179 |
fi
|
| 180 |
-
su-exec postgres pg_restore -
|
|
|
|
|
|
|
| 181 |
rm -f "$restore_dump"
|
| 182 |
echo "PostgreSQL restore completed"
|
| 183 |
fi
|
| 184 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 185 |
start_redis
|
| 186 |
attempt=0
|
| 187 |
until redis-cli -h 127.0.0.1 -p 6379 ping 2>/dev/null | grep -q PONG; do
|
|
|
|
| 73 |
bucket_dump="$BACKUP_DIR/.latest.$$.dump"
|
| 74 |
rm -f "$local_dump" "$bucket_dump"
|
| 75 |
|
| 76 |
+
if ! su-exec postgres pg_dump -h /tmp -U "$DATABASE_USER" -Fc -d "$DATABASE_DBNAME" -f "$local_dump"; then
|
| 77 |
rm -f "$local_dump"
|
| 78 |
return 1
|
| 79 |
fi
|
|
|
|
| 177 |
echo "Persistent PostgreSQL backup is invalid" >&2
|
| 178 |
exit 1
|
| 179 |
fi
|
| 180 |
+
su-exec postgres pg_restore -h /tmp -U "$DATABASE_USER" \
|
| 181 |
+
--clean --if-exists --no-owner --exit-on-error \
|
| 182 |
+
-d "$DATABASE_DBNAME" "$restore_dump"
|
| 183 |
rm -f "$restore_dump"
|
| 184 |
echo "PostgreSQL restore completed"
|
| 185 |
fi
|
| 186 |
|
| 187 |
+
if ! backup_postgres; then
|
| 188 |
+
echo "Initial PostgreSQL backup failed" >&2
|
| 189 |
+
exit 1
|
| 190 |
+
fi
|
| 191 |
+
|
| 192 |
start_redis
|
| 193 |
attempt=0
|
| 194 |
until redis-cli -h 127.0.0.1 -p 6379 ping 2>/dev/null | grep -q PONG; do
|