mirror of
https://github.com/felipegcoutinho/openmonetis.git
synced 2026-05-09 02:51:46 +00:00
chore(backup): escopar dumps aos schemas public e drizzle
Adiciona --schema=public --schema=drizzle aos pg_dump (modos remote e docker), descartando os schemas internos do Supabase (auth, realtime, storage, vault, graphql, etc.). Restaurações em PostgreSQL padrão deixam de produzir os ~148 erros de role/extension does not exist. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -58,21 +58,26 @@ DATA_FILE="$BACKUP_DIR/openmonetis_${TIMESTAMP}.data.sql.gz"
|
||||
|
||||
log "Iniciando backup (modo: $DB_MODE)..."
|
||||
|
||||
# Schemas relevantes do OpenMonetis (descarta lixo Supabase: auth, realtime, storage, vault, graphql, etc.)
|
||||
SCHEMA_FLAGS=(--schema=public --schema=drizzle)
|
||||
|
||||
# --- Dump ---
|
||||
if [[ "$DB_MODE" == "remote" ]]; then
|
||||
# --no-owner --no-privileges: necessário no Supabase (roles gerenciados internamente)
|
||||
pg_dump --format=custom --no-owner --no-privileges \
|
||||
"${SCHEMA_FLAGS[@]}" \
|
||||
"$REMOTE_DB_URL" > "$DUMP_FILE"
|
||||
|
||||
pg_dump --no-owner --no-privileges \
|
||||
"${SCHEMA_FLAGS[@]}" \
|
||||
"$REMOTE_DB_URL" | gzip > "$SQL_FILE"
|
||||
|
||||
elif [[ "$DB_MODE" == "docker" ]]; then
|
||||
docker exec "$DOCKER_CONTAINER" pg_dump \
|
||||
-U "$DOCKER_DB_USER" -Fc "$DOCKER_DB_NAME" > "$DUMP_FILE"
|
||||
-U "$DOCKER_DB_USER" -Fc "${SCHEMA_FLAGS[@]}" "$DOCKER_DB_NAME" > "$DUMP_FILE"
|
||||
|
||||
docker exec "$DOCKER_CONTAINER" pg_dump \
|
||||
-U "$DOCKER_DB_USER" "$DOCKER_DB_NAME" | gzip > "$SQL_FILE"
|
||||
-U "$DOCKER_DB_USER" "${SCHEMA_FLAGS[@]}" "$DOCKER_DB_NAME" | gzip > "$SQL_FILE"
|
||||
|
||||
else
|
||||
log "ERRO: DB_MODE inválido ('$DB_MODE'). Use 'remote' ou 'docker'."
|
||||
|
||||
Reference in New Issue
Block a user