Repositório para o projeto de hackathon (2024 - 7SOAT - Grupo 34) do curso de Arquitetura de Software da FIAP Pós Tech. O projeto gerencia o envio e processamento de vídeos, transformando em imagens em um arquivo .zip
. Além do cadastro e autenticação dos usuários desta plataforma.
Warning
Para completo funcionamento da plataforma, é necessário seguir todo o fluxo de provisionamento:
- A provisão da infraestrutura https://github.com/ALFAC-Org/video-studio;
- A provisão das lambdas https://github.com/ALFAC-Org/video-serveless-function;
- A provisão deste repositório.
A aplicação está estruturada no padrão de Hexagonal.
Pode ser executada tanto via Docker, Kubernetes e Terraform.
Podendo ser hospedada tanto localmente ou na nuvem, usando serviços como AWS.
A interação da aplicação se dá através de APIs com o Swagger disponibilizado.
Veja também no documento no Miro.
A aplicação possui checagem de qualidade do código através da action Tests. Qualquer erro na action, o build da aplicação falhará. Uma vez corrigido, o build continuará normalmente.
A aplicação possui checagem de segurança dos pacotes instalados através da action Security Check. Caso exista algum pacote que precisa ser atualizado e que seja considerado de atualização gravíssima, (nível 10 do https://hub.docker.com/r/owasp/dependency-check), o build da aplicação falhará. Uma vez corrigido, o build continuará normalmente.
Uma vez que o usuário faz o upload de um vídeo na plataforma, ele estará concordando com os termos de uso da plataforma. Estes termos de uso estão disponíveis uma vez que a aplicação está rodando em /api/v1/terms
Variáveis a se trocar:
- APPLICATION_VERSION
- ENABLE_FLYWAY
- SPRING_DATASOURCE_URL
- SPRING_DATASOURCE_USERNAME
- SPRING_DATASOURCE_PASSWORD
Existem duas formas com as quais você pode ver esse repositório em ação:
- Via GitHub Actions (recomendada)
- Localmente
Passo a passo
- Acesse https://github.com/ALFAC-Org/video-studio/actions (A guia
Actions
deste repositório); - Acesse
Deploy
; - Clique em
Run workflow
(ou Executar workflow); - Aguarde. Se tudo der certo, o
check
verde deverá aparecer - o processo dura em torno de 1 minuto; - Para acessar a aplicação, acesse a plataforma AWS > EC2 > Load Balancer
A url final será:
Passo a passo
- Docker e Kubernetes
- Clone este repositório:
git clone https://github.com/ALFAC-Org/video-studio
- Acesse o diretório do repositório:
cd video-studio
- Aplique as configurações:
kubectl apply -f k8s/dev/shared
kubectl apply -f k8s/dev/backend
- Acesse a aplicação no endereço: http://localhost:30001/api-docs
Nome | RM | GitHub | |
---|---|---|---|
Leonardo Fraga | RM354771 | rm354771@fiap.com.br | @LeonardoFraga |
Carlos Henrique Carvalho de Santana | RM355339 | rm355339@fiap.com.br | @carlohcs |
Leonardo Alves Campos | RM355568 | rm355568@fiap.com.br | @lcalves |
Andre Musolino | RM355582 | rm355582@fiap.com.br | @amusolino |
Caio Antunes Gonçalves | RM354913 | rm354913@fiap.com.br | @caio367 |