cdktn-cli e2e

cdktn-next  •  2026-07-04 06:22:08 UTC
↗ Actions run
17
tests
13
passed
4
failed
76%
pass rate
132.1s
total time
source: ci-report.json · run 2026-07-04 06:22:08 UTC

Tests

ctrl-c-teardown.test.ts

Ctrl-C interrupt handling [cdktn-next]
AssertionError: deploy hung after Ctrl-C at the approval prompt: expected null not to be null
    at /Users/runner/work/cdktn-e2e/cdktn-e2e/tests/ctrl-c-teardown.test.ts:24:73
    at file:///Users/runner/work/cdktn-e2e/cdktn-e2e/node_modules/.pnpm/@vitest+runner@4.1.9/node_modules/@vitest/runner/dist/chunk-artifact.js:1903:20
terminal #0
hello Initializing the backend... hello Successfully configured the backend "local"! Terraform will automatically use this backend unless the backend configuration changes. hello Initializing provider plugins... hello Terraform has been successfully initialized! hello You may now begin working with Terraform. Try running "terraform plan" to see any changes that are required for your infrastructure. All Terraform commands should now work. If you ever set or change modules or backend configuration for Terraform, rerun this command to reinitialize your working directory. If you forget, other commands will detect it and remind you to do so if necessary. hello Success! Terraform has validated the lock file and found no need for changes. hello Changes to Outputs: + greeting = "hello from cdktn-cli-e2e" + secret = (sensitive value) hello You can apply this plan to save these new output values to the Terraform state, without changing any real infrastructure. 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 hello (Use arrow keys) ❯ Approve Dismiss Stop Applies the changes outlined in the plan.
$ /Users/runner/hostedtoolcache/node/24.18.0/arm64/bin/node /Users/runner/work/cdktn-e2e/cdktn-e2e/.sandboxes/cdktn-next/node_modules/cdktn-cli/bin/cdktn deploy
exit=null


hello  Initializing the backend...
hello
Successfully configured the backend "local"! Terraform will automatically
use this backend unless the backend configuration changes.
hello  Initializing provider plugins...
hello  Terraform has been successfully initialized!
hello
You may now begin working with Terraform. Try running "terraform plan" to see
any changes that are required for your infrastructure. All Terraform commands
should now work.

If you ever set or change modules or backend configuration for Terraform,
rerun this command to reinitialize your working directory. If you forget, other
commands will detect it and remind you to do so if necessary.
hello  Success! Terraform has validated the lock file and found no need for changes.
hello  Changes to Outputs:
  + greeting = "hello from cdktn-cli-e2e"
  + secret   = (sensitive value)
hello  You can apply this plan to save these new output values to the Terraform
state, without changing any real infrastructure.

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 hello (Use arrow keys)
❯ Approve
  Dismiss
  Stop
Applies the changes outlined in the plan.









✅ passedCtrl-C during watch --auto-approve tears down cleanly and restores the cursor1.9s
terraform state-lock release on interrupt — issue #283 [cdktn-next]
✅ passedhard-killing terraform (SIGKILL) mid-apply leaves the state lock orphaned — sanity-checks the mock detects orphans1.4s
✅ passedCtrl-C during deploy lets terraform release the state lock (cdktn must not orphan it)2.9s

deploy-approve.test.ts

deploy approval routing [cdktn-next]
✅ passedApprove (Enter on first choice) → apply proceeds2.0s
✅ passedDismiss (Down,Enter) → stack is not applied, process exits1.7s
✅ passed--auto-approve runs unattended (no prompt rendered)1.7s

diff-lock-release.test.ts

diff interrupt lock release [cdktn-next]
AssertionError: diff hung after Ctrl-C while terraform held the state lock: expected null not to be null
    at /Users/runner/work/cdktn-e2e/cdktn-e2e/tests/diff-lock-release.test.ts:114:84
    at file:///Users/runner/work/cdktn-e2e/cdktn-e2e/node_modules/.pnpm/@vitest+runner@4.1.9/node_modules/@vitest/runner/dist/chunk-artifact.js:1903:20
terminal #0
lock Initializing the backend... lock Successfully configured the backend "http"! Terraform will automatically use this backend unless the backend configuration changes. lock Initializing provider plugins... - terraform.io/builtin/terraform is built in to Terraform lock Terraform has been successfully initialized! You may now begin working with Terraform. Try running "terraform plan" to see any changes that are required for your infrastructure. All Terraform commands should now work. If you ever set or change modules or backend configuration for Terraform, rerun this command to reinitialize your working directory. If you forget, other commands will detect it and remind you to do so if necessary. lock Success! Terraform has validated the lock file and found no need for changes. lock Interrupt received. Please wait for Terraform to exit or data loss may occur. Gracefully shutting down... lock Stopping operation... ⠙ Processing
$ /Users/runner/hostedtoolcache/node/24.18.0/arm64/bin/node /Users/runner/work/cdktn-e2e/cdktn-e2e/.sandboxes/cdktn-next/node_modules/cdktn-cli/bin/cdktn diff
exit=null


lock  Initializing the backend...
lock
Successfully configured the backend "http"! Terraform will automatically
use this backend unless the backend configuration changes.
lock  Initializing provider plugins...
- terraform.io/builtin/terraform is built in to Terraform
lock  Terraform has been successfully initialized!

You may now begin working with Terraform. Try running "terraform plan" to see
any changes that are required for your infrastructure. All Terraform commands
should now work.

If you ever set or change modules or backend configuration for Terraform,
rerun this command to reinitialize your working directory. If you forget, other
commands will detect it and remind you to do so if necessary.
lock  Success! Terraform has validated the lock file and found no need for changes.
lock  Interrupt received.
Please wait for Terraform to exit or data loss may occur.
Gracefully shutting down...
lock  Stopping operation...

⠙ Processing
















non-tty.test.ts

non-tty (piped) behaviour [cdktn-next]
✅ passedpiped synth is ANSI-free and exits 01.3s
AssertionError: expected true to be false // Object.is equality
    at /Users/runner/work/cdktn-e2e/cdktn-e2e/tests/non-tty.test.ts:27:31
    at processTicksAndRejections (node:internal/process/task_queues:104:5)
    at file:///Users/runner/work/cdktn-e2e/cdktn-e2e/node_modules/.pnpm/@vitest+runner@4.1.9/node_modules/@vitest/runner/dist/chunk-artifact.js:1903:20
AssertionError: expected true to be false // Object.is equality
    at /Users/runner/work/cdktn-e2e/cdktn-e2e/tests/non-tty.test.ts:34:31
    at processTicksAndRejections (node:internal/process/task_queues:104:5)
    at file:///Users/runner/work/cdktn-e2e/cdktn-e2e/node_modules/.pnpm/@vitest+runner@4.1.9/node_modules/@vitest/runner/dist/chunk-artifact.js:1903:20

smoke.test.ts

smoke [cdktn-next]
✅ passed--version prints a semver and exits 0172ms
✅ passedsynth produces Terraform output and exits cleanly1.3s

synth-golden.test.ts

synth golden output [cdktn-next]
✅ passedminimal-ts cdk.tf.json is stable (sensitive output stays declared)1.5s

tty-render.test.ts

tty rendering [cdktn-next]
✅ passedsynth: spinner lifecycle then a permanent summary line1.5s
✅ passedlist: columned stack list with a bold header1.5s
✅ passedprovider list: renders a cli-table3 with the declared providers1.2s