Ir al contenido
Star
478
Star
478

Lambda (SAM)

Esta guía te muestra cómo trabajar con AWS Lambda utilizando el Serverless Application Model (SAM) y Python. Este ejemplo demuestra cómo compilar y ejecutar un servicio local de API Gateway y Lambda para su invocación directa con el SDK.

  1. Configurar el entorno: Ejecuta el script de configuración para instalar las herramientas y dependencias.

    Ventana de terminal
    scripts/setup.sh
  2. Iniciar la infraestructura: Inicia ambos servicios locales de SAM (API Gateway y Lambda) en terminales separadas.

    • API Gateway: para realizar peticiones HTTP o cURL:

      Ventana de terminal
      sam local start-api
    • Lambda SDK: para usar el AWS SDK (boto3) o la AWS CLI:

      Ventana de terminal
      sam local start-lambda
  3. Ejecutar el ejemplo:

    Ventana de terminal
    python main.py

Utiliza los perfiles de depuración preconfigurados de VS Code:

  1. Script Python (main.py):

    • Asegúrate de que los servicios locales de SAM estén en ejecución (sam local start-api y sam local start-lambda).
    • Ejecuta la configuración de depuración Python: Main.
  2. Función Lambda:

    • Ejecuta la configuración de depuración SAM: Debug get_secret.
  • Todos los tests: Ejecuta el script automatizado:
    Ventana de terminal
    scripts/run_tests.sh
  • Individualmente: Usa la pestaña Testing de VS Code para ejecutar o depurar casos de test específicos.
  • Logs: Revisa la salida de la consola en las terminales donde se está ejecutando sam local para verificar los detalles de la invocación y los mensajes de log.
  • AWS CLI Output: Verifica que el archivo generado output.json contenga el cuerpo de la respuesta HTTP y el código de estado esperados.
  1. Detén los servicios locales de SAM activos en tus terminales.
  2. Elimina el entorno virtual y las herramientas desinstaladas:
    Ventana de terminal
    rm -rf .venv
    mise uninstall -a