| Verificação | Badge |
|---|---|
| Testes Master | |
| Testes Develop | |
| Cobertura Master | |
| Cobertura Develop |
Para subir os ambientes do UnB Feelings API, primeiramente é necessário instalar o docker e o docker-compose em seu computador.
- Para clonar o repositório execute o comando:
git clone https://github.com/UnbFeelings/unb-feelings-api.git- Para subir o ambiente basta fazer:
sudo docker-compose build
sudo docker-compose run dev python manage.py migrate
sudo docker-compose run dev python3 manage.py populatedb
sudo docker-compose run dev python manage.py shell < api/fixtures/scripts/load_dev_data.py- Esse primeiro passo só é necessário uma vez. Mas você precisará executar uma nova build(apenas o passo de build) sempre que um novo pacote pip for adicionado aos requirements.
E para executar:
sudo docker-compose up- Após executar o ultimo comando, o servidor estará rodando na url 0.0.0.0:8000.
Lembrando que sempre que uma model for alterada, será necessário atualizar/criar a sua devida migração.
sudo docker-compose run dev python manage.py makemigrationsE realizar essa migração no banco:
sudo docker-compose run dev python manage.py migrate- Para entrar no terminal do container utilize o seguinte comando
docker exec -it <nome_do_container> bash
-
Com isso você estará dentro do terminal do container e poderá criar um super usuário via shell. O
python manage.py createsuperusernão está funcionando devido ao usuário precisar de um curso, então para criar um usuário é necessário entrar via shell pegar(ou criar) um curso e usa-lo na criação do usuário. Mas dentro do "load_dev_data.py"(comando na parte de build) um usuário para curso é criado, ficando:- email: [email protected], password: test
- email: [email protected], password: test
- email: [email protected], password: test
- email: [email protected], password: test
- email: [email protected], password: test
-
Com isso você pode modificar os arquivos localmente em sua máquina que ele serão automaticamente modificados dentro do container, possibilitando assim ter um ambiente de desenvolvimento sem a necessidade de muita configuração do ambiente.
- Para rodar os testes, execute o seguinte comando para subir o ambiente de teste
sudo docker-compose run dev python manage.py test
Também é possível executar os testes pelo mesmo docker do CI:
sudo docker-compose -f compose/test/docker-compose.test.yml build
sudo docker-compose -f compose/test/docker-compose.test.yml run unbfeelings-test python manage.py testMas nesse caso, é mais fácil simplismente fazer um push para a sua branch no github que logo o CI irá automaticamente executar os testes.
Agora caso queira ver a cobertura de testes:
sudo docker-compose run dev coverage run --source='.' manage.py test
sudo docker-compose run dev coverage reportCaso queira uma analise mais detalhada da cobertura, basta olhar o submit da cobertura pelo CI para o coveralls, ou, em vez de coverage report executar coverage html e uma pasta de nome htmlcov será criada com a cobertura em HTML.