CDKTF deploy

Okay, we’ve got a Terraform configuration. What’s next? Let’s deploy it into our account!

Let’s deploy #

Use cdktf deploy to deploy a CDKTF app:

cdktf deploy

The Terraform configuration is first used to initialize terraform.

cdk-workshop  Initializing the backend...
cdk-workshop
              Successfully configured the backend "local"! Terraform will automatically
              use this backend unless the backend configuration changes.
cdk-workshop  Initializing provider plugins...
              - Finding hashicorp/aws versions matching "5.100.0"...
cdk-workshop  - Installing hashicorp/aws v5.100.0...
              ....


0 Stacks deploying     0 Stacks done     1 Stack waiting

Once initialised a plan will be presented

Plan: 4 to add, 0 to change, 0 to destroy.

              Do you want to perform these actions?
                Terraform will perform the actions described above.
                Only 'yes' will be accepted to approve.

Please review the diff output above for cdk-workshop
❯ Approve  Applies the changes outlined in the plan.
  Dismiss
  Stop

These are the changes that Terraform will make to your infrastructure. Choose Approve to apply these changes.

Output should look like the following:

cdk-workshop  aws_sqs_queue.CdkWorkshopQueue_50D9D426: Creating...
cdk-workshop  aws_sns_topic.CdkWorkshopTopic_D368A42F: Creating...
cdk-workshop  aws_sns_topic.CdkWorkshopTopic_D368A42F: Creation complete after 3s [id=arn:aws:sns:us-east-1:694710432912:terraform-20250714065717423000000004]
cdk-workshop  aws_sqs_queue.CdkWorkshopQueue_50D9D426: Still creating... [10s elapsed]
cdk-workshop  aws_sqs_queue.CdkWorkshopQueue_50D9D426: Still creating... [20s elapsed]
cdk-workshop  aws_sqs_queue.CdkWorkshopQueue_50D9D426: Creation complete after 29s [id=https://sqs.us-east-1.amazonaws.com/694710432912/cdk-workshop-dev-cdk-workshopCdkWorkshopQueue20250714065717422700000003]
cdk-workshop  data.aws_iam_policy_document.CdkWorkshopQueue_Policy_E8C1B641 (CdkWorkshopQueue/Policy/Policy/Resource): Reading...
cdk-workshop  data.aws_iam_policy_document.CdkWorkshopQueue_Policy_E8C1B641 (CdkWorkshopQueue/Policy/Policy/Resource): Read complete after 0s [id=2163801131]
cdk-workshop  aws_sqs_queue_policy.CdkWorkshopQueue_Policy_AF2494A5: Creating...
cdk-workshop  aws_sqs_queue_policy.CdkWorkshopQueue_Policy_AF2494A5: Still creating... [10s elapsed]
cdk-workshop  aws_sqs_queue_policy.CdkWorkshopQueue_Policy_AF2494A5: Still creating... [20s elapsed]
cdk-workshop  aws_sqs_queue_policy.CdkWorkshopQueue_Policy_AF2494A5: Creation complete after 27s [id=https://sqs.us-east-1.amazonaws.com/694710432912/cdk-workshop-dev-cdk-workshopCdkWorkshopQueue20250714065717422700000003]
cdk-workshop  aws_sns_topic_subscription.CdkWorkshopQueue_cdk-workshopCdkWorkshopTopicA7BCA841_F6BFFB7B: Creating...
cdk-workshop  aws_sns_topic_subscription.CdkWorkshopQueue_cdk-workshopCdkWorkshopTopicA7BCA841_F6BFFB7B: Creation complete after 2s [id=arn:aws:sns:us-east-1:694710432912:terraform-20250714065717423000000004:54d605d3-7a64-457e-90bc-5929b2f688bc]
cdk-workshop
              Apply complete! Resources: 4 added, 0 changed, 0 destroyed.

No outputs found.

The Terraform CLI #

Under the hood CDKTF apps are still simply deployed through the terraform CLI. Each CDKTF stack maps 1:1 with a terraform folder under cdktf.out/stacks/.

This means that you can also use the terraform CLI in order to manage your stacks.

Let’s take a look at the contents of the Terraform state.

You will likely see something like this:

cd cdktf.out/stacks/cdk-workshop
terraform state list
data.aws_caller_identity.CallerIdentity
data.aws_iam_policy_document.CdkWorkshopQueue_Policy_E8C1B641
data.aws_partition.Partitition
data.aws_service_principal.aws_svcp_default_region_sns
aws_sns_topic.CdkWorkshopTopic_D368A42F
aws_sns_topic_subscription.CdkWorkshopQueue_cdk-workshopCdkWorkshopTopicA7BCA841_F6BFFB7B
aws_sqs_queue.CdkWorkshopQueue_50D9D426
aws_sqs_queue_policy.CdkWorkshopQueue_Policy_AF2494A5

To leverage powerful state management, learn more about Terraform here.

This workshop is focused on defining the infrastructure.

I am ready for some actual coding! #




We use analytics to make this content better, but only with your permission.

More information