Desarrollo local de funciones de Lambda
Puede mover las funciones de Lambda de la consola de Lambda al entorno de desarrollo integrado (IDE) que prefiera, que brinda un entorno de desarrollo completo en el que puede utilizar otras opciones de desarrollo local, como AWS SAM y AWS CDK. La consola de Lambda admite la apertura de funciones directamente en Visual Studio Code, Kiro o Cursor.
Beneficios clave del desarrollo local
Si bien la consola de Lambda brinda una forma rápida de editar y probar funciones, el desarrollo local ofrece capacidades más avanzadas:
-
Características avanzadas del IDE: herramientas de depuración, finalización de código y refactorización
-
Desarrollo sin conexión: trabaje y pruebe los cambios de manera local antes de su implementación en la nube
-
Integración de la infraestructura como código: uso sin problemas con AWS SAM, AWS CDK e Infrastructure Composer
-
Administración de dependencias: control total sobre las dependencias de las funciones
Requisitos previos
Antes de desarrollar funciones de Lambda localmente con Visual Studio Code, Kiro y Cursor, debe instalarlas siguiendo las instrucciones siguientes:
-
Visual Studio Code: consulte las instrucciones de instalación en Download Visual Studio Code
. -
Kiro: consulte las instrucciones de instalación en Getting started with Kiro
. -
Cursor: consulte las instrucciones de instalación en Download Cursor
.
También necesitará lo siguiente:
-
AWS Toolkit for Visual Studio Code: consulte las instrucciones de instalación de Visual Studio Code en Setting up the AWS Toolkit for Visual Studio Code. Para obtener una descripción general, consulte AWS Toolkit for Visual Studio Code
. -
Credenciales de AWS: para obtener información sobre cómo configurar las credenciales, consulte Configuración de las credenciales de AWS.
-
AWS SAM CLI: para obtener instrucciones acerca de la instalación, consulte Instalación de AWS SAM CLI.
-
Docker instalado (opcional, pero obligatorio para las pruebas locales): para obtener instrucciones acerca de la instalación, consulte Obtener Docker
.
nota
Si ya tiene una cuenta y un perfil de AWS configurados de manera local, asegúrese de agregar la política administrada por AdministratorAccess al perfil de AWS configurado.
Autenticación y control de acceso
Para desarrollar las funciones de Lambda de manera local, necesita credenciales de AWS para acceder y administrar los recursos de AWS de forma segura en su nombre, tal como lo harían en la nube.
El Kit de herramientas de AWS para Visual Studio Code admite los siguientes métodos de autenticación:
-
Credenciales a largo plazo de usuarios de IAM
-
Credenciales temporales de roles asumidos
-
Identidad federada
-
AWSCredenciales de usuario raíz de la cuenta de (no se recomienda)
En esta sección, se explica cómo obtener y configurar estas credenciales con las credenciales a largo plazo de los usuarios de IAM.
Obtención de credenciales de IAM
Si ya dispone de un usuario de IAM con claves de acceso, tenga el ID de clave de acceso y la clave de acceso secreta listos para la siguiente sección. Si no dispone de estas claves, siga estos pasos para crearlas:
nota
Debe utilizar el ID de clave de acceso y la clave de acceso secreta juntos, como un nombre de usuario y contraseña, para autenticar sus solicitudes.
Para crear un usuario de IAM y claves de acceso:
-
Abra la consola de IAM en https://console.aws.amazon.com/iam/
. -
En el panel de navegación, seleccione Usuarios.
-
Seleccione la opción Crear un usuario.
-
En Nombre de usuario, introduzca un nombre y elija Siguiente.
-
En Establecer permisos , elija Asociar directamente las políticas existentes.
-
Seleccione AdministratorAccess y elija Siguiente.
-
Seleccione la opción Crear un usuario.
-
En el panel de éxito, elija Ver usuario.
-
Elija Create access key (Crear clave de acceso).
-
En Caso de uso, seleccione Código local.
-
Seleccione la casilla de verificación de confirmación y elija Siguiente.
-
(Opcional) Introduzca un valor de etiqueta de descripción.
-
Elija Create access key (Crear clave de acceso).
-
Copie su clave de acceso y su clave de acceso secreta inmediatamente. No podrá volver a acceder a la clave de acceso secreta después de salir de esta página.
importante
Nunca comparta su clave secreta ni la envíe al control de código de origen. Guarde estas claves de forma segura y elimínelas cuando ya no las necesite.
nota
Para obtener más información, consulte Crear un usuario de IAM en su cuenta de AWS y Administrar las claves de acceso para los usuarios de IAM en la Guía del usuario de IAM.
Configure las credenciales de AWS mediante el Toolkit de AWS
En la siguiente tabla, se resume el proceso de configuración de credenciales que completa en el siguiente procedimiento.
| Solución | ¿Por qué? |
|---|---|
| Abra el panel de inicio de sesión | Iniciar la autenticación |
| Utilice la paleta de comandos y busque Agregar una nueva conexión de AWS | Acceda a la interfaz de inicio de sesión |
| Elija la credencial de IAM | Utilice sus claves de acceso para el acceso programático |
| Introduzca el nombre del perfil, la clave de acceso y la clave secreta | Brinde las credenciales para la conexión |
| Consulte la actualización de AWS Explorer | Confirme que está conectado |
Complete los siguientes pasos para autenticarse en su cuenta de AWS:
nota
Los siguientes pasos se aplican a Visual Studio Code, Kiro y Cursor. Como Kiro y Cursor se basan en Visual Studio Code, el flujo de autenticación es el mismo en los tres IDE.
-
Abra el panel de inicio de sesión en su IDE:
Para iniciar el proceso de autenticación, seleccione el icono AWS en el panel de navegación izquierdo o abra la paleta de comandos (Cmd+Shift+P en Mac o Ctrl+Shift+P en Windows/Linux) y busque y seleccione Agregar una nueva conexión de AWS.
-
En el panel de inicio de sesión, elija Credenciales de IAM y, a continuación, seleccione Continuar.
nota
Para continuar, debe permitir que las extensiones del IDE de AWS puedan acceder a sus datos.
-
Introduzca el nombre de su perfil, el ID de la clave de acceso y la clave de acceso secreta y, a continuación, seleccione Continuar.
-
Verifique la conexión; para ello, consulte Explorador de AWS en su IDE para ver los servicios y recursos de AWS.
Para obtener información sobre cómo configurar la autenticación con credenciales de larga duración, consulte Uso de credenciales de larga duración para autenticar los SDK y las herramientas de AWS.
Para obtener información acerca de cómo configurar la autenticación, consulte Credenciales de IAM de AWS en la Guía del usuario de AWS Toolkit for Visual Studio Code.
Paso de la consola al desarrollo local
nota
Si ha realizado cambios en la consola, asegúrese de no tener ningún cambio sin implementar antes de pasar al desarrollo local.
Para mover una función de Lambda de la consola de Lambda a un IDE local, complete los siguientes pasos:
-
Abra la consola de Lambda
. -
Elija el nombre de su función.
-
Seleccione la pestaña Código fuente.
-
Abra la función en el IDE que prefiera; para ello, seleccione la flecha desplegable situada junto al botón. Las opciones compatibles son Abrir en Visual Studio Code, Abrir en Kiro y Abrir en Cursor.
nota
La selección de IDE se mantiene. Una vez que elija un IDE, las visitas posteriores mostrarán ese IDE como botón principal.
-
Cuando se le solicite, permita que su navegador abra el IDE seleccionado.
Al abrir la función en su IDE, Lambda crea un proyecto local con el código de la función en una ubicación temporal diseñada para realizar pruebas e implementaciones rápidas. Esto incluye el código de la función, las dependencias y una estructura de proyecto básica que puede utilizar para el desarrollo local.
nota
El botón Abrir en IDE requiere la versión 3.69.0 o posterior del Kit de herramientas de AWS. Si tiene una versión anterior del Kit de herramientas de AWS instalada, es posible que vea el mensaje Cannot open the handler. Para resolver esto, actualice su Toolkit de AWS a la última versión.
Para obtener más información sobre el uso de AWS en su IDE, consulte la Guía del usuario de AWS Toolkit for Visual Studio Code.
Trabajo con funciones de forma local
Después de abrir la función en su IDE preferido, siga estos pasos para acceder a sus funciones y administrarlas. Para el siguiente ejemplo, hemos utilizado Visual Studio Code.
-
Seleccione el icono de AWS en la barra lateral para abrir AWS Explorer:
-
En AWS Explorer, seleccione la región con la función de Lambda:
-
En la región seleccionada, expanda la sección Lambda para ver y administrar sus funciones:
Con la función abierta en su IDE, puede:
-
Editar el código de la función con soporte lingüístico completo y compleción de código.
-
Usar la integración de LocalStack para probar las funciones de Lambda que realizan llamadas a la API a otros Servicios de AWS durante la ejecución, como la lectura de tablas de DynamoDB o la escritura en buckets de Amazon S3. LocalStack es un emulador de servicio en la nube que proporciona un entorno de desarrollo local completo para realizar pruebas de las integraciones de servicios. También puede usar la CLI de AWS SAM para probar su función en un contenedor local. Si la función realiza llamadas a la API a otros Servicios de AWS, esas llamadas llegarán a recursos de AWS reales, no a recursos emulados.
-
Depurar su función con puntos de interrupción e inspección de variables. Para obtener más información, consulte Ejecución y depuración de funciones de Lambda directamente desde el código en la Guía del usuario de AWS Toolkit for Visual Studio Code.
-
Volver a implementar la función actualizada en AWS utilizando el icono de la nube.
-
Instalar y administrar las dependencias para su función.
Convierta su función en una plantilla de AWS SAM y utilice las herramientas de IaC
En todos los IDE compatibles (Visual Studio Code, Kiro y Cursor), puede convertir la función de Lambda en una plantilla de AWS SAM al elegir el ícono Convertir en aplicación de AWS SAM situado junto a la función de Lambda. Se le pide que seleccione una ubicación para el proyecto de AWS SAM. Una vez seleccionada, la función de Lambda se convierte en un archivo template.yaml que se guarda en el nuevo proyecto de AWS SAM.
Con la función convertida en una plantilla de AWS SAM, puede:
Controlar el control de versiones de su infraestructura
Automatizar las implementaciones
Depurar de forma remota las funciones
Agregar recursos adicionales de AWS a la aplicación
Mantener entornos coherentes durante todo su ciclo de vida de desarrollo
Utilizar Infrastructure Composer para editar visualmente la plantilla de AWS SAM
Para obtener más información sobre el uso de herramientas de IaC, consulte las siguientes guías:
Estas herramientas brindan capacidades adicionales para definir, probar e implementar sus aplicaciones sin servidor.
Siguientes pasos
Para obtener más información acerca del trabajo con funciones de Lambda en Visual Studio Code, consulte los siguientes recursos:
-
Working with AWS Lambda functions en la Guía del usuario del Kit de herramientas de AWS para Visual Studio Code
-
Working with serverless applications en la Guía del usuario del Kit de herramientas de AWS para Visual Studio Code
-
La infraestructura como código en la Guía para desarrolladores de Lambda