Foi lançado o projeto OpenTofu 1.7, que continua o desenvolvimento do código aberto da plataforma de gerenciamento de configuração e automação de infraestrutura Terraform. O desenvolvimento do OpenTofu está sob os auspícios da Linux Foundation, utilizando um modelo de governança aberto com a participação da comunidade, formada por empresas interessadas no projeto e entusiastas (161 empresas e 792 desenvolvedores individuais anunciaram apoio ao projeto). O código do projeto é escrito na linguagem Go e distribuído sob a licença MPL 2.0.
O fork foi criado em resposta à transição da HashiCorp de seus produtos para a licença proprietária BSL 1.1, que limita o uso do código em sistemas de nuvem que competem com os produtos e serviços da HashiCorp. A mudança de licença é explicada pelo desejo de manter o financiamento de seus desenvolvimentos em um contexto em que os modelos tradicionais de licenciamento não conseguem enfrentar o parasitismo de empresas que utilizam os códigos-fonte abertos da HashiCorp para criar seus próprios produtos comerciais na nuvem sem participar do desenvolvimento colaborativo.
A plataforma pode ser usada para construir, modificar e versionar infraestrutura de acordo com o conceito de infraestrutura como código, onde a configuração dos sistemas é descrita em uma linguagem de domínio específico de alto nível e processada de forma semelhante ao código. O OpenTofu suporta a construção de um grafo de recursos, definindo todas as conexões entre os recursos para a paralelização eficaz de operações nos recursos e a realização de alterações levando em consideração as dependências.
O OpenTofu também permite gerar um plano de execução com base na configuração fornecida, possibilitando avaliar as ações sobre a infraestrutura antes de sua aplicação real. Alterações complexas na infraestrutura podem ser realizadas de forma automatizada, com mínima participação do administrador, evitando muitos erros causados por fatores humanos. O administrador pode monitorar completamente o que será alterado e em qual ordem, utilizando o plano de execução fornecido e o grafo de recursos.
Entre as mudanças na versão OpenTofu 1.7:
- A capacidade de proteger arquivos de estado importantes usando criptografia de ponta a ponta. A criptografia permite excluir o acesso de terceiros a esses arquivos de dados ao usar back-ends de armazenamento não confiáveis. A senha para criptografia pode ser definida usando variáveis de ambiente ou sistemas de gerenciamento de chaves, como AWS KMS, GCP KMS e OpenBao.
- Suporte a funções dinâmicas definidas pelo provedor. Essa capacidade permite que o provedor ofereça não apenas recursos, mas também funções para uso no código OpenTofu. Além disso, as funções podem ser definidas dinamicamente pelo provedor, dependendo da configuração do usuário. O suporte a essa funcionalidade já foi adicionado em provedores experimentais Lua e Go.
- Operações de exclusão declarativas implementadas, permitindo marcar um recurso para exclusão do arquivo de estado, mas mantendo-o na infraestrutura criada.
- A capacidade de aplicar loops "for_each" em blocos que realizam importação, para simplificar a importação de vários recursos típicos.
Fonte: opennet.ru
