Antes de começar
update nunca toca no diretório de configuração, que é o que o torna
seguro. E significa que uma chave de configuração nova introduzida por uma release não é adicionada
ao seu arquivo.
A ordem
1
Pare o gateway
SIGTERM, não SIGKILL. Um shutdown limpo devolve crédito pré-pago reservado não gasto; um
kill -9 o deixa preso até que fireflo credit release seja
executado.2
Aplique migrations deliberadamente
FIREFLO_DB_MIGRATE=true fazer no startup, o que amarra uma mudança de schema
a um start de processo e não mostra nada antes.3
Atualize o artefato
/opt/fireflo e nada mais.4
Atualize o painel
5
Verifique
version pergunta ao gateway em vez dos arquivos. Um artefato que foi construído mas nunca teve
restart nele é a razão inteira para perguntar — o jar em disco e o processo servindo tráfego são
perguntas diferentes.Ambos os componentes andam juntos
A versão do painel repete a release do gateway contra a qual foi construído em seus três primeiros números.
O painel checa o par em runtime e reporta um mismatch na tela. Um par descasado não está
necessariamente quebrado — mas significa que o painel está descrevendo um gateway contra o qual não
foi construído, e um recurso adicionado no mais novo pode estar faltando ou renderizado incorretamente.
O que uma atualização substitui
Fazendo rollback
Lendo o verify
Exit 4 depois de uma atualização geralmente significa que um domínio de configuração ficou vazio —
vale checar antes de concluir que a atualização quebrou alguma coisa.