La CLI de AWS SAM aporta compatibilidad con las extensiones de lenguaje de AWS CloudFormation para acelerar el desarrollo local sin servidores

Publicado en: 18 de may de 2026

La CLI de AWS SAM ahora es compatible con las extensiones de lenguaje de AWS CloudFormation, lo que le permite reducir la duplicación en las plantillas de infraestructura como código (infrastructure as code, IaC) y, al mismo tiempo, retener todo el flujo de trabajo de desarrollo local. Esto acelera el desarrollo sin servidor, lo que le permite definir los recursos una vez e iterarlos localmente sin esperar a los despliegues en la nube.

Con frecuencia, los desarrolladores necesitan definir varios recursos similares, como funciones de Lambda, tablas de DynamoDB o temas de SNS, a partir de una única definición de plantilla. Sin embargo, los desarrolladores que utilizaban la CLI de SAM para crear, probar e implementar sus aplicaciones sin servidor anteriormente no podían procesar plantillas que utilizaran extensiones de lenguaje de CloudFormation. Esto requería elegir entre reducir la duplicación de plantillas y usar la CLI de SAM para el desarrollo local. Ahora, la CLI de SAM procesa las extensiones de lenguaje en la memoria para las operaciones locales y, al mismo tiempo, conserva la plantilla original para el despliegue de CloudFormation. Puede definir los recursos una vez, probarlos localmente en todos los comandos de la CLI de SAM y detectar errores, como una sintaxis no válida o dependencias faltantes antes de desplegarlos. Esto acorta los ciclos de iteración y reduce el tiempo dedicado a depurar los despliegues fallidos en la nube.

Para comenzar, descargue o actualice la CLI de SAM a la versión más reciente. Agregue la transformación AWS::LanguageExtensions a la plantilla de SAM y utilice Fn::ForEach para generar varios recursos a partir de una única definición. Los comandos de la CLI de SAM, incluidos sam build, sam local invoke, sam sync, sam local start-api y sam validate, expandirán automáticamente los bucles y procesarán cada recurso generado. Puede invocar funciones ampliadas por nombre, por ejemplo, sam local invoke AlphaFunction. La CLI de SAM también admite los atributos Fn::Length, Fn::ToJsonString, Fn::FindInMap con DefaultValue y los atributos condicionales DeletionPolicy y UpdateReplacePolicy.

Para obtener más información, visite la guía del desarrollador de la CLI de SAM y la publicación del blog de lanzamiento.