Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Produto:

Solucoes_totvs
SolucaoTOTVS Varejo Franquias e Redes

Solucoes_totvs_cross
SolucaoCross

Solucoes_totvs_parceiros
SolucaoParceiros

Solucoes_totvs_parceirosexptotvs
SolucaoParcsExpsTOTVS

Linha de Produto:PDV Sync
Segmento:

Segmentos_totvs
Segmento Varejo

Módulo:PDVSync.Server
Função:

Migrations

País:Brasil
Versão:V1
Requisito/Story/Issue (informe o requisito relacionado) :DVARINT1-10823


02. SITUAÇÃO/REQUISITO

  • Atualmente, a aplicação executa as migrações de banco de dados automaticamente durante o startup, o que pode levar a problemas de integridade dos dados e risco de alterações indesejadas em produção. Para mitigar esses riscos, é necessário:
    • Remover a execução das migrações do processo de startup da aplicação, garantindo que as migrações sejam realizadas de maneira controlada e apenas quando necessário.
    • Criar um endpoint /api/manutencao/migration, permitindo que as migrações sejam acionadas manualmente via pipeline (esteira) com as devidas medidas de segurança. Esse endpoint deve ser acessível apenas a usuários ou serviços autorizados, garantindo que as migrações sejam executadas de forma segura e sob controle.
    • Implementar uma regra que exija a realização de backup das tabelas afetadas antes de cada migração. Essa medida assegura que qualquer alteração inadvertida possa ser revertida, protegendo os dados e minimizando o impacto de possíveis erros durante o processo de migração.

03. SOLUÇÃO

A funcionalidade de aplicação automática de migrations foi removida e, em seu lugar, foi adicionada uma API que permite a execução manual desse processo. Essa mudança tem como objetivo evitar que algum desenvolvedor aplique migrations acidentalmente em ambiente de produção.

Além disso, foi criada uma chave de segurança exclusiva para cada API e ambiente, garantindo que apenas o time do produto possa realizar essa operação, prevenindo execuções indevidas por terceiros.

Link com as chaves por ambiente: https://tdn.totvs.com/x/J3LdNw