AWS CloudFormation é uma linguagem declarativa proprietária para provisionar a infraestrutura AWS como código. Arquivos CloudFormation escritos à mão são frequentemente uma abordagem padrão para bootstrap na automação da infraestrutura AWS. Embora isso possa ser uma maneira sensata de se começar um projeto pequeno, nossos times – e a maioria da indústria – acham que CloudFormation escrito à mão simplesmente não escala à medida que a infraestrutura cresce. Armadilhas visíveis de arquivos CloudFormation escritos à mão para projetos grandes incluem legibilidade ruim, falta de construções imperativas, definição e uso de parâmetros limitados e falta de verificação de tipagem. Resolver essas armadilhas levou a um rico ecossistema de ferramentas de código aberto e customizadas. Achamos que Terraform é um padrão sensato que não apenas resolve as armadilhas da CloudFormation, mas também tem uma comunidade ativa que adiciona os recursos mais recentes de AWS e soluciona os problemas. Além da Terraform, você pode escolher dentre muitas outras ferramentas e linguagens, incluindo troposphere, sceptre, Stack Deployment Tool e Pulumi.