|
@ -730,8 +730,8 @@ def reinicia_sequence(model, id): |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DIR_DADOS_MIGRACAO = Path('~/migracao_sapl/').expand() |
|
|
DIR_DADOS_MIGRACAO = Path('~/migracao_sapl/').expand() |
|
|
PATH_TABELA_TIMEZONES = DIR_DADOS_MIGRACAO.child('tabela_timezones.yaml') |
|
|
NOME_BANCO_LEGADO = DATABASES['legacy']['NAME'] |
|
|
DIR_RESULTADOS = DIR_DADOS_MIGRACAO.child('resultados') |
|
|
REPO = git.Repo.init(Path(DIR_DADOS_MIGRACAO, 'repos', NOME_BANCO_LEGADO)) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def dict_representer(dumper, data): |
|
|
def dict_representer(dumper, data): |
|
@ -740,9 +740,9 @@ yaml.add_representer(OrderedDict, dict_representer) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# configura timezone de migração |
|
|
# configura timezone de migração |
|
|
nome_banco_legado = DATABASES['legacy']['NAME'] |
|
|
match = re.match('sapl_cm_(.*)', NOME_BANCO_LEGADO) |
|
|
match = re.match('sapl_cm_(.*)', nome_banco_legado) |
|
|
|
|
|
sigla_casa = match.group(1) |
|
|
sigla_casa = match.group(1) |
|
|
|
|
|
PATH_TABELA_TIMEZONES = DIR_DADOS_MIGRACAO.child('tabela_timezones.yaml') |
|
|
with open(PATH_TABELA_TIMEZONES, 'r') as arq: |
|
|
with open(PATH_TABELA_TIMEZONES, 'r') as arq: |
|
|
tabela_timezones = yaml.load(arq) |
|
|
tabela_timezones = yaml.load(arq) |
|
|
municipio, uf, nome_timezone = tabela_timezones[sigla_casa] |
|
|
municipio, uf, nome_timezone = tabela_timezones[sigla_casa] |
|
@ -818,18 +818,16 @@ def migrar_dados(interativo=True): |
|
|
info('Começando migração: ...') |
|
|
info('Começando migração: ...') |
|
|
try: |
|
|
try: |
|
|
ocorrencias.clear() |
|
|
ocorrencias.clear() |
|
|
dir_ocorrencias = DIR_RESULTADOS.child(date.today().isoformat()) |
|
|
|
|
|
dir_ocorrencias.mkdir(parents=True) |
|
|
|
|
|
migrar_todos_os_models() |
|
|
migrar_todos_os_models() |
|
|
except Exception as e: |
|
|
except Exception as e: |
|
|
ocorrencias['traceback'] = str(traceback.format_exc()) |
|
|
ocorrencias['traceback'] = str(traceback.format_exc()) |
|
|
raise e |
|
|
raise e |
|
|
finally: |
|
|
finally: |
|
|
# grava ocorrências |
|
|
# grava ocorrências |
|
|
arq_ocorrencias = dir_ocorrencias.child( |
|
|
arq_ocorrencias = Path(REPO.working_dir, 'ocorrencias.yaml') |
|
|
nome_banco_legado + '.yaml') |
|
|
|
|
|
with open(arq_ocorrencias, 'w') as arq: |
|
|
with open(arq_ocorrencias, 'w') as arq: |
|
|
pyaml.dump(ocorrencias, arq, vspacing=1) |
|
|
pyaml.dump(ocorrencias, arq, vspacing=1) |
|
|
|
|
|
REPO.git.add([arq_ocorrencias.name]) |
|
|
info('Ocorrências salvas em\n {}'.format(arq_ocorrencias)) |
|
|
info('Ocorrências salvas em\n {}'.format(arq_ocorrencias)) |
|
|
|
|
|
|
|
|
# recria tipos de autor padrão que não foram criados pela migração |
|
|
# recria tipos de autor padrão que não foram criados pela migração |
|
@ -1270,9 +1268,6 @@ def time_constructor(loader, node): |
|
|
yaml.add_constructor(u'!time', time_constructor) |
|
|
yaml.add_constructor(u'!time', time_constructor) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
REPO = git.Repo.init(Path(DIR_DADOS_MIGRACAO, 'repos', nome_banco_legado)) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def gravar_marco(): |
|
|
def gravar_marco(): |
|
|
"""Grava um dump de todos os dados como arquivos yaml no repo de marco |
|
|
"""Grava um dump de todos os dados como arquivos yaml no repo de marco |
|
|
""" |
|
|
""" |
|
|