https://github.com/devzgabriel/goexpert-lab-deploy
https://github.com/devzgabriel/goexpert-lab-deploy
Last synced: 9 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/devzgabriel/goexpert-lab-deploy
- Owner: devzgabriel
- Created: 2025-06-09T21:41:29.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-09T22:48:18.000Z (about 1 year ago)
- Last Synced: 2025-06-09T23:31:57.427Z (about 1 year ago)
- Language: Go
- Size: 7.81 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
## Desafio Deploy GoExpert Lab
## Como executar o projeto
Execute o código abaixo para iniciar o projeto em Go com Docker Compose e acesse o serviço na URL `http://localhost:8080/execute?cep=04475030`.
```bash
docker compose up goexpert-lab-deploy-dev
```
## Deploy no Google Cloud Run
URL:
```bash
https://goexpert-lab-deploy-m3hc6hg4ra-uc.a.run.app/execute?cep=04475030
```
## Descrição
Objetivo: Desenvolver um sistema em Go que receba um CEP, identifica a cidade e retorna o clima atual (temperatura em graus celsius, fahrenheit e kelvin). Esse sistema deverá ser publicado no Google Cloud Run.
Requisitos:
O sistema deve receber um CEP válido de 8 digitos
O sistema deve realizar a pesquisa do CEP e encontrar o nome da localização, a partir disso, deverá retornar as temperaturas e formata-lás em: Celsius, Fahrenheit, Kelvin.
O sistema deve responder adequadamente nos seguintes cenários:
Em caso de sucesso:
Código HTTP: 200
Response Body: { "temp_C": 28.5, "temp_F": 28.5, "temp_K": 28.5 }
Em caso de falha, caso o CEP não seja válido (com formato correto):
Código HTTP: 422
Mensagem: invalid zipcode
Em caso de falha, caso o CEP não seja encontrado:
Código HTTP: 404
Mensagem: can not find zipcode
Deverá ser realizado o deploy no Google Cloud Run.
Dicas:
Utilize a API viaCEP (ou similar) para encontrar a localização que deseja consultar a temperatura: https://viacep.com.br/
Utilize a API WeatherAPI (ou similar) para consultar as temperaturas desejadas: https://www.weatherapi.com/
Para realizar a conversão de Celsius para Fahrenheit, utilize a seguinte fórmula: F = C * 1,8 + 32
Para realizar a conversão de Celsius para Kelvin, utilize a seguinte fórmula: K = C + 273
Sendo F = Fahrenheit
Sendo C = Celsius
Sendo K = Kelvin
Entrega:
O código-fonte completo da implementação.
Testes automatizados demonstrando o funcionamento.
Utilize docker/docker-compose para que possamos realizar os testes de sua aplicação.
Deploy realizado no Google Cloud Run (free tier) e endereço ativo para ser acessado.