Go Expert - LAB Desafio
Descrição
O sistema em Go que receba um CEP, identifica a cidade e retorna o clima atual (temperatura em graus celsius, fahrenheit e kelvin).
Conteúdo
- Como Rodar o Projeto
- Testes Automatizados
- Docker
- Deploy no Google Cloud Run
Como Rodar o Projeto
Ambiente de Desenvolvimento
- Certifique-se de ter o Golang 1.19 instalado em sua máquina.
- Clone o repositório:
git clone https://github.com/GiovaniGitHub/cep-weather.git
- Navegue até o diretório do projeto:
cd cep-weather
- Crie um .env a partir do .env.template e altere o campo
Exemplo
WEB_SERVER_PORT=8080
ENVIRONMENT=development
URL_BASE=http://localhost
Rodar Sem Docker
make run # Roda o projeto
make test # Executa os testes
make all # Executa os testes e o projeto
- Requisitos basicos:
- Altere o campo CONTAINER_NAME no arquivo makefile
make build-docker # Cria a imagem docker do projeto
make run-docker # Roda o projeto
docker compose -f docker-compose.yml up -d # Roda o projeto # Cria a imagem docker do projeto
Teste da API
Usando CURL
Usando Swagger
Aplicação em execução no Google Cloud Run
- Em produção a aplicação esta rodando no Google Cloud Run.
- Segue um teste possivel
curl -H "Content-Type: application/json" https://cep-weather-prqp4ppyua-uc.a.run.app/cep/70070080
Onde a saída possível é:
{"temp_C":"28","temp_F":"82.40","temp_K":"301.00"}
Obs.
- Caso queira subir a aplicação em usa conta no Google Cloud Run
é necessário modificar o Dockerfile e setar o valor da porta para
expor a aplicação (que geralmente é a porta 8080)
- Também altere o ENVIRONMENT no .env para production