Atualizar OpenDataBio

Instrucoes seguras para atualizar instalacoes do OpenDataBio

Use este guia para atualizar uma instalacao existente do OpenDataBio com o minimo de indisponibilidade.

Antes de comecar

  1. Leia as notas da versao de destino e confirme se ha mudancas que exigem atencao.
  2. Faca backup de pelo menos:
    • Dump do banco de dados
    • .env
    • storage/app/public/media
  3. Compare as configuracoes atuais com os modelos/configs da versao alvo:
    • .env com .env.example (incluindo ASSET_URL)
    • Configuracao do Supervisor (/etc/supervisor/conf.d/opendatabio-worker.conf ou equivalente no container)
    • Configuracao do PHP (php.ini de CLI e FPM/Apache)
  4. Planeje uma janela de manutencao para ambiente de producao.

Atualizacao (instalacao Apache ou nginx)

  1. Coloque a aplicacao em modo manutencao:
cd /home/odbserver/opendatabio
php artisan down
  1. Atualize o codigo-fonte:
git fetch --tags
git checkout <target-tag-or-branch>
  1. Instale dependencias e rode as migracoes:
composer install --no-dev --optimize-autoloader
php artisan migrate:status
php artisan migrate --force
  1. Recompile os assets frontend apos mudancas no .env (obrigatorio quando ASSET_URL muda):
npm ci #talvez precise disso antes
npm run build
  1. Limpe cache e log e reinicie os workers:
php artisan optimize:clear
php artisan config:cache
php artisan queue:restart
systemctl restart supervisor.service, nginx+phpfpm or apache, mysql or mariadb
echo "" > storage/logs/laravel.log
echo "" > storage/logs/supervisor.log
  1. Coloque a aplicacao online novamente:
php artisan up

Atualizacao (instalacao Docker)

  1. Atualize o codigo-fonte:
cd opendatabio
git fetch --tags
git checkout <target-tag-or-branch>
  1. Reconstrua e reinicie os containers:
make stop
make build
make start
  1. Instale dependencias e rode as migracoes:
make composer-install
make migrate
  1. Recompile os assets frontend apos mudancas no .env (obrigatorio quando assets_url muda):
npm run build
  1. Limpe cache e reinicie os workers:
make optimize
docker compose exec -T -u www-data laravel php artisan queue:restart

Variaveis de ambiente

Se a nova versao adicionar variaveis de ambiente, compare .env com .env.example e adicione as chaves faltantes antes de asset/cache/restart em producao.

Estrategia de rollback

Se algo falhar depois das migracoes:

  1. Mantenha o modo manutencao ativo.
  2. Restaure backup do banco e do .env.
  3. Retorne para a tag anterior estavel.
  4. Reinstale dependencias/reconstrua containers e valide logs antes de php artisan up.
Última modificação March 11, 2026: Added upgrade instructions (9485e7e)