Este repositório representa a solução do desafio Wealth Systems para back-end (disponível em https://github.com/WealthSystems/backend-challenge).
Ela foi desenvolvida em formato de microsserviço utilizando a linguagem Java 11 e também como base o framework Micronaut 2.4.2. Este foi escolhido por ser um framework leve, rápido e que apresenta uma curva de aprendizado baixa.
- Suporte a Docker
- Geração de pacote JAR usando GitHub CI
- OpenAPI/Swagger
- Versionamento de banco de dados
- Paginação e ordenação de requisições
- Testes automatizados
Para executar os passos abaixo são necessárias as seguintes bibliotecas e ferramentas instaladas:
- Java JDK 11
- Maven 3.6 ou superior
- PostgreSQL 9.6+
Com estas dependências instaladas, siga os seguintes passos:
- Defina os valores das seguintes variáveis de ambiente no seu sistema para acesso ao banco de dados:
- DB_HOST: endereço da instância do banco de dados
- DB_NAME: nome do banco de de dados
- DB_USERNAME: nome de usuário do banco de dados
- DB_PASSWORD: senha de acesso ao banco de dados
- Navegue até o diretório do projeto utilizando um terminal/console do sistema e execute o comando
mvn package
- Navegue até o diretório
target
e execute a aplicação com o comandojava -jar backendchallenge-1.0.jar
- Ao fim do carregamento da aplicação, acesse os endpoints dispostos no endereço
http://localhost:8080/
Para executar os passos abaixo são necessárias as seguintes bibliotecas e ferramentas instaladas:
- Docker v20.00+
- Docker Compose
Com esta dependência instalada, siga os seguintes passos:
- Navegue até o diretório do projeto utilizando um terminal/console do sistema e execute o comando
docker-compose up
- Ao fim do processo de construção dos containers Docker, acesse os endpoints dispostos no endereço
http://localhost:8080/
Esta aplicação possui suporte a OpenAPI. Para acessar a documentação gerada dos endpoints, rode a aplicação
e acesse o endereço http://localhost:8080/swagger/backend-challenge-1.0.yml
, copie o conteúdo e cole-o em seu editor
Swagger favorito.