Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/danilomeneghel/prova-alelo
Avaliação técnica de uma API de Cadastro de Produto, desenvolvido em Java com Spring-Boot.
https://github.com/danilomeneghel/prova-alelo
api-rest java-11 jenkins junit sonarqube spring-boot swagger-ui
Last synced: about 22 hours ago
JSON representation
Avaliação técnica de uma API de Cadastro de Produto, desenvolvido em Java com Spring-Boot.
- Host: GitHub
- URL: https://github.com/danilomeneghel/prova-alelo
- Owner: danilomeneghel
- License: mit
- Created: 2021-04-23T20:18:25.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2022-10-02T22:45:17.000Z (over 2 years ago)
- Last Synced: 2024-12-14T14:34:39.539Z (about 2 months ago)
- Topics: api-rest, java-11, jenkins, junit, sonarqube, spring-boot, swagger-ui
- Language: Java
- Homepage: https://prova-alelo.vercel.app
- Size: 121 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Prova Alelo
Avaliação técnica de uma API de Cadastro de Produto, desenvolvido em Java com Spring-Boot.
## Características
- CRUD
- API RESTful
- Validation
- Enum
- MockMVC## Requisitos
- Java JDK 11
- Apache Maven >= 3.6.3 (Opcional)
- Docker (Opcional)
- Jenkins (Opcional)## Tecnologias
- Java
- JPA
- Maven
- Spring
- Lombok
- Swagger
- H2
- JUnit
- SonarQube
- Docker## Instalação
```
$ git clone https://github.com/danilomeneghel/prova-alelo.git$ cd prova-alelo
```## Maven
Para carregar o projeto, digite no terminal:
```
$ ./mvnw spring-boot:run
```Aguarde carregar todo o serviço web.
Após concluído, digite o endereço abaixo em seu navegador, nele será listado os produtos
cadastrados na API.http://localhost:8181/products
## Docker
Para rodar o projeto via Docker, bastar executar o seguinte comando:
```
$ docker build -t projeto .
$ docker run -p 8181:8181 -d projeto
```Ou via Docker-Compose:
```
$ docker-compose up
```Aguarde baixar as dependências e carregar todo o projeto, esse processo é demorado.
Caso conclua e não rode pela primeira vez, tente novamente executando o mesmo comando.Para encerrar tudo digite:
```
$ docker-compose down
```## Swagger
Documentação da API RESTful:
http://localhost:8181/swagger-ui.html
## SonarQube
Para verificar a cobertura de testes, primeiro acesse o seguinte endereço:
http://localhost:9000Depois efetue o login preenchendo "admin" no usuário e senha (login padrão).
Ao se logar crie um novo projeto e gere o token.Feito isso, entre no container criado da api:
```
$ docker exec -it api-alelo bash
```Execute o seguinte comando do sonar:
```
$ mvn clean verify sonar:sonar -Dsonar.projectKey=NOME_PROJETO_GERADO -Dsonar.host.url=http://sonarqube-latest:9000 -Dsonar.login=TOKEN_GERADO
```Após executado, acesse o seguinte endereço:
http://localhost:9000/dashboard?id=prova-alelo
## Jenkins
Instale o Jenkins.
Acesse e crie um novo Job do tipo Pipeline, escolha "Pipeline script from SCM", em seguida Git e adicione a url do projeto Git com o arquivo Jenkinsfile marcado.
Depois clique em Construir (build) para carregar a aplicação.## Testes
Para realizar os testes, execute o seguinte comando no terminal:
```
$ ./mvnw test
```## Licença
Projeto licenciado sob The MIT License (MIT).
Desenvolvido por
Danilo Meneghel
[email protected]
http://danilomeneghel.github.io/