Terraform CDK 的未来
The future of Terraform CDK

原始链接: https://github.com/hashicorp/terraform-cdk

## CDKTF 停止开发公告 - 摘要 HashiCorp(IBM公司)将于**2025年12月10日**停止 Terraform CDK (CDKTF) 的开发和维护。此决定源于 CDKTF 未能达到足够的产品市场契合度,导致 HashiCorp 将投资重点重新放在核心 Terraform 及其生态系统上。 日落日期之后,CDKTF 将在 GitHub 上作为只读项目存档,不再进行更新或支持。用户可以继续自行承担风险使用 CDKTF,并鼓励社区分叉。 HashiCorp 提供了一个迁移路径,使用 `cdktf synth --hcl` 命令生成标准的 Terraform `.tf` 文件。然后可以使用标准的 Terraform CLI 管理这些文件。 **迁移建议:** 深度集成 AWS CDK 的用户应考虑迁移到该生态系统。否则,建议迁移到标准的 Terraform 和 HCL,以获得长期的支持和兼容性。资源和文档仍然可用以协助此次过渡。

## Terraform CDK 停用:总结 Hashicorp 将于 12 月 10 日停用 Terraform CDK (CDKTF),这在基础设施即代码社区引发了讨论。这一决定被定位为商业决策,让用户寻求替代方案。许多人表示沮丧,特别是那些投资于 CDKTF 以摆脱 Terraform 的 HCL 语言限制,并利用 Python 或 TypeScript 等熟悉的编程语言的用户。 讨论中的替代方案包括 Pulumi、AWS CDK(存在供应商锁定问题)、OpenTofu(Terraform 的分支)以及 Terranix 和 SST.dev 等工具。一些人提倡使用 Jsonnet 等工具直接生成 Terraform JSON。 一个主要的争议点是 Hashicorp 的品牌标识“Hashicorp, an IBM company”,一些人认为这在归咎于 IBM。这场讨论凸显了对强大、开发者友好的 IaC 解决方案的需求,以及维护复杂基础设施代码库的挑战。OpenTofu 正在成为寻求以社区驱动方式替代 Terraform 的用户的热门选择。
相关文章

原文

Terraform CDK (CDKTF) will sunset and be archived on December 10, 2025. HashiCorp, an IBM Company, will no longer maintain or develop the project after that date. Unfortunately, Terraform CDK did not find product-market fit at scale. HashiCorp, an IBM Company, has chosen to focus its investments on Terraform core and its broader ecosystem.

As of December 10, 2025, Terraform CDK will be archived on GitHub, and the documentation will reflect its deprecated status. The archived code will remain available on GitHub, but it will be read-only. No further updates, fixes, or improvements (including compatibility updates) will be made.

You will be able to continue to use Terraform CDK at your own risk. Terraform CDK is licensed under the Mozilla Public License (MPL). HashiCorp, an IBM Company, does not apply any additional restrictions. We encourage community forks if there’s interest in continuing development independently.

You can use the following command to generate Terraform-compatible .tf files directly from your Terraform CDK project:

cdktf synth --hcl

This will produce readable HCL configuration files, making it easier to migrate away from Terraform CDK. After running the command, you can use standard Terraform CLI commands (terraform init, terraform plan, terraform apply) to continue managing your infrastructure. Please note that while this helps bootstrap your configuration, you may still need to review and adjust the generated files for clarity, organization, or best practices.

If your infrastructure is defined in Terraform CDK but also tightly integrated with AWS CDK, you may find it more consistent to migrate directly to the AWS CDK ecosystem. If you are not using AWS CDK, we highly recommend migrating to standard Terraform and HCL for long-term support and ecosystem alignment.

Q: Is CDKTF still being developed?

A: No. CDKTF will sunset and be archived on December 10, 2025. HashiCorp, an IBM Company, will no longer maintain or develop the project after that date.

Q: Why is CDKTF being sunset?

A: CDKTF did not find product-market fit at scale. We’ve chosen to focus our investments on Terraform core and its broader ecosystem.

Q: Will CDKTF be removed from GitHub?

A: CDKTF will be archived on GitHub, and documentation will reflect its deprecated status.

Q: Can I still use CDKTF after it's sunset?

A: Yes, the archived code will remain available on GitHub, but it will be read-only. No further updates, fixes, or improvements will be made.

Q: Will CDKTF continue to support new versions of Terraform or providers?

A: No. Compatibility updates will not be made after the EOL date.

Q: Can I fork CDKTF and maintain it myself?

A: Yes. CDKTF is open source, and we encourage community forks if there’s interest in continuing development independently.

Q: Can I keep using CDKTF?

A: You may continue to use it at your own risk. HashiCorp, an IBM Company, will no longer be maintaining it.

Q: Is there a migration tool?

A: You can use the following command to generate Terraform-compatible .tf files directly from your CDKTF project:

cdktf synth --hcl

This will produce readable HCL configuration files, making it easier to migrate away from CDKTF. After running the command, you can use standard Terraform CLI commands (terraform init, terraform plan, terraform apply) to continue managing your infrastructure. Please note that while this helps bootstrap your configuration, you may still need to review and adjust the generated files for clarity, organization, or best practices.

Q: What migration guidance can we provide to customers?

A: For users looking to migrate away from CDKTF:

If your infrastructure is defined in CDKTF but also tightly integrated with AWS CDK, you may find it more consistent to migrate directly to the AWS CDK ecosystem.

If you are not using AWS CDK, we highly recommend migrating to standard Terraform and HCL for long-term support and ecosystem alignment.


npm version PyPI version NuGet version Maven Central

Cloud Development Kit for Terraform (CDKTF) allows you to use familiar programming languages to define cloud infrastructure and provision it through HashiCorp Terraform. This gives you access to the entire Terraform ecosystem without learning HashiCorp Configuration Language (HCL) and lets you leverage the power of your existing toolchain for testing, dependency management, etc.

We currently support TypeScript, Python, Java, C#, and Go.

terraform platform

CDKTF includes two packages:

  • cdktf-cli - A CLI that allows users to run commands to initialize, import, and synthesize CDK for Terraform applications.
  • cdktf - A library for defining Terraform resources using programming constructs.

Choose a language:

Hands-on: Try the tutorials in the CDK for Terraform collection on HashiCorp Learn.

Refer to the CDKTF documentation for more detail about how to build and manage CDKTF applications, including:

  • Application Architecture: Learn the tools and processes that CDKTF uses to leverage the Terraform ecosystem and convert code into Terraform configuration files. It also explains the major components of a CDKTF application and how those pieces fit together.

  • Project Setup: Learn how to create a new CDKTF project from a pre-built or custom template. Also learn how to convert an existing HCL project into a CDKTF application.

  • Unit Tests: Learn how to test your application in Typescript with jest.

  • Examples: Reference example projects in every supported language and review explanatory videos and other resources.

The development team would love your feedback to help guide the project.

For prerequisites, refer to the following.

Clone the project repository.

git clone https://github.com/hashicorp/terraform-cdk.git

Download dependencies.

cd terraform-cdk/
yarn install

Build the project and packages.

联系我们 contact @ memedata.com