Skip to content

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.

Notifications You must be signed in to change notification settings

ALFAC-Org/video-studio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Video Studio · Coverage CI/CD

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:

  1. A provisão da infraestrutura https://github.com/ALFAC-Org/video-studio;
  2. A provisão das lambdas https://github.com/ALFAC-Org/video-serveless-function;
  3. A provisão deste repositório.

passos-seguir

Arquitetura

Visão Geral

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.

Fluxo

fluxo

Veja também no documento no Miro.

Qualidade

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.

Segurança

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.

Privacidade de Dados e LGPD

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

Como rodar o projeto

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

Via GitHub Actions (recomendada)

Passo a passo
  1. Acesse https://github.com/ALFAC-Org/video-studio/actions (A guia Actions deste repositório);
  2. Acesse Deploy;
  3. Clique em Run workflow (ou Executar workflow);
  4. Aguarde. Se tudo der certo, o check verde deverá aparecer - o processo dura em torno de 1 minuto;
    1. deploy-sucesso
  5. Para acessar a aplicação, acesse a plataforma AWS > EC2 > Load Balancer

A url final será:

http://url-do-load-balancer:8080/api-docs

Localmente

Passo a passo

Requisitos

  • Docker e Kubernetes
  1. Clone este repositório:
git clone https://github.com/ALFAC-Org/video-studio
  1. Acesse o diretório do repositório:
cd video-studio
  1. Aplique as configurações:
kubectl apply -f k8s/dev/shared
kubectl apply -f k8s/dev/backend
  1. Acesse a aplicação no endereço: http://localhost:30001/api-docs

Membros

Nome RM E-mail 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

About

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.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages