Publicado en: Jul 26, 2023
AWS CloudFormation anuncia la capacidad de crear bucles con la función intrínseca Fn::ForEach. Con Fn::ForEach, puede replicar partes de sus plantillas con un mínimo de líneas de código. Puede usar Fn::ForEach para simplificar el diseño de su plantilla y hacer que sea más fácil y rápido para usted y sus compañeros revisar su código. La función Fn::ForEach ayuda a reducir los errores humanos, como actualizar propiedades incorrectas o no actualizar varias propiedades de destino en su plantilla.
Para usar la función Fn::ForEach, debe declarar la transformación AWS::LanguageExtensions. La transformación de las extensiones de lenguaje amplía la funcionalidad del lenguaje de las plantillas base JSON/YAML de CloudFormation. Con este lanzamiento, puede usar la función Fn::ForEach en las secciones de Recursos, Propiedades de los recursos, Condiciones y Salidas de sus plantillas. Por ejemplo, puede declarar cinco instancias de AWS::DynamoDB::Table con nombres de identificador únicos mediante Fn::ForEach en lugar de replicar las mismas líneas de código. Además, puede usar bucles anidados de Fn::ForEach y combinarlos con otras funciones intrínsecas como Fn::Join para generar plantillas avanzadas. Por ejemplo, puede combinar recursos como VPC, subredes y puertas de enlace de tránsito como bucles anidados para crear una pila de redes. Consulte la guía del usuario para ver ejemplos con plantillas de muestra.
La función intrínseca Fn::ForEach está disponible en las regiones de AWS en las que CloudFormation está disponible. Consulte la tabla de regiones de AWS para ver las regiones de AWS en las que está disponible CloudFormation.
Fn::ForEach es el resultado de debates abiertos con la comunidad de CloudFormation a través de nuestro repositorio en Github de Debates sobre lenguajes. Agradecemos a la comunidad por compartir sus comentarios. Visite el repositorio de debates sobre lenguajes para solicitar características de lenguaje y dejar sus comentarios sobre las propuestas de solicitud de comentarios (RFC) para las nuevas características de lenguaje.