https://pulumi.com logo
#general
Title
# general
o

orange-policeman-59119

05/24/2019, 6:34 PM
@creamy-potato-29402 was there a regression in the Kubernetes Helm provider not rendering
Input<>
values? I'm seeing this since updating
@pulumi/kubernetes
to 0.23:
Copy code
Error: render error in "[redacted]/secret.yaml": template: [redacted]/secret.yaml:15:49: executing "[redacted]/secret.yaml" at <b64enc>: wrong type for value; expected string; got map[string]interface {}
Only change was updating the Pulumi kubernetes provider.
c

creamy-potato-29402

05/24/2019, 6:42 PM
not that Im’ aware
does it reliably do this?
o

orange-policeman-59119

05/24/2019, 8:04 PM
Yes. The value it's failing on is a promise, the previous values in the chart (by lexicographic ordering) are all strings
Copy code
Error: render error in "[redacted]/secret.yaml": template: [redacted]/secret.yaml:15:49: executing "[redacted]/secret.yaml" at <b64enc>: wrong type for value; expected string; got map[string]interface {}
        at Chart.resources.allConfig.apply.cfg (/builds/[redacted]/monorepo/pulumi/node_modules/@pulumi/kubernetes/helm/v2/helm.js:112:23)
        at OutputImpl.<anonymous> (/builds/[redacted]/monorepo/pulumi/node_modules/@pulumi/pulumi/output.js:109:47)
        at Generator.next (<anonymous>)
        at fulfilled (/builds/[redacted]/monorepo/pulumi/node_modules/@pulumi/pulumi/output.js:17:58)
the values object is something like
values: { a: { b: async () => { return strValue; } }
It was this:
Copy code
new k8s.helm.v2.Chart(..., { values, ... })
To test this I'm trying:
Copy code
output(values).apply(renderedValues => {
  new k8s.helm.v2.Chart(..., { values: renderedValues, ... })
})
that did not fix it
c

creamy-potato-29402

05/24/2019, 8:18 PM
this sounds like a bug. can you file an issue?
this ended up being a bug in a third-party library
o

orange-policeman-59119

05/28/2019, 7:21 PM
👍
If anyone else finds this, deep merging values objects using
isMergeableObject: isPlainObject
with is-plain-object 2.x: fine with is-plain-object 3.x: not fine