基础设施即程序代码工具Pulumi在CLI中支持新指令,可以将整个Terraform项目转换到Pulumi。新的转换器支持Terraform模块、Terraform 1.4的核心功能,以及大多数内置函数,可以转换成Pulumi TypeScript、Python、Go和C#。

过去Pulumi官方提供了一个称为tf2pulumi的独立工具,供用户将Terraform的小片段程序代码转换为Pulumi语法,但是新的转换器不再是独立的工具,而是让用户可以直接从CLI,使用指令转换Terraform项目,这将大幅减少从Terraform搬迁到Pulumi的时间,同时转换的内容也不仅限于小片段程序代码,而是能够一次转换整个完整Terraform项目。

Terraform转换器创建在Pulumi的底层技术CrossCode之上,CrossCode是Pulumi基础设施编码引擎通用的翻译层。Pulumi创建这个转换器的意义,不只是利用CrossCode,将一种基础设施编码转换成另一种格式,同时也是在Pulumi中创建一个新概念,使得Pulumi引擎能够集成其他基础设施编码平台的转换组件。

这类的转换组件可以是出自Pulumi,也可以来自社群伙伴或是贡献者,也就是说,将来Pulumi用户将可以利用命令行工具,操作使用不同来源的转换工具。Pulumi CLI的指令现在可支持的主要场景,包括将现有Terraform项目转换成Pulumi,以及将Terraform模块转换成为Pulumi,并整合到现有Pulumi项目中。