From fbe3fceb9f81763146c89c101334bbcf531ec460 Mon Sep 17 00:00:00 2001 From: Felipe Coutinho Date: Sun, 26 Apr 2026 22:52:42 +0000 Subject: [PATCH] chore(backup): escopar dumps aos schemas public e drizzle MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 --- scripts/backup.sh | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/scripts/backup.sh b/scripts/backup.sh index 6a0b5f3..8805630 100755 --- a/scripts/backup.sh +++ b/scripts/backup.sh @@ -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'."