Publicado: Jul 26, 2023

O AWS CloudFormation anuncia a capacidade de loop com a função intrínseca Fn::ForEach. Com Fn::ForEach, você pode replicar partes dos seus modelos com o mínimo de linhas de código. Você pode usar Fn::ForEach para simplificar o layout do seu modelo e tornar mais fácil e rápido para você e seus colegas revisar seu código. Fn::ForEach ajuda a reduzir erros humanos, como atualizar propriedades erradas ou perder a atualização de várias propriedades de destino em seu modelo.

Para usar Fn::ForEach, você precisa declarar a transformação AWS::LanguageExtensions. A transformação das extensões de linguagem expande a funcionalidade da linguagem básica do modelo JSON/YAML do CloudFormation. Com esse lançamento, você pode usar Fn::ForEach nas seções Recursos, Propriedades do recurso, Condições e Saídas dos seus modelos. Por exemplo, você pode declarar cinco instâncias da AWS::DynamoDB::Table com nomes de identificadores exclusivos usando Fn::ForEach em vez de replicar as mesmas linhas de código. Além disso, você pode usar loops Fn::ForEach aninhados e combinar Fn::ForEach com outras funções intrínsecas, como Fn::Join, para gerar modelos avançados. Por exemplo, você pode combinar recursos como VPCs, Sub-redes e Gateways de Trânsito como loops aninhados para criar uma pilha de rede. Consulte o guia do usuário para ver exemplos com modelos de amostra.

A função intrínseca Fn::ForEach está disponível nas regiões da AWS nas quais o CloudFormation é oferecido. Consulte a tabela de regiões da AWS para ver em quais regiões o CloudFormation está disponível.

Fn::ForEach é o resultado de discussões abertas com a comunidade CloudFormation por meio do nosso repositório do Github sobre discussão de linguagens. Agradecemos à comunidade por compartilhar seus comentários. Acesse o repositório de linguagens para solicitar atributos de linguagens e comentar sobre propostas de Request for Comments (RFC – Solicitação de Comentários) de novos recursos de linguagens.