OpenTofu 1.7.0 发布总结
OpenTofu 1.7.0 已经发布,带来了多项新功能和改进。OpenTofu 是一个开源的基础设施即代码工具,用于通过 API 声明性地创建云基础设施。它是从 HashiCorp 的 Terraform 分叉而来,主要在后者进行许可证变更后发展。
主要新功能
- 端到端状态加密:无论使用何种存储后端,状态文件现在都受到保护。用户可以通过环境变量提供加密密码,或使用 AWS KMS、GCP KMS 或 OpenBao 等密钥管理系统。
- 动态提供者定义函数:提供者现在可以提供原生函数供 OpenTofu 代码使用。OpenTofu 特有的功能允许提供者根据配置动态定义自定义函数,从而与其他编程语言集成。
- 移除块:此功能允许用户标记由 OpenTofu 创建的资源,以便从状态文件中移除,同时保留创建的基础设施。
- 可循环的导入块:这使得在 OpenTofu 代码中声明性地批量导入资源成为可能,便于大规模迁移。
兼容性与社区增长
OpenTofu 1.7.0 保持了与 Terraform 1.5 的兼容性,并提供了从更高版本迁移的路径。自四个月前首次发布以来,OpenTofu 社区显著增长。虽然具体用户数量未被跟踪,但注册表的使用量在过去一个月翻了一番多,达到每天超过一百万次请求。本次发布吸引了 65 位独特的贡献者,并在 GitHub 上获得了 20,000 颗星。
社区反馈
端到端状态加密功能受到了社区的好评。Reddit 用户 sPENKMAn 表示期待简化他们的脚本。DevOps.com 的 Steven J. Vaughan-Nichols 指出,OpenTofu 缺乏策略即代码实施框架,并建议工程师可以将 OPA 与 OpenTofu 配对,以模仿在 Terraform 中添加 HashiCorp Sentinel 的功能。
未来展望
项目鼓励社区投票和参与,以确定 OpenTofu 1.8 的功能。正在考虑的一个功能是在模块源和后端配置中使用变量,以解决频繁请求的功能。社区中也有关于期待动态/可循环提供者功能的讨论。
结论
OpenTofu 1.7.0 的发布标志着该项目在功能和社区支持方面的显著进步。项目团队邀请用户通过 GitHub 或 Slack 提出对未来版本的建议。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。