Instrução para uso da aplicação se encontra no tópico Executando a Aplicação, os demais tópicos abaixo são documentações complementares.
- Postman
- Swagger
- Visão Geral
- Máquina de Estado
- Jornada dos Atores
- Requisitos Desenvolvimento
- Executando aplicação para_desenvolvimento
- Executando aplicação via docker-compose
- Executando aplicação via minikube
- Processo de Desenvolvimento
Importar o arquivo abaixo no Postman:
Para visualizar o swagger copiar o conteúdo do arquivo
após copiar cole no site do swagger editor.
Visão global da aplicação em funcionamento
- Order
- Payment
- Administrador
- Cliente
- Cozinha x Atendente
- Monitor
Executando a aplicação para desenvolvimento via docker-compose
Executando a aplicação via docker-compose
Executando a aplicação via minikube
Para execução do projeto esta sendo utilzado as seguintes bibliotecas e ferramentas abaixo.
- Java Versão 17
openjdk 17.0.7 2023-04-18
OpenJDK Runtime Environment (build 17.0.7+7-Ubuntu-0ubuntu120.04)
OpenJDK 64-Bit Server VM (build 17.0.7+7-Ubuntu-0ubuntu120.04, mixed mode, sharing)
- Maven versão 3.8.1
Apache Maven 3.8.1 (05c21c65bdfed0f71a2f2ada8b84da59348c4c5d)
Maven home: /usr/local/apache-maven-3.8.1
Java version: 17.0.7, vendor: Private Build, runtime: /usr/lib/jvm/java-17-openjdk-amd64
Default locale: pt_BR, platform encoding: UTF-8
OS name: "linux", version: "5.14.0-1059-oem", arch: "amd64", family: "unix"
- Docker version 23.0.1
Docker version 23.0.1, build a5ee5b1
- Docker Compose version 1.29.2
docker-compose version 1.29.2, build 5becea4c
- IntelliJ IDE Community Edition
IntelliJ IDEA 2023.1.2 (Community Edition)
Build #IC-231.9011.34, built on May 16, 2023
- MongoDB Compass versão 1.31.2
Todo o processo de criação de novas features e correções de bugs devem sguir o processo desenhado abaixo
Todos os PRs (Pull Requests) devem ter o corpo da mensagem abaixo:
Modelo: Features
Features:
* Task X: Implementação da criação do item H
* Task Y: Inclusão de novo endpoint na API W para cadastrar Z
Modelo: Bug Fix
Bug Fix
* Task U.1: Correção do cadastro do item ABC
Todos os commits devem contem uma das seguintes tags abaixo:
- feat: implementação de uma funcionalidade nova
- fix: correção de bugs
- chore: ajustes simples no código sem comprometer uma feature
- style: ajustes de identação, nome de variável ou remoção de imports não utilizados
- docs: alteração ou inclusão de documentação
- ci: alteração de pipelines
- refactor: refatoração de métodos e classes para uma melhor leitura do código ou desempenho
- test: inclusão de testes unitários ou de integração
Mensagem de todo commit:
Modelo
TAG_COMMIT: mensagem descrevendo o que foi feito no commit
Exemplo
feat: Foi criado novo endpoint na implementação de Y
-
Vá até o diretório da aplicação, onde se encontra o pom.xml
-
Execute o comando maven para gerar o pacote
mvn clean package
-
Buildar o dockerfile, informando o Nome da imagem e a TAG, ao final o "." define que é para usar o dockerfile contino no diretório corrente
docker build -t totem-food-service:1.0.0 .
-
Para visualizar a imagem criada, basta listar com o comando
docker images
-
Para executar um container baseado na imagem gerada, basta executar o comando abaixo
docker run -d -p 8080:8080 --name totem-food-service -t totem-food-service:1.0.0
-
Para ver os logs, execute
docker logs totem-food-service --follow
-
Para matar a execução do container, execute
docker rm -f totem-food-service
- Para análise de código e vulnerabilidade, utilizamos a ferramenta Sonar Cloud (https://sonarcloud.io/)