You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is kind of an odd one, but we are using cdk8s to synth dagster-user-deployment helm charts and running into an issue.
This particular chart allows you to pass env vars and configMaps/secrets to be referenced in the env and envFrom properties of ContainerSpec. There is also a toggle to pass this down to child k8s jobs that the dagster deployment creates. If that's enabled, it will take relevant entries from your chart values, convert them to json, and set it as a value for another env var.
If I pass a terraform output ref to an env var, for example an S3 bucket name. The chart synth fails with a message like:
# truncated for brevity
Error: Failed serializing construct at path '$PATH' with name '$NAME':
Error: Unable to find output defined for
{
"k8s":{
"env":[{"name":"S3_BUCKET","value":"${TfToken[TOKEN.40]}"},...],
...
}
} (Inspected stacks: $STACK_0, $STACK_1)
My assumption is that since the value is now just a json string, the ResovlerContext is getting the entire json string and can't match the token properly here
Reproduction Steps:
The dagster chart is not importable as it's getting caught in this bug cdklabs/json2jsii#1195, so we just use the Helm class directly:
brent-at-aam
changed the title
ckd8s-cdktf-resolver: can't find resolve terraform values that are nested in a helm chart
ckd8s-cdktf-resolver: can't resolve terraform values that are nested in a helm chart
Jan 31, 2025
Description of the bug:
This is kind of an odd one, but we are using cdk8s to synth dagster-user-deployment helm charts and running into an issue.
This particular chart allows you to pass env vars and configMaps/secrets to be referenced in the
env
andenvFrom
properties of ContainerSpec. There is also a toggle to pass this down to child k8s jobs that the dagster deployment creates. If that's enabled, it will take relevant entries from your chart values, convert them to json, and set it as a value for another env var.If I pass a terraform output ref to an env var, for example an S3 bucket name. The chart synth fails with a message like:
My assumption is that since the value is now just a json string, the ResovlerContext is getting the entire json string and can't match the token properly here
Reproduction Steps:
The dagster chart is not importable as it's getting caught in this bug cdklabs/json2jsii#1195, so we just use the Helm class directly:
Error Log:
Environment:
This is 🐛 Bug Report
The text was updated successfully, but these errors were encountered: