[firebase-br] Versionamento de Banco - GitHub

Marcelo - MK Softwares marcelo em mksoftwares.com.br
Quinta Fevereiro 4 20:21:46 -03 2021


Se isso te ajuda: aqui também usamos scripts.
Desenvolvemos nosso primeiro sistema em VB6 e agora estamos migrando 
para C#, e precisamos continuar o legado. Antes de iniciarmos o processo 
de migração, procuramos várias ferramentas, métodos, jeitos, até 
acharmos essa "gambiarra", de rodar os scripts de alteração um a um 
quando o atualizador do sistema é iniciado.
Bom, o C#, pra quem conhece, disponibiliza um complemento, o Entity 
Framework, mas o EF ainda não esta pronto para o firebird. Tem vários 
erros que acontecem sem explicação nenhuma. Em algumas consultas nas 
issues no git do EF para firebird, tem vários relatos dos problemas, e 
promessas para arrumarem, estamos na expectativa. Se isso acontecer ai 
sim terei uma ferramente automatizada pelo software de retaguarda, onde 
sem intervenção do usuário, as atualizações acontecem como que por 
mágica. O que mais me desanima, é que o PGSQL ja contempla esse recurso 
a tempos.

Agora se o nosso guro @Cantu, tiver alguma carta na manga. Também tenho 
interesse.

Abraços a todos e boa noite


Em 04/02/2021 15:26, Marcos R. Weimer via lista escreveu:
> Ola!
>
> Aqui tambem fazemos o script "inteligente" que cria os campos se não
> existir e tal, porém, temos procedures gigantescas.
>
> Digamos que queira comparar a procedure "quente" com uma alterada por algum
> desenvolvedor? Este é o processo que queremos melhorar, está muito
> trabalhoso.
>
> Uma idéia seria ter a SQL de cada tabela, procedure e afins versionada no
> github, o problema seria na hora que sair a versão de produção, ter de
> passar todas estas SQLs montando o script da versão na mão.
>
> Hoje temos um processo que está funcionando bem (a mais de 10 anos), mas a
> idéia é facilitar e otimizar este processo.
>
>
> -=Ma®©oS=-
> Marcos R. Weimer
> Pessoas quietas têm as mentes mais barulhentas - Stephen Hawking
> Viver significa ter algumas alegrias e muito sofrimento - Pepe Mujica
> Muitos daqueles que te chamam de louco queriam ter a sua coragem - Silvio
> Santos
>
>
>
>
>
> Em qui., 4 de fev. de 2021 às 14:58, Gladiston Santana <
> gladiston em vidy.com.br> escreveu:
>
>> Olá Marcos,
>>
>> Há muito tempo eu tenho feito scripts gradativos que testam a existencia
>> dos objetos e na falta deles os cria e segue uma certa ordem domains,
>> tables, alter tables, indices, constraints,...., procedures, triggers...
>> enfim entendeu né. Esses scripts rodam desde a inauguração na base até
>> torná-la a versão vigente.
>>
>> Estes scripts voce pode versionar com git, mas recomendaria um repositório
>> central com a opção 'bare' para que todos possam ter a mesma versão de
>> referência.  Ter alguém que conheça bem o banco de dados e possivelmente
>> centralizar as coisas nele pode ser muito bom porque dá medo de pessoas mal
>> disciplinadas subirem 'lixo' não testado para este repositório de onde
>> outros sincronizarão.
>>
>> Aqui eu criei um programa de atualização que vai aplicando estes scripts
>> do zero até o fim, se nenhum falhar então a tá pronto para ser enviado e
>> compartilhado.
>> Quando tenho que atualizar a produção segue o mesmo princípio, rodo os
>> scripts na sequência desde o script que fez a fundação da base até as
>> últimas atualizações. Apenas há um .exe que automatiza isso para não
>> fazê-lo manualmente. Estes programas foram feitos com o Delphi, mas estou
>> estudando fazê-los em node.js, o qual estou aprendendo, eu tô perdendo
>> tempo em escrever UI para coisas banais que servem para automatizar.
>>
>> Hoje tem ferramentas bem melhores que te ajudam a criar um script com a
>> diferença do banco A para o banco B, mas pessoalmente acho que se vc cuidar
>> disso internamente desde o inicio do desenvolvimento nunca precisará de
>> ferramentas assim.
>>
>>
>> Em qui., 4 de fev. de 2021 às 10:05, Marcos R. Weimer via lista <
>> lista em firebase.com.br> escreveu:
>>
>>> Ola!
>>>
>>> A alguns anos estamos versionando o banco na mão (salvando procedures,
>>> montando scripts...) mas temos um banco grande (muitas tabelas,
>>> procedures,
>>> triggers, views...)
>>>
>>> Então venho perguntar o que estão usando para controlar/versionar o banco
>>> (procedures, triggers e afins), se alguem tiver alguma ferramenta ou algo
>>> do tipo  integrado ao github seria excelente.
>>>
>>>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://www.firebase.com.br/pesquisa_lista.html


Mais detalhes sobre a lista de discussão lista