All Projects → hashicorp → Terraform Cdk

hashicorp / Terraform Cdk

Licence: mpl-2.0
Define infrastructure resources using programming constructs and provision them using HashiCorp Terraform

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language
python
139335 projects - #7 most used programming language
go
31211 projects - #10 most used programming language
java
68154 projects - #9 most used programming language
C#
18002 projects

Projects that are alternatives of or similar to Terraform Cdk

cdktf-provider-aws
Prebuilt Terraform CDK (cdktf) provider for aws.
Stars: ✭ 71 (-97.65%)
Mutual labels:  cdk, cdktf
Terraform Provider Stripe
A Terraform Provider for Stripe
Stars: ✭ 143 (-95.27%)
Mutual labels:  terraform
Terraform Provider Openapi
OpenAPI Terraform Provider that configures itself at runtime with the resources exposed by the service provider (defined in a swagger file)
Stars: ✭ 134 (-95.57%)
Mutual labels:  terraform
Terraform Vsphere Kubespray
Deploy a Kubernetes HA cluster on VMware vSphere
Stars: ✭ 141 (-95.34%)
Mutual labels:  terraform
Tensor
Tensor - Comprehensive web-based automation framework and Centralized infrastructure management platform
Stars: ✭ 136 (-95.51%)
Mutual labels:  terraform
Terraform Exec
Terraform CLI commands via Go.
Stars: ✭ 142 (-95.31%)
Mutual labels:  terraform
Terraform Google Gke Cluster
A Terraform module to create a best-practise Google Kubernetes Engine (GKE) cluster.
Stars: ✭ 133 (-95.6%)
Mutual labels:  terraform
Dependabot Core
🤖 The core logic behind Dependabot's update PR creation, and the public issue tracker for all things Dependabot
Stars: ✭ 2,314 (-23.53%)
Mutual labels:  terraform
Terraform Aws Landing Zone
Terraform Module for AWS Landing Zone
Stars: ✭ 142 (-95.31%)
Mutual labels:  terraform
Example Pragmatic Terraform On Aws
技術書典6で頒布した『Pragmatic Terraform on AWS 』のサンプルコードを公開しています
Stars: ✭ 140 (-95.37%)
Mutual labels:  terraform
Terraform Aws Cicd
Terraform Module for CI/CD with AWS Code Pipeline and Code Build
Stars: ✭ 138 (-95.44%)
Mutual labels:  terraform
Dce
Disposable Cloud Environment
Stars: ✭ 137 (-95.47%)
Mutual labels:  terraform
Terraform With Circleci Example
This is an example of automatic deployments of your infrastructure using terraform and CircleCI 2.0 workflows
Stars: ✭ 142 (-95.31%)
Mutual labels:  terraform
Terragrunt Infrastructure Modules Example
A repo used to show examples file/folder structures you can use with Terragrunt and Terraform
Stars: ✭ 135 (-95.54%)
Mutual labels:  terraform
Terraform Variables Generator
Simple Tool for Generate Variables file from Terraform Configuration
Stars: ✭ 144 (-95.24%)
Mutual labels:  terraform
Aws Maintenance Lambda
A lambda function to send alerts (to Slack, HipChat) on AWS maintenance events.
Stars: ✭ 133 (-95.6%)
Mutual labels:  terraform
Terraform Aws Airship Ecs Service
Terraform module which creates an ECS Service, IAM roles, Scaling, ALB listener rules.. Fargate & AWSVPC compatible
Stars: ✭ 139 (-95.41%)
Mutual labels:  terraform
Terraspace
Terraspace: The Terraform Framework
Stars: ✭ 137 (-95.47%)
Mutual labels:  terraform
Tfupdate
Update version constraints in your Terraform configurations
Stars: ✭ 145 (-95.21%)
Mutual labels:  terraform
Terraform Makefile
Helps me actually use terraform for multiple environments
Stars: ✭ 143 (-95.27%)
Mutual labels:  terraform

npm version PyPI version NuGet version Maven Central homebrew

CDK for Terraform

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 (experimental).

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.

Note: CDK for Terraform is under active development, and we are still iterating on key workflows and best practices. Learn more about maturity and production readiness below.

Get Started

Choose a language:

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

Documentation

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.

Project Maturity and Production Readiness

CDK for Terraform is under active development; we’re still working out key workflows and best practices. We’re iterating fast and are likely to introduce breaking changes to existing APIs to improve the overall user experience of the product.

This tool can be used with Terraform Cloud and Terraform Enterprise, but is not eligible for commercial support, and is not officially recommended for production use cases. Like other HashiCorp pre-1.0 tools, some early-adopter users are already using CDK for Terraform in production, and we are working with those users to validate and improve workflows.

Early adopters of CDK for Terraform should expect to encounter and work around bugs occasionally, may need to refactor their codebase with each major release, and will intermittently need to use HCL and understand how JSON Terraform configurations are generated, for example to use overrides to use Terraform functionality that cannot currently be expressed using CDK for Terraform. Our goal is to provide a user experience where this is an exceptional edge case. If you’re comfortable with this level of troubleshooting, we’re very interested in your feedback and practical experience.

These caveats apply to CDK for Terraform itself, which generates Terraform configurations. Generated Terraform configurations are applied using Terraform Core, a well established / mature tool to provision infrastructure.

Community

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

Build

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.

yarn build
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].