... | ... | @@ -8,7 +8,7 @@ |
|
|
![Infraestrutura_AGES](uploads/1d0d19ad968b9e39fcd97b21ee6208d2/AGES_-_Infrastructure.jpeg)
|
|
|
|
|
|
A API utilizada para a aplicação do projeto Soul Amada é executada em um container Docker dentro que é executado dentro de uma EC2, que está em uma VPC privada dentro de uma sub rede própria desta EC2. A aplicação backend se comunica com o banco de dados que guarda os dados da aplicação
|
|
|
Para o banco de dados, o RDS é utilizado como um banco de dados auto gerenciado e escalável.
|
|
|
Para o banco de dados, o Supabase é utilizado como um banco de dados auto gerenciado e escalável.
|
|
|
Além disto, um bucket do S3 é utilizado para o armazenamento de arquivos da aplicação, tornando o manejo de arquivos por parte da API um processo mais fácil.
|
|
|
Para facilitar o acesso a API, um API gateway foi provisionado para redirecionar as chamadas para a EC2.
|
|
|
|
... | ... | @@ -17,7 +17,7 @@ Para facilitar o acesso a API, um API gateway foi provisionado para redirecionar |
|
|
![AGES_CI_CD_Pipeline](uploads/bc82117402fd2d81cb60209d50cd01e0/AGES_-_CI_CD_Pipeline.jpeg)
|
|
|
|
|
|
O processo de deploy acontece quando um commit é feito na branch "main" do repositório do backend da aplicação.
|
|
|
Com isto, um runner do Gitlab é executado na própria EC2 onde a API está hospedada, onde executará os testes e enviará as migrações do Prisma para o banco de dados no RDS.
|
|
|
Com isto, um runner do Gitlab é executado na própria EC2 onde a API está hospedada, onde executará os testes e enviará as migrações do Prisma para o banco de dados no Supabase.
|
|
|
Após realizar a etapa de enviar as migrações para o banco de dados, o runner faz o "build" da imagem da API, finaliza algum container da API que já esteja em execução caso este exista, e executa um novo container com a nova imagem criada.
|
|
|
|
|
|
|
... | ... | |