Criando FaaS e configurando ambiente

Allan Barbosa
allbarbos
Published in
2 min readJul 2, 2019

Criar lambdas é um processo simples, porém para não ter minha saúde mental abalada utilizarei o Serverless Framework afim de facilitar o gerenciamento das funções.

Para iniciar basta executar os comandos abaixo via CLI.

$ serverless create --template aws-nodejs --path consulta-cep
$ cd consulta-cep
$ npm init -y
$ npm i -E serverless serverless-offline

A lib serverless-offline nos permite debugar localmente o código e para que tudo funcione corretamente adicionei algumas informações no serverless.yml

service: consulta-cepprovider:
name: aws
runtime: nodejs10.x
stage: dev
region: us-east-1
functions:
ceps:
handler: src/handler.ceps
events:
- http:
path: ceps/{cep}
method: get
request:
parameters:
paths:
cep: true
plugins:
- serverless-offline

No Visual Studio Code adicionei o seguinte código para debug:

{
"type": "node",
"request": "launch",
"name": "Serverless",
"program": "${workspaceFolder}/node_modules/.bin/sls",
"cwd": "${workspaceFolder}",
"args": ["offline"]
}

Ao executar o projeto (F5) será impresso no console a rota de acesso, basta realizar uma requisição e tudo estará funcionando, inclusive o debug.

Debug VS Code
Response

A partir de agora podemos focar apenas no código que realmente importa! :)

Sendo assim implementei uma função simplória que consulta o WS dos correios e retorna os dados do CEP em questão, todo o código você pode acessar no Github e abaixo um snapshot de como ficou a estrutura de pastas e etc.

A ideia agora é adicionar novas funções neste projeto para que possamos ver como é o funcionamento do projeto e depois realizarmos o deploy disso tudo.

Porém ficará para o próximo post :)

--

--