Files
Investidor-V2/docs/investmoz/production-reference-seeding.md
T
nala 5e6b32b493
tests / ci (push) Waiting to run
dados do seeder
2026-09-30 13:47:51 +02:00

2.4 KiB

Seed de referências para produção

O que é carregado

DatabaseSeeder chama ProductionReferenceSeeder em qualquer ambiente. O seeder carrega:

  • setores e áreas de investimento versionados;
  • opções de referência dos formulários;
  • 1.921 referências territoriais com origem e checksum validados: 1 país, 11 províncias, 148 distritos, 437 postos administrativos e 1.324 localidades;
  • projectos, clusters, corredores e fichas documentais da carteira versionada, mantidos como rascunhos.

O import é transaccional e repetível. Não substitui nomes, relações ou códigos quando encontra um registo territorial com o mesmo identificador mas conteúdo diferente; nesse caso aborta a transacção para revisão. Só promove de internal para public as referências pertencentes ao mesmo conjunto e com conteúdo idêntico, para disponibilizar os dropdowns autorizados.

Os ficheiros-fonte versionados são database/data/territory-locations.json, database/data/investment-reference-options.json e database/data/investment-portfolio.json. Os 69 registos territoriais antigos arquivados ficam fora do conjunto activo. O Excel original não é necessário no servidor.

Aplicação

Depois de publicar o código e configurar PostgreSQL/PostGIS no destino, criar primeiro um backup recuperável e executar:

php artisan migrate --force
php artisan db:seed --force

Em produção, DatabaseSeeder termina depois de ProductionReferenceSeeder; não cria utilizadores de teste nem o investidor/projecto de exemplo. SectorSeeder cria apenas sectores em falta e os importadores da carteira preservam registos editados manualmente.

Dados que não são seed

O conteúdo operacional da base (utilizadores, investidores, submissões, pedidos, sessões, auditoria, cache e outros registos criados pelos utilizadores) não deve ser convertido em PHP/JSON versionado nem copiado por db:seed. Deve ser transferido entre ambientes por backup/restauro ou por um plano de migração de dados com mapeamento, validação de privacidade e reconciliação de chaves. As oportunidades de demonstração de OpportunitySeeder também não são executadas em produção.

O seeder não foi executado contra produção durante a preparação deste pacote. A aplicação acima deve ocorrer no destino depois do backup, com revisão do relatório de colisões caso o conteúdo já existente divirja.