Browse Source

Grava marco com dump do postgres

rate-limiter-2026
Marcio Mazza 8 years ago
parent
commit
9811a737f8
  1. 14
      sapl/legacy/migracao.py
  2. 12
      sapl/legacy/migracao_dados.py

14
sapl/legacy/migracao.py

@ -28,21 +28,9 @@ def migrar(interativo=False):
migrar_usuarios(REPO.working_dir) migrar_usuarios(REPO.working_dir)
migrar_documentos(REPO) migrar_documentos(REPO)
gravar_marco() gravar_marco()
gerar_pacote()
def gerar_pacote(): def compactar_media():
# backup do banco
print('Gerando backup do banco... ', end='', flush=True)
arq_backup = DIR_REPO.child('{}.backup'.format(NOME_BANCO_LEGADO))
arq_backup.remove()
backup_cmd = '''
pg_dump --host localhost --port 5432 --username postgres --no-password
--format custom --blobs --verbose --file {} {}'''.format(
arq_backup, NOME_BANCO_LEGADO)
subprocess.check_output(backup_cmd.split(), stderr=subprocess.DEVNULL)
print('SUCESSO')
# tar de media/sapl # tar de media/sapl
print('Criando tar de media... ', end='', flush=True) print('Criando tar de media... ', end='', flush=True)

12
sapl/legacy/migracao_dados.py

@ -1,6 +1,7 @@
import datetime import datetime
import os import os
import re import re
import subprocess
import traceback import traceback
from collections import OrderedDict, defaultdict, namedtuple from collections import OrderedDict, defaultdict, namedtuple
from datetime import date from datetime import date
@ -1333,6 +1334,17 @@ def gravar_marco():
with open(nome_arq, 'w') as arq: with open(nome_arq, 'w') as arq:
pyaml.dump(data, arq) pyaml.dump(data, arq)
# backup do banco
print('Gerando backup do banco... ', end='', flush=True)
arq_backup = DIR_REPO.child('{}.backup'.format(NOME_BANCO_LEGADO))
arq_backup.remove()
backup_cmd = '''
pg_dump --host localhost --port 5432 --username postgres --no-password
--format custom --blobs --verbose --file {} {}'''.format(
arq_backup, NOME_BANCO_LEGADO)
subprocess.check_output(backup_cmd.split(), stderr=subprocess.DEVNULL)
print('SUCESSO')
# salva mudanças # salva mudanças
REPO.git.add([dir_dados.name]) REPO.git.add([dir_dados.name])
if 'master' not in REPO.heads or REPO.index.diff('HEAD'): if 'master' not in REPO.heads or REPO.index.diff('HEAD'):

Loading…
Cancel
Save