Api para registrar datos de un formulario web, usando el siguiente stack de AWS:
- ApiGateway https://aws.amazon.com/es/api-gateway/
- Function Lambda https://aws.amazon.com/es/lambda/
- DynamoDB https://aws.amazon.com/es/dynamodb/
- Cloudwatch https://aws.amazon.com/es/cloudwatch/
- source Code (directorio app)
- Dockerfile (directorio dev/Dockerfile)
- Makefile
- Docker
- Cmake
- make
- make help
Target Help Usage
------ ---- -----
build Construir imagen para development make build
create.venv Crea el entorno virtual (virtualenv) make create.venv
delete.function.bucket Elimina la funcion lambda de s3 make delete.function.bucket
delete.function Elimina el zip de la funcion lambda generada make delete.funcion
install.libs Instala las librerias en el entorno virtual (virtualenv) make install.libs
list.installed.lib Listar librerias instaladas make list.installed.lib
package.function Empaqueta la funcion lambda en un archivo zip make create.lambda.zip
ssh Conectar al container por el protocolo ssh make ssh
update.function Actualizar funcion lambda make update.function
upload.function.bucket Sube la funcion lambda al bucket s3 make upload.function
### Empezando
Ejecutar los siguientes pasos:
- make build
- make create.venv
- make install.libs
### Agregar/Eliminar librerias
Esto se realiza en el archivo requirements.txt. Luego ejecutar el comando:
- make install.libs
POST /v1/api/form
{
"subject": "----subject----",
"email": "[email protected]",
"message": ----message----
}
Retorna 200 OK:
{
"message": "record successfully",
"data": {
"recordId": "b05edcfd-690f-4cda-acbd-b362b969160b"
}
}