Skip to content

ALFAC-Org/food-serveless-function

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Funções Serveless - ALFAC

Este é um repositório git que utiliza as configurações anteriormente criadas pelo repositório https://github.com/ALFAC-Org/food-cloud-infra para aplicar as configurações faltantes para a provisão de recursos de funções lambdas ou funções serveless da aplicação Fast Food - ALFAC. Nele, você encontrará as lambdas que são executadas na aplicação, bem como o fluxo para a atualização destes códigos. No momento, o repositório está focado na Amazon Web Services (AWS), usando as funções lambdas. Entretanto, o repositório é flexível para adaptação para outros provedores de funções serveless.

Warning

Para completo funcionamento da plataforma, é necessário seguir todo o fluxo de provisionamento:

  1. A provisão do repositório de infraestrutura: https://github.com/ALFAC-Org/food-cloud-infra;
  2. A provisão do repositório dos bancos de dados: https://github.com/ALFAC-Org/food-database;
  3. A provisão deste repositório;
  4. A provisão das aplicações:
    1. https://github.com/ALFAC-Org/food-cliente;
    2. https://github.com/ALFAC-Org/food-produto;
  5. E por fim, o provisionamento da aplicação principal em https://github.com/ALFAC-Org/food.

passos-seguir

Conceito

Toda a infraestrutura é criada no repositório https://github.com/ALFAC-Org/food-cloud-infra, haja visto que é necessário a obtenção de informações de VPC, API Gateways, grupos de acesso e entre outros. Com isso, este repositório fica responsável por de fato, atualizar o código que será utilizado pela a aplicação.

De modo geral, as lambdas ficarão responsáveis por provisionar a identificação e autenticação do usuário através do CPF dentro da plataforma.

Tutoriais

Passo Vídeo
0. Introdução geral 00-INTRODUCAO_GERAL
1. Introdução aos repositórios 01-INTRODUCAO_AOS_REPOSITORIOS
2. Configuração das variáveis ambiente 02-CONFIGURACAO_VARIAVEIS_AMBIENTE
3. Provisão da infraestrutura com https://github.com/ALFAC-Org/food-cloud-infra 03-PROVISAO_INFRA_P1 / 03-PROVISAO_INFRA_P2
4. Provisão dos bancos de dados com https://github.com/ALFAC-Org/food-database 04-PROVISAO_DB_P1 / 04-PROVISAO_DB_P2
5. Provisão das lambdas com https://github.com/ALFAC-Org/food-serveless-function 05-PROVISAO_LAMBDAS_P1 / 05-PROVISAO_LAMBDAS_P1
6. Provisão da aplicação food-produto https://github.com/ALFAC-Org/food-produto 06-PROVISAO_FOOD_PRODUTO_P1 / 06-PROVISAO_FOOD_PRODUTO_P2
7. Provisão da aplicação food-cliente https://github.com/ALFAC-Org/food-cliente 07-PROVISAO_FOOD_CLIENTE_P1 / 07-PROVISAO_FOOD_CLIENTE_P2
8. Provisão da aplicação principal com https://github.com/ALFAC-Org/food 08-PROVISIONA_FOOD_P1 / 08-PROVISIONA_FOOD_P2
9. Simulando cliente na plataforma: Load Balancer e API Gateway 09-01_FLUXO_LOAD_BALANCER / 09-02_FLUXO_API_GATEWAY

Todos os vídeos estão disponíveis também aqui: https://drive.google.com/drive/folders/1C9UbKeiVNRIM7CSv-HMgMHZflwbqI5tQ?usp=sharing

Como rodar o projeto

  • Via GitHub Actions
Passo a passo
  1. Acesse https://github.com/ALFAC-Org/food-serveless/actions (A guia Actions deste repositório);
  2. Acesse Deploy to AWS Lambda;
  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 2 a 5 minutos;
    1. infra-criada-sucesso
    2. serveless-sucesso

Recursos provisionados

Os seguintes recursos serão criados/atualizados:

  • Lambdas: novo código/versão, bem como variáveis ambiente necessárias para estas lambdas.

Acessando as lambdas

Você saberá que tudo estará bem, quando acessar a aplicação principal https://github.com/ALFAC-Org/food acessando a url do Load Balancer e então tentando cadastrar ou obter alguma informação do sistema.

Ou então acessando ao console AWS e verificando pelas lambdas criadas.

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 as funções na cloud

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •