# cdktf-provider-project **Repository Path**: mirrors_hashicorp/cdktf-provider-project ## Basic Information - **Project Name**: cdktf-provider-project - **Description**: Repository management for prebuilt cdktf providers via cdktf - **Primary Language**: Unknown - **License**: MPL-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-08-06 - **Last Updated**: 2026-05-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # The Future of Terraform CDK ## Sunset Notice 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. ## Migration to HCL 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. ### Note on AWS CDK 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. ## FAQ 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. --- # Terraform CDK Provider Project A project template for [projen](https://github.com/eladb/projen) to create repositories for prebuilt provider packages for [Terraform CDK](https://cdk.tf). ## Usage The provider repos are entirely auto generated from the configuration contained in this repo here. There's no manual interaction necessary, except for creating the initial repository - using this repo. The `cdktf get` command is executed as part of the build pipeline in Github Actions. These jobs are executed on a schedule. Hence, new provider changes will be picked up automatically. ### Creating a new provider Add a new repository [over here](https://github.com/terraform-cdk-providers/repository-manager). In the newly created repository, all we need is a `.projenrc.js` file like this: ```js const { CdktfProviderProject } = require('@cdktf/provider-project'); const { Semver } = require('projen'); const project = new CdktfProviderProject({ terraformProvider: "aws@~> 2.0" }); project.synth(); ``` Adjust the `terraformProvider` attribute as required and run the following commands: ``` npm install @cdktf/provider-project@latest npx projen yarn install ``` This will generate an entire repository ready to be published, including Github Workflows for publishing NPM, Pypi and maven packages. The only thing which is needed to be set manually are the tokens for these registries: - `NPM_TOKEN` - `TWINE_PASSWORD` - `TWINE_USERNAME` - `MAVEN_GPG_PRIVATE_KEY` - `MAVEN_GPG_PRIVATE_KEY_PASSPHRASE` - `MAVEN_PASSWORD` - `MAVEN_USERNAME` - `MAVEN_STAGING_PROFILE_ID` ### Updating an existing Provider Commit and push the required changes to this repository here and wait for the auto-release to happen. Once released, you can run the following commands in the target provider repository: ``` npm install @cdktf/provider-project@latest npx projen yarn install ``` Commit, push and check for the auto-released version. ## Development Whatever needs to be changed in the downstream [provider repositories](https://github.com/terraform-cdk-providers/repository-manager) should be done via the [code definitions](./src/index.ts) here. For local development, [yarn link](https://classic.yarnpkg.com/en/docs/cli/link/) might be quite helpful for testing.