[CTI-126b] Estabilizar Mapa Guarani
Passo a passo da correção:
Garantir que as dependências sejam compatíveis
-
Remover os requisitos das dependências do arquivo requirements/base.txt (mantendo apenas seus nomes).
-
Criar um ambiente virtual no modulo venv (virtual environmente) chamado .venv para que as dependências da sya maquina não sejam puxadas ao rodar qualquer comando
pip
:python3 -m venv .venv
O ambiente virtual instala todas as dependências do projeto nessa pasta e não na sua maquina (assim podemos ter vários projetos de forma que cada um tenha uma versão das tecnologias).
- Ativar o ambiente virtual:
. .venv/bin/activate
Após a ativação, todas as instalações com
pip
serão realizadas dentro dessa maquina.
- Instalar as tecnologias presentes no arquivo requirements/base.txt de forma a resolver quais versões deverão ser instaladas buscando a compatibilidade entre elas (a maior versão de cada tecnologia considerada compatível com as demais).
pip install -r requirements/base.txt
Poderiamos usar o comando abaixo para gerar uma novo base (em um arquivo novo) com as novas dependências corretas (mas iremos seguir com a opção do passo 5)
pip freeze > new_base.tx
- Sair do ambiente virtual:
deactivate
Para não ter que instalar tudo na máquina, sugerimos instalar no container:
-
Adicionar temporariamente no arquivo compose/local/django/runserver.sh para printar na tela as versões no container do docker pra pegar as dependencias do container:
pip freeze
-
Pegar a versão sugerida de cada dependência no novo arquivo e adicioná-las no arquivo requirements/base.txt, que será utilizado pelo projeto
Corrigir bugs do código
Descomentar cada uma das linhas abaixo (uma por vez) do arquivo compose/local/django/runserver.sh até identificar onde o erro está surgindo.
# python manage.py migrate // atualiza bd
# python manage.py collectstatic --noinput // gera statics do site
# python manage.py compilemessages // gerar mensagens de internacionalização (pt br etc)
TO-DO