~/questoes/devops
Modularizar código Terraform significa dividir sua infraestrutura em blocos reutilizáveis e independentes. Essa prática é fundamental em projetos DevOps porque transforma configurações complexas em componentes organizados, facilitando manutenção, reutilização e trabalho em equipe.
Organizar código Terraform em módulos permite reutilizar código entre projetos, facilita correções e atualizações em um único lugar, e promove padrões consistentes quando múltiplas pessoas trabalham na mesma infraestrutura. Um módulo bem estruturado é como um 'componente pronto para usar' que você aplica onde precisa.
Módulos Terraform não testam automaticamente compatibilidade com versões antigas. A compatibilidade é responsabilidade do desenvolvedor, que deve especificar a versão mínima do Terraform no bloco terraform { required_version = "..." }.
Módulos Terraform não reduzem tamanho de imagens Docker nem aceleram builds. Terraform e Docker são ferramentas separadas. Terraform provisiona infraestrutura, enquanto Docker cria containers. A confusão vem de ambas fazerem parte de um pipeline DevOps, mas não se influenciam dessa forma.
Infraestrutura sempre precisa ser atualizada e modificada. Servidores recebem patches, aplicações evoluem, requisitos mudam. O Terraform facilita essas mudanças de forma controlada e versionada, mas não elimina a necessidade delas.
Esta é a resposta correta. Módulos Terraform permitem reutilização (você cria uma vez, usa em vários projetos), melhor manutenção (correções em um lugar beneficiam todos) e colaboração (diferentes times usam módulos padronizados).