工程开发
pulumi-terraform-to-pulumi
自动化 Terraform 和 OpenTofu 基础设施到 Pulumi 的迁移,处理状态映射、供应商安装及 HCL 代码转换。
简介
pulumi-terraform-to-pulumi 技能为将现有的基础设施即代码 (IaC) 项目从 Terraform 或 OpenTofu 迁移至 Pulumi 提供了结构化且可靠的工作流程。此技能旨在协助 DevOps 工程师、云架构师和平台团队,在无需手动重新导入资源或冒着状态漂移风险的情况下,将技术栈转换为 Pulumi 基于编程语言的现代基础设施管理。通过利用 terraform-migrate 插件,该技能确保了现有 Terraform 后端与新 Pulumi 栈之间的状态映射保持一致性。
- 自动从各种后端(如 S3、Pulumi Cloud 或 Terraform Cloud)提取远程 Terraform 状态至可管理的本地文件中。
- 使用 terraform-migrate 工具执行精确的状态转换,将资源映射到 Pulumi 栈中,避免手动配置错误的风险。
- 分析依赖需求以识别并将正确的 Pulumi 提供商版本(例如 pulumi-aws、pulumi-azure-native、pulumi-gcp)直接安装到项目依赖中。
- 协助将 HCL 源代码转换为惯用的 Pulumi 代码(TypeScript、Python、Go 或 C#),并通过生成的状态进行验证。
- 使用 pulumi-preview 工具编排验证与迭代反馈循环,以确认生成的 Pulumi 代码相较于现有基础设施产生的差异为空。
使用说明与限制:
- 此技能仅应在检测到明确的迁移意图时使用;请勿针对一般的 Terraform 与 Pulumi 比较或并行使用问题触发此技能。
- 迁移操作必须在已签出的存储库内执行;请勿在根目录 /workspace 下创建项目。
- 用户必须提供参数,包括 Terraform 源代码目录路径、目标 Pulumi 目录以及目标编程语言。
- 如果 terraform-migrate 因刷新期间权限不足而失败,用户必须提供或建立 Pulumi ESC (环境、秘密与配置) 环境来注入必要的提供商凭证。
- 建议在源代码转换阶段进行人工介入或验证,以确保代码符合惯用风格并与状态草案相符。
仓库统计
- Star 数
- 41
- Fork 数
- 2
- Open Issue 数
- 8
- 主要语言
- Python
- 默认分支
- main
- 同步状态
- 空闲
- 最近同步时间
- 2026年5月3日 05:50